-
-
Notifications
You must be signed in to change notification settings - Fork 375
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
Showing
1 changed file
with
229 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,38 +1,248 @@ | ||
// vim: : filetype=json | ||
{ | ||
|
||
// General | ||
/////////// | ||
|
||
// Aptly storage directory | ||
// - downloaded packages (`rootDir`/pool) | ||
// - database (`rootDir`/db) | ||
// - published repositories (`rootDir`/public) | ||
"rootDir": "~/.aptly", | ||
|
||
// number of attempts to open DB if it's locked by other instance; can be overridden with option `-db-open-attempts` | ||
"databaseOpenAttempts": -1, | ||
|
||
// | ||
"AsyncAPI": false, | ||
|
||
// | ||
"enableMetricsEndpoint": false, | ||
|
||
// Enable API documentation on /docs | ||
"enableSwaggerEndpoint": false, | ||
|
||
// | ||
"logLevel": "info", | ||
|
||
// | ||
"logFormat": "default", | ||
|
||
// | ||
"serveInAPIMode": false, | ||
|
||
// OBSOLETE | ||
// in aptly up to version 1.0.0, package files were stored in internal package pool | ||
// with MD5-dervied path, since 1.1.0 package pool layout was changed; | ||
// if option is enabled, aptly stops checking for legacy paths; | ||
// by default option is enabled for new aptly installations and disabled when | ||
// upgrading from older versions | ||
"skipLegacyPool": true, | ||
|
||
// Database | ||
//////////// | ||
|
||
// | ||
"databaseBackend": { | ||
// | ||
"type": "", | ||
// | ||
"url": "", | ||
// | ||
"dbPath": "" | ||
// | ||
}, | ||
|
||
// Mirroring | ||
///////////// | ||
|
||
// downloader to use | ||
// - "default" (normal downloader) | ||
// - "grab" (more robust) | ||
"downloader": "default", | ||
|
||
// number of parallel download threads to use when downloading packages | ||
"downloadConcurrency": 4, | ||
|
||
// limit in kbytes/sec on download speed while mirroring remote repositories | ||
"downloadSpeedLimit": 0, | ||
|
||
// number of retries for download attempts | ||
"downloadRetries": 0, | ||
"downloader": "default", | ||
"databaseOpenAttempts": -1, | ||
|
||
// download source packages per default | ||
"downloadSourcePackages": false, | ||
|
||
|
||
// list of architectures to process; if left empty defaults to all available architectures; can be overridden with option `-architectures` | ||
"architectures": [], | ||
|
||
// follow contents of `Suggests:` field when processing dependencies for the package | ||
"dependencyFollowSuggests": false, | ||
|
||
// follow contents of `Recommends:` field when processing dependencies for the package | ||
"dependencyFollowRecommends": false, | ||
|
||
// when dependency looks like `package-a | package-b`, follow both variants always | ||
"dependencyFollowAllVariants": false, | ||
|
||
// follow dependency from binary package to source package | ||
"dependencyFollowSource": false, | ||
|
||
// print additional details while resolving dependencies (useful for debugging) | ||
"dependencyVerboseResolve": false, | ||
|
||
// Signing | ||
/////////// | ||
|
||
// gpg provider to use: | ||
// - "internal" (Go internal implementation) | ||
// - 'gpg" (external `gpg` utility, uses GnuPG 1.x if available or GnuPG 2.x otherwise) | ||
"gpgProvider": "gpg", | ||
|
||
// don't sign published repositories with gpg(1), also can be disabled on per-repo basis using `-skip-signing` flag when publishing | ||
"gpgDisableSign": false, | ||
|
||
// don't verify remote mirrors with gpg(1), also can be disabled on per-mirror basis using `-ignore-signatures` flag when creating and updating mirrors | ||
"gpgDisableVerify": false, | ||
"gpgProvider": "gpg", | ||
"downloadSourcePackages": false, | ||
"skipLegacyPool": true, | ||
|
||
|
||
// PPA | ||
/////// | ||
|
||
// specifies paramaters for short PPA url expansion, if left blank they default to output of `lsb_release` command | ||
"ppaDistributorID": "ubuntu", | ||
|
||
// cwcodename for short PPA url expansion | ||
"ppaCodename": "", | ||
|
||
// | ||
"skipContentsPublishing": false, | ||
|
||
// | ||
"skipBz2Publishing": false, | ||
"FileSystemPublishEndpoints": {}, | ||
"S3PublishEndpoints": {}, | ||
"SwiftPublishEndpoints": {}, | ||
"AzurePublishEndpoints": {}, | ||
"AsyncAPI": false, | ||
"enableMetricsEndpoint": false, | ||
"logLevel": "info", | ||
"logFormat": "default", | ||
"serveInAPIMode": false, | ||
"databaseBackend": { | ||
"type": "", | ||
"url": "", | ||
"dbPath": "" | ||
|
||
// Storage Endpoints | ||
///////////////////// | ||
|
||
// Filesystem publishing endpoints | ||
// | ||
// aptly defaults to publish to a single publish directory under `rootDir`/public. For | ||
// a more advanced publishing strategy, you can define one or more filesystem endpoints in the | ||
// `FileSystemPublishEndpoints` list of the aptly configuration file. Each endpoint has a name | ||
// and the following associated settings: | ||
// | ||
// * `rootDir`: | ||
// The publish directory, e.g., `/opt/srv/aptly_public`. | ||
// * `linkMethod`: | ||
// This is one of `hardlink`, `symlink` or `copy`. It specifies how aptly links the | ||
// files from the internal pool to the published directory. | ||
// If not specified, empty or wrong, this defaults to `hardlink`. | ||
// * `verifyMethod`: | ||
// This is used only when setting the `linkMethod` to `copy`. Possible values are | ||
// `md5` and `size`. It specifies how aptly compares existing links from the | ||
// internal pool to the published directory. The `size` method compares only the | ||
// file sizes, whereas the `md5` method calculates the md5 checksum of the found | ||
// file and compares it to the desired one. | ||
// If not specified, empty or wrong, this defaults to `md5`. | ||
// | ||
// In order to publish to such an endpoint, specify the endpoint as `filesystem:endpoint-name` | ||
// with `endpoint-name` as the name given in the aptly configuration file. For example: | ||
// | ||
// `aptly publish snapshot wheezy-main filesystem:test1:wheezy/daily` | ||
"FileSystemPublishEndpoints": { | ||
}, | ||
|
||
// S3 Endpoint Support | ||
// | ||
// cloud storage). First, publishing | ||
// endpoints should be described in aptly configuration file. Each endpoint has name | ||
// and associated settings: | ||
// | ||
// * `region`: | ||
// Amazon region for S3 bucket (e.g. `us-east-1`) | ||
// * `bucket`: | ||
// bucket name | ||
// * `endpoint`: | ||
// (optional) when using S3-compatible cloud storage, specify hostname of service endpoint here, | ||
// region is ignored if endpoint is set (set region to some human-readable name) | ||
// (should be left blank for real Amazon S3) | ||
// * `prefix`: | ||
// (optional) do publishing under specified prefix in the bucket, defaults to | ||
// no prefix (bucket root) | ||
// * `acl`: | ||
// (optional) assign ACL to published files (one of the canned ACLs in Amazon | ||
// terminology). Useful values: `private` (default), `public-read` (public | ||
// repository) or `none` (don't set ACL). Public repositories could be consumed by `apt` using | ||
// HTTP endpoint (Amazon bucket should be configured for "website hosting"), | ||
// for private repositories special apt S3 transport is required. | ||
// * `awsAccessKeyID`, `awsSecretAccessKey`: | ||
// (optional) Amazon credentials to access S3 bucket. If not supplied, | ||
// environment variables `AWS_ACCESS_KEY_ID` and `AWS_SECRET_ACCESS_KEY` | ||
// are used. | ||
// * `storageClass`: | ||
// (optional) Amazon S3 storage class, defaults to `STANDARD`. Other values | ||
// available: `REDUCED_REDUNDANCY` (lower price, lower redundancy) | ||
// * `encryptionMethod`: | ||
// (optional) server-side encryption method, defaults to none. Currently | ||
// the only available encryption method is `AES256` | ||
// * `plusWorkaround`: | ||
// (optional) workaround misbehavior in apt and Amazon S3 | ||
// for files with `+` in filename by | ||
// creating two copies of package files with `+` in filename: one original | ||
// and another one with spaces instead of plus signs | ||
// With `plusWorkaround` enabled, package files with plus sign | ||
// would be stored twice. aptly might not cleanup files with spaces when published | ||
// repository is dropped or updated (switched) to new version of repository (snapshot) | ||
// * `disableMultiDel`: | ||
// (optional) for S3-compatible cloud storages which do not support `MultiDel` S3 API, | ||
// enable this setting (file deletion would be slower with this setting enabled) | ||
// * `forceSigV2`: | ||
// (optional) disable Signature V4 support, useful with non-AWS S3-compatible object stores | ||
// which do not support SigV4, shouldn't be enabled for AWS | ||
// * `forceVirtualHostedStyle`: | ||
// (optional) disable path style visit, useful with non-AWS S3-compatible object stores | ||
// which only support virtual hosted style | ||
// * `debug`: | ||
// (optional) enables detailed request/response dump for each S3 operation | ||
// | ||
// In order to publish to S3, specify endpoint as `s3:endpoint-name:` before | ||
// publishing prefix on the command line, e.g.: | ||
// | ||
// `aptly publish snapshot wheezy-main s3:test:` | ||
"S3PublishEndpoints": { | ||
}, | ||
|
||
// Swift Endpoint Support | ||
// | ||
// aptly could be configured to publish repository directly to OpenStack Swift. First, | ||
// publishing endpoints should be described in aptly configuration file. Each endpoint | ||
// has name and associated settings: | ||
// | ||
// * `container`: | ||
// container name | ||
// * `prefix`: | ||
// (optional) do publishing under specified prefix in the container, defaults to | ||
// no prefix (container root) | ||
// * `osname`, `password`: | ||
// (optional) OpenStack credentials to access Keystone. If not supplied, | ||
// environment variables `OS_USERNAME` and `OS_PASSWORD` are used. | ||
// * `tenant`, `tenantid`: | ||
// (optional) OpenStack tenant name and id (in order to use v2 authentication). | ||
// * `authurl`: | ||
// (optional) the full url of Keystone server (including port, and version). | ||
// example `http://identity.example.com:5000/v2.0` | ||
// | ||
// In order to publish to Swift, specify endpoint as `swift:endpoint-name:` before | ||
// publishing prefix on the command line, e.g.: | ||
// | ||
// `aptly publish snapshot jessie-main swift:test:` | ||
"SwiftPublishEndpoints": { | ||
}, | ||
"enableSwaggerEndpoint": false | ||
|
||
// Azure Endpoint Support | ||
// | ||
"AzurePublishEndpoints": { | ||
} | ||
|
||
} |