aptly defaults to publish to a single publish directory under ~/.aptly/public
. For
a more advanced publishing strategy, you can define one or more filesystem endpoints in the
FileSystemPublishEndpoints
list of the aptly configuration file.
Example:
...
"FileSystemPublishEndpoints": {
"test1": {
"rootDir": "/opt/srv1/aptly_public",
"linkMethod": "symlink"
},
"test2": {
"rootDir": "/opt/srv2/aptly_public",
"linkMethod": "copy",
"verifyMethod": "md5"
},
"test3": {
"rootDir": "/opt/srv3/aptly_public",
"linkMethod": "hardlink"
}
},
...
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