ansible-role-k3s/CHANGELOG.md

6.7 KiB

Change Log

2021-02-27, v2.7.0

Notable changes

  • Cluster init checks added.
  • Tidy up of tasks, failed checks.
  • Possible fix for #93 - force draining of nodes added.

2021-02-27, v2.6.1

Notable changes

  • Bugfix: Templating error for single control plane nodes using Etcd.
  • Bugfix: a number of typos fixed.

2021-02-16, v2.6.0

Notable changes

  • Tidy up of when params and assert tasks to be more readable.
  • Added feature to tweak K3S service dependencies.
  • Updated documentation:
    • Node labels and component arguments
    • systemd config
    • Use alternate CNI (Calico example)

2021-01-31, v2.5.3

Notable changes

  • Bugfix, missing update to minimum ansible version var #91.

2021-01-30, v2.5.2

Notable changes

  • Bugfix, missing k3s_start_on_boot to control systemd.enabled added.

2021-01-30, v2.5.1

Notable changes

  • Added uninstall task to remove hard-linked files #88
  • Fixed missing become for systemd operations tasks. #89
  • Added k3s_start_on_boot to control systemd.enabled.

2021-01-24, v2.5.0

Notable changes

  • Added support for Ansible >= 2.9.17 #83

2021-01-23, v2.4.3

Notable changes

  • Bufgix: Installation hangs on "Check that all nodes to be ready" #84

2021-01-10, v2.4.2

Notable changes

  • Bufgix: Docker check still failing on "false"

2021-01-02, v2.4.1

Notable changes

  • Fixed issue with armv6l (Raspberry Pi Zero W)
  • Added path for private repositories config to directory creation list.

2020-12-21, v2.4.0

Notable changes

  • k3s_config_dir derived from k3s_config_file, reused throughout the role to allow for easy removal of "Rancher" references #73.
  • k3s_token_location has moved to be in k3s_config_dir.
  • Tasks for creating directories now looped to caputure configuration from k3s_server and k3s_agent and ensure directories exist before k3s starts, see #75.
  • Server token collected directly from token file, not symlinked file (node-token).
  • k3s_runtime_config defined in vars/ for validation and overwritten in tasks for control plane and workers.
  • Removed unused references to GitHub API.
  • set_fact and command tasks now use FQCN.
  • Check of ansible_version in environment check.
  • Introduction of target environment checks for #72.
  • Fixed bug with non-default listening port not being passed to workers.
  • Added ability to put documentation links into validation checks #76.
  • Removed the requirement for jmespath on the Ansible controller.
  • Fixed bug with issue data collection tasks.

Breaking changes

  • Ansible minimum version is hard set to v2.10.4
  • k3s_token_location has moved to be in k3s_config_dir so re-running the role will create a duplicate file here.

2020-12-19, v2.3.0

Notable changes

  • Updated k3s uninstall scripts #74
  • Started moving Rancher references to vars/ as per #73

2020-12-19, v2.2.2

Notable changes

  • Fixed typos in documentation.
  • Molecule testing pinned to v3.1 due to tests failing.

2020-12-16, v2.2.1

Notable changes

  • Re-working documentation
  • Updated GitHub link, org changed from Rancher to k3s-io.
  • Replace deprecated play_hosts variable.

Breaking changes

  • Moving git branch from master to main.

2020-12-12, v2.2.0

Notable changes

  • Use of FQCNs enforced, minimum Ansible version now v2.10
  • k3s_etcd_datastore no longer experimental after K3s version v1.19.5+k3s1
  • Docker marked as deprecated for K3s > v1.20.0+k3s1

Breaking changes

  • Use of FQCNs enforced, minimum Ansible version now v2.10
  • Use of Docker requires k3s_use_unsupported_config to be true after v1.20.0+k3s1

2020-12-05, v2.1.1

Notable changes

  • Fixed link to documentation.

2020-12-05, v2.1.0

Notable changes

  • Deprecated configuration check built into validation steps.
  • Removed duplicated tasks for single node cluster.
  • Added documentation providing quickstart examples and common operations.
  • Fixed data-dir configuration.
  • Some tweaks to rootless.
  • Fix draining and removing of nodes.

Breaking changes

  • k3s_token_location now points to a file location, not a directory.
  • k3s_systemd_unit_directory renamed to k3s_systemd_unit_dir
  • Removed k3s_node_data_dir as this is now configured with data-dir in k3s_server and/or k3s_agent.

Known issues

  • Rootless is still broken, this is still not supported as a method for running k3s using this role.

2020-11-30, v2.0.2

Notable changes

  • Updated issue template and information collection tasks.

2020-11-30, v2.0.1

Notable changes

  • Fixed a number of typos in the README.md
  • Updated the meta/main.yml to put quotes around minimum Ansible version.

2020-11-29, v2.0.0

Notable changes

  • #64 - Initial release of v2.0.0 of ansible-role-k3s.
  • Minimum supported k3s version now: v1.19.1+k3s1
  • Minimum supported Ansible version now: v2.10.0
  • #62 - Remove all references to the word "master".
  • #53 - Move to file-based configuration.
  • Refactored to avoid duplication in code and make contribution easier.
  • Validation checks moved to using variables defined in vars/

Breaking changes

File based configuration

Issue #53

With the release of v1.19.1+k3s1, this role has moved to file-based configuration of k3s. This requires manuall translation of v1 configuration variables into configuration file format.

Please see: https://rancher.com/docs/k3s/latest/en/installation/install-options/#configuration-file

Minimum supported k3s version

As this role now relies on file-based configuration, the v2.x release of this role will only support v1.19+ of k3s. If you are not in a position to update k3s you will need to continue using the v1.x release of this role, which will be supported until March 2021.

Minimum supported ansible version

This role now only supports Ansible v2.10+, this is because it has moved on to using FQDNs, with the exception of set_fact tasks which have been broken and the fixes have not yet been backported to v2.10.

The use of FQDNs allows for custom modules to be introduced to override task behavior. If this role requires a custom ansible module to be introduced then this can be added as a dependency and targeted specifically by using the correct FQDN.