{"repo":"adfinis/pyaptly","free":true,"listed":false,"github":"https://github.com/adfinis/pyaptly","clone":"git clone https://github.com/adfinis/pyaptly.git","description":"Automates the creation and managment of aptly mirrors and snapshots based on yml input files.","language":"Python","stars":19,"topics":["python","aptly","cli","yml","automation"],"license":"AGPL-3.0","category":"workflow-automation","readme_excerpt":"Pyaptly Automates the creation and managment of aptly mirrors and snapshots based on toml input files. Important : Currently under heavy development: - For for the old version switch to the master branch - Main branch builds contain alpha packages, see Artifacts Why & How Aptly is great tool for creating Debian repositories. But as soon as it's required to maintain repositories for different environments it gets very complicated fast. This is where Pyaptly comes in. First of all, a single config.toml can be used to define mirrors , snapshots and publishes instead of using command line arguments. The definition includes exactly how the entities are created and updated. Secondly, aptly isn't really layed out to have retention policies. Updating a snapshot will lose the information of the previous state. That means it's hard to roll back to a previous state if required. This problem is fixed by using fix timestamps in snapshot names. That behaviour also allows to define a fixed update spacing. It's possible to say for example \"only update this snapshot once a week\". Example commands Initialize a new aptly server. Update mirrors and snapshots and switch publish endpoints with to the new snapshots. Manually trigger a switch to the new snapshots for the publish endpoint ubuntu/stable. Debugging The most interesting mode for users is not --debug but --info which shows all commands executed. Commands that fail are always displayed in red on a tty, but that actually only happens if so","default_branch":null,"files":null,"tree":[],"storefront":"/r/adfinis","claimed":false,"request_supported":{"post":"https://gitbuyer.com/r/adfinis/pyaptly/request-supported","requests":0},"note":"indexed from public GitHub; nothing is for sale on this page. Clone it from GitHub. Paid listings live at /search."}