Changelog

debops.apt

This project adheres to Semantic Versioning and human-readable changelog.

The current role maintainer is drybjed.

Refer to the Upgrade notes when you intend to upgrade to a new release.

debops.apt master - unreleased

Added

  • Add the Ansible local fact default_sources_map which contains a dictionary with distribution name as key containing a list of default sources for each distribution. default_mirrors is equivalent to default_sources_map[apt__distribution] [ypid]

Changed

  • Filter the Ansible local facts default_mirrors to only provide the default APT mirrors that are relevant to the current OS distribution. This way the list can be used by other Ansible roles for APT mirror information. [drybjed, ypid]
  • Use debops__tpl_macros.js_ to cleanup redundant code. [ypid]

debops.apt v0.4.4 - 2017-03-24

Changed

debops.apt v0.4.3 - 2016-11-23

Added

  • Improve autodetection of APT sources on Raspbian and Ubuntu, as well as Debian Testing/Unstable releases. [grantma]

debops.apt v0.4.2 - 2016-11-22

Added

  • Add support for filtering APT distribution sources and repositories according to the system architecture. Only one architecture can be specified at a time for a given source entry. [drybjed]
  • Add apt__distribution_release_map YAML dictionary which keeps the information about released OS distributions which have official security repositories. [drybjed]

Changed

  • Update the /etc/apt/sources.list template so that it tracks repository suites for each URI. This should allow configuration of separate source entries from the same repository but with different suites. [drybjed]
  • The Debian Security repository will be enabled only on official releases, on hosts with Debian Unstable (Sid) it will be automatically disabled. [drybjed]
  • Ubuntu Security repository will be enabled only on supported architectures (amd64, i386). On other architectures, Ubuntu Ports Security repository will be enabled instead. [drybjed]

debops.apt v0.4.1 - 2016-11-03

Added

  • Add an entry for an alternative Debian Security repository that's present in the /etc/apt/sources.list on Debian Stretch. This entry is disabled by default to not include duplicates in the generated sources configuration, but still needs to be present for debops.apt to recognize it correctly. [drybjed]

debops.apt v0.4.0 - 2016-10-04

Added

  • The role now knows about free vs non-free APT distribution repositories. The non-free repositories are enabled on hardware-based hosts to prepare for the unfortunate case where non-free firmware packages are required; otherwise only repositories containing Free Software (main and, on Ubuntu, universe) are enabled. This can be controlled by the apt__nonfree variable.

    The role exposes an additional Ansible fact that detects the availability of the non-free distribution sources and can be used by other Ansible roles to check if non-free packages can be installed. [drybjed]

  • The distribution and distribution_release parameters allow you to conditionally enable APT keys/repositories. This allows for example to enable certain repository only when Debian is found as the host's OS. [drybjed]

  • Management of /etc/apt/sources.list file is controlled by a separate variable, apt__sources_deploy_state. [drybjed]

  • Lists of APT keys, APT repositories and distribution sources are now properly documented. [drybjed]

  • The OS distribution and release detection now uses Ansible facts managed by the debops.core role. With these enabled, debops.apt should correctly detect a Debian Testing installation and configure it accordingly. [drybjed]

  • The role looks for original APT repositories configured on a host in the diverted /etc/apt/sources.list file and includes them in the generated configuration file with higher precedence than the default mirrors, with the assumption that the original mirrors are closer than the role defaults. This can be controlled by the default variables. [drybjed]

Changed

  • The apt__update_cache_early variable has been renamed to apt__cache_valid_time. [drybjed]
  • The apt__sources_types variable has been renamed to apt__source_types. [drybjed]
  • The OS distribution and release detection has been redesigned and should allow for more flexibility in regards to different operating systems. [drybjed]
  • Some of the APT repository/source list parameters have been renamed. Check the documentation for currently used parameters. [drybjed]
  • The Ansible local fact file has been changed into a Python script and is now more dynamic, and provides additional information about original APT sources, used internally. [drybjed]
  • The task list has been streamlined and merged into one file. The Ansible facts are configured at the beginning to allow for the role to gather information about original APT sources. [drybjed]
  • Expose configuration of installation or removal of recommended or suggested packages in default variables. [drybjed]

Removed

  • The variables set in vars/*.yml variables as well as the file lookup mechanism have been removed. Their configuration lives on in the improved apt__*_sources lists. [drybjed]
  • The apt__*_mirrors variables have been removed, the functionality is now merged with apt__*_sources variables. [drybjed]
  • The apt__*_delayed variables have been removed. You can use the state parameter with Ansible local facts to get an equivalent functionality. See the documentation for more details. [drybjed]
  • Remove the aptitude configuration using a static template file. Existing configuration files are not changed. [drybjed].

debops.apt v0.3.0 - 2016-09-14

Removed

  • Remove support for apt-listchanges (moved to a separate role) and apticron packages. [drybjed]
  • Remove support for APT proxy configuration, it is moved to a separate Ansible role. [drybjed]

debops.apt v0.2.1 - 2016-09-09

Added

  • Added support for both http and https repositories in case of internet proxy. Moved apt__proxy_url to apt__http_proxy_url and added apt__https_proxy_url. [tallandtree]

Changed

debops.apt v0.2.0 - 2016-07-14

Added

  • Added apt__proxy_bypass_for_bugs_debian_org which you can enable if you hit a problem with a proxy server not allowing access to https://bugs.debian.org. [ypid]

Changed

  • Updated/Reworked documentation. [ypid]

  • Changed namespace from apt_ to apt__. apt_[^_] variables are hereby deprecated and you might need to update your inventory. This oneliner might come in handy to do this:

    git ls-files -z | xargs --null -I '{}' find '{}' -type f -print0 | xargs --null sed --in-place --regexp-extended 's/\<(apt)_([^_])/\1__\2/g;s/apt__(key|repository|preferences|cacher)/apt_\1/g;s/apt_keys_delayed/apt__keys_delayed/g;'
    

    [ypid]

  • Use backported irqbalance on Debian Jessie. [ypid]

  • Rename forgotten apt_keys variable. [drybjed]

Removed

debops.apt v0.1.0 - 2016-05-26

Added

  • Add Changelog. [drybjed]
  • Support "stacked inventory variables" for APT sources, repositories, keys and lists of mirrors. [drybjed]
  • Added apt__remove_default_configuration option which defaults to true. This ensures that /etc/apt/apt.conf is absent. [ypid]
  • Use backported apt-cacher-ng on Debian Jessie. [ypid]
  • Allow to modify APT sections without defining apt__default_sources by using the added apt__sources_sections variable. [ypid]

Changed

  • Switch the default Debian mirror to new official redirector at http://httpredir.debian.org/. [drybjed]
  • Remove support for unattended-upgrades. The new role debops.unattended_upgrades handles this now. The debops.apt role will have a task for some time which removes old configuration files related to unattended-upgrades to clean up the old systems. [drybjed]
  • Fix deprecation warnings in Ansible 2.1.0. [drybjed]