Skip to content
/ pyaptly Public
forked from adfinis/pyaptly

Automates the creation and managment of aptly mirrors and snapshots based on yml input files.

License

Notifications You must be signed in to change notification settings

winged/pyaptly

 
 

Repository files navigation

Pyaptly

Automates the creation and managment of aptly mirrors and snapshots based on yml input files.

travis coverage1

Read the Docs

Example commands

Initialize a new aptly server.

pyaptly -c mirrors.yml mirror create
pyaptly -c mirrors.yml mirror update
pyaptly -c mirrors.yml snapshot create
pyaptly -c mirrors.yml publish create

Update mirrors and snapshots and switch publish endpoints with automatic-update: true to the new snapshots.

pyaptly -c mirrors.yml mirror update
pyaptly -c mirrors.yml snapshot create
pyaptly -c mirrors.yml publish create
pyaptly -c mirrors.yml publish update

Manually trigger a switch to the new snapshots for the publish endpoint ubuntu/stable.

pyaptly -c mirrors.yml publish update ubuntu/stable

Testing

Automatic

git submodule update --init --recursive
make test-local

Manual. There is a safety check in tests. They won't work if you don't set $HOME.

git submodule update --init --recursive
source testenv
py.test -x

or

git submodule update --init --recursive
export HOME="$(pwd)"
export PATH="$HOME/aptly_0.9.6_linux_amd64/:$PATH"
py.test -x

Vagrant Box

The box provisions aptly, nginx and two repos which can be used for tests:

aptly mirror create mirro-fakerepo01 http://localhost/fakerepo01 main
aptly mirror create mirro-fakerepo02 http://localhost/fakerepo02 main

  1. Coverage enforced by tests (on travis)

About

Automates the creation and managment of aptly mirrors and snapshots based on yml input files.

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Python 99.8%
  • Other 0.2%