No description
Find a file
Cybervitexus 60ace96184
Merge pull request #1 from mbearup/master
Add support for zst compression
2022-03-24 14:21:39 +01:00
.github Timeout CI build job after 30 minutes 2022-02-13 21:07:50 +01:00
_man Fix paths after repository transfer to aptly-dev 2018-04-18 21:19:43 +03:00
api govet: compose literal uses unkeyed fields 2022-01-27 09:30:14 +01:00
aptly Add publish output progress counting remaining number of packages 2022-01-27 09:30:14 +01:00
azure Fix the storage string format. 2022-01-21 11:46:36 +01:00
cmd Revive skipped tests 2022-02-08 11:18:50 +01:00
completion.d Make downloader type configurable 2022-01-31 10:32:54 +01:00
console Add publish output progress counting remaining number of packages 2022-01-27 09:30:14 +01:00
context Make downloader type configurable 2022-01-31 10:32:54 +01:00
database Fixed not running tests 2022-01-27 09:30:14 +01:00
deb Add support for zst compression 2022-03-22 20:20:42 +00:00
files Fix pure-go unittests 2022-01-27 09:30:14 +01:00
http Basic tests for Grab downloader 2022-01-31 10:32:54 +01:00
man Update man pages 2022-01-31 10:32:54 +01:00
pgp Silence unhelpful linter error 2022-01-27 09:30:14 +01:00
query Fix linter list and fix errors discovered by new staticcheck 2019-01-20 00:01:17 +03:00
s3 When ETag doesn’t look like MD5, use the value from metadata instead 2021-03-02 13:37:17 +00:00
swift Test LinkFromPool with nested filenames 2018-07-06 15:02:37 +02:00
system Use University of Utah mirror in tests 2022-02-13 20:44:28 +01:00
systemd Bump Go versions for Travis, fix tests 2019-07-04 00:16:12 +03:00
task Fix linting errors 2022-01-27 09:30:14 +01:00
utils Make downloader type configurable 2022-01-31 10:32:54 +01:00
.flake8 Fix tests and fixtures relying on expired pgp keys 2021-02-08 10:52:27 +01:00
.gitignore Configurable background task execution 2022-01-27 09:30:14 +01:00
.golangci.yml Silence unhelpful linter error 2022-01-27 09:30:14 +01:00
.goxc.json .goxc.json: list os/arch explicitly to avoid darwin/386 2021-04-29 14:41:24 +02:00
.travis.yml Test against more recent versions of Go 2021-02-12 09:23:24 +01:00
aptly-api.service Move nightly builds to Travis CI 2018-06-12 00:26:44 +03:00
aptly.service Add systemd service for aptly http server and aptly api 2018-04-05 17:13:26 +02:00
AUTHORS Trigger CI on every push 2022-01-27 09:30:14 +01:00
CODE_OF_CONDUCT.md Add Contributor Covenant Code of Conduct [ci skip] 2016-12-29 00:01:17 +03:00
CONTRIBUTING.md Fix: typo in aptly web page link 2022-02-05 09:28:44 +01:00
go.mod Add support for zst compression 2022-03-22 20:20:42 +00:00
go.sum Add support for zst compression 2022-03-22 20:20:42 +00:00
LICENSE Update license to mention that there are many contributors. 2015-07-04 13:06:58 +03:00
main.go Fix paths after repository transfer to aptly-dev 2018-04-18 21:19:43 +03:00
Makefile Convert tests to Python 3 2022-01-27 15:06:33 +01:00
mem.gp gnuplot script. 2014-03-03 20:59:37 +04:00
README.rst Fix badges 2022-01-27 15:18:32 +01:00
upload-artifacts.sh Skip uploading release versions of aptly to nightly repo 2019-07-11 01:52:00 +03:00

=====
aptly
=====

.. image:: https://github.com/aptly-dev/aptly/actions/workflows/ci.yml/badge.svg
    :target: https://github.com/aptly-dev/aptly/actions

.. image:: https://codecov.io/gh/aptly-dev/aptly/branch/master/graph/badge.svg
    :target: https://codecov.io/gh/aptly-dev/aptly

.. image:: https://badges.gitter.im/Join Chat.svg
    :target: https://gitter.im/aptly-dev/aptly?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge

.. image:: https://goreportcard.com/badge/github.com/aptly-dev/aptly
    :target: https://goreportcard.com/report/aptly-dev/aptly

Aptly is a swiss army knife for Debian repository management.

.. image:: http://www.aptly.info/img/aptly_logo.png
    :target: http://www.aptly.info/

Documentation is available at `http://www.aptly.info/ <http://www.aptly.info/>`_. For support please use
mailing list `aptly-discuss <https://groups.google.com/forum/#!forum/aptly-discuss>`_.

Aptly features: ("+" means planned features)

* make mirrors of remote Debian/Ubuntu repositories, limiting by components/architectures
* take snapshots of mirrors at any point in time, fixing state of repository at some moment of time
* publish snapshot as Debian repository, ready to be consumed by apt
* controlled update of one or more packages in snapshot from upstream mirror, tracking dependencies
* merge two or more snapshots into one
* filter repository by search query, pulling dependencies when required
* publish self-made packages as Debian repositories
* REST API for remote access
* mirror repositories "as-is" (without resigning with user's key) (+)
* support for yum repositories (+)

Current limitations:

* translations are not supported yet

Download
--------

To install aptly on Debian/Ubuntu, add new repository to ``/etc/apt/sources.list``::

    deb http://repo.aptly.info/ squeeze main

And import key that is used to sign the release::

    $ apt-key adv --keyserver keyserver.ubuntu.com --recv-keys ED75B5A4483DA07C

After that you can install aptly as any other software package::

    $ apt-get update
    $ apt-get install aptly

Don't worry about squeeze part in repo name: aptly package should work on Debian squeeze+,
Ubuntu 10.0+. Package contains aptly binary, man page and bash completion.

If you would like to use nightly builds (unstable), please use following repository::

    deb http://repo.aptly.info/ nightly main

Binary executables (depends almost only on libc) are available for download from `GitHub Releases <https://github.com/aptly-dev/aptly/releases>`_.

If you have Go environment set up, you can build aptly from source by running (go 1.14+ required)::

    git clone https://github.com/aptly-dev/aptly
    cd aptly
    make modules install

Binary would be installed to ``$GOPATH/bin/aptly``.

Contributing
------------

Please follow detailed documentation in `CONTRIBUTING.md <CONTRIBUTING.md>`_.

Integrations
------------

Vagrant:

-   `Vagrant configuration <https://github.com/sepulworld/aptly-vagrant>`_ by
    Zane Williamson, allowing to bring two virtual servers, one with aptly installed
    and another one set up to install packages from repository published by aptly

Docker:

-    `Docker container <https://github.com/mikepurvis/aptly-docker>`_ with aptly inside by Mike Purvis
-    `Docker container <https://github.com/urpylka/docker-aptly>`_ with aptly and nginx by Artem Smirnov

With configuration management systems:

-   `Chef cookbook <https://github.com/hw-cookbooks/aptly>`_ by Aaron Baer
    (Heavy Water Operations, LLC)
-   `Puppet module <https://github.com/alphagov/puppet-aptly>`_ by
    Government Digital Services
-   `Puppet module <https://github.com/tubemogul/puppet-aptly>`_ by
    TubeMogul
-   `SaltStack Formula <https://github.com/saltstack-formulas/aptly-formula>`_ by
    Forrest Alvarez and Brian Jackson
-   `Ansible role <https://github.com/aioue/ansible-role-aptly>`_ by Tom Paine

CLI for aptly API:

-   `Ruby aptly CLI/library <https://github.com/sepulworld/aptly_cli>`_ by Zane Williamson
-   `Python aptly CLI (good for CI) <https://github.com/TimSusa/aptly_api_cli>`_ by Tim Susa

GUI for aptly API:

-   `Python aptly GUI (via pyqt5) <https://github.com/chnyda/python-aptly-gui>`_ by Cedric Hnyda

Scala sbt:

-   `sbt aptly plugin <https://github.com/amalakar/sbt-aptly>`_ by Arup Malakar