Aptly

Install and configure Aptly server and client.

Available states

aptly.server

Setup aptly server

aptly.publisher

Setup aptly publisher

Configuration parameters

Example reclass

Basic Aptly server with no repos or mirrors.

classes:
- service.aptly.server.single
parameters:
   aptly:
     server:
       enabled: true
       secure: true
       gpg_keypair_id: A76882D3
       gpg_passphrase:
       gpg_public_key: |
         -----BEGIN PGP PUBLIC KEY BLOCK-----
         Version: GnuPG v1
         ...
       gpg_private_key: |
         -----BEGIN PGP PRIVATE KEY BLOCK-----
         Version: GnuPG v1
         ...

Define s3 endpoint:

parameters:
  aptly:
    server:
      endpoint:
        mys3endpoint:
          engine: s3
          awsAccessKeyID: xxxx
          awsSecretAccessKey: xxxx
          bucket: test

Example pillar

aptly:
  server:
    enabled: true
    repo:
      myrepo:
        distribution: trusty
        component: main
        architectures: amd64
        comment: "Custom components"
        sources: false
        publisher:
          component: mycomponent
          distributions:
            - nightly/trusty

Basic Aptly server mirrors

aptly:
  server:
    mirror:
      mirror_name:
        source: http://example.com/debian
        distribution: xenial
        components: main
        architectures: amd64
        gpgkeys: 460F3999
        filter: "!(Name (% *-dbg))"
        filter_with_deps: true
        publisher:
          component: example
          distributions:
            - xenial/repo/nightly
            - "s3:aptcdn:xenial/repo/nightly"

Proxy environment variables (optional) in cron job for mirroring script

aptly:
  server:
    enabled: true
    ...
    mirror_update:
      enabled: true
      http_proxy: "http://1.2.3.4:8000"
      https_proxy: "http://1.2.3.4:8000"
    ...

Documentation and Bugs

To learn how to install and update salt-formulas, consult the documentation available online at:

In the unfortunate event that bugs are discovered, they should be reported to the appropriate issue tracker. Use Github issue tracker for specific salt formula:

For feature requests, bug reports or blueprints affecting entire ecosystem, use Launchpad salt-formulas project:

You can also join salt-formulas-users team and subscribe to mailing list:

Developers wishing to work on the salt-formulas projects should always base their work on master branch and submit pull request against specific formula.

Any questions or feedback is always welcome so feel free to join our IRC channel:

#salt-formulas @ irc.freenode.net