Merge pull request #131 from geerlingguy/40-changelogs

Issue #40: Add changelog and fragments and document new changelog process.
This commit is contained in:
Jeff Geerling
2020-06-22 13:00:54 -05:00
committed by GitHub
22 changed files with 266 additions and 55 deletions

3
.gitignore vendored
View File

@@ -6,6 +6,9 @@ __pycache__/
# Galaxy artifacts. # Galaxy artifacts.
*.tar.gz *.tar.gz
# Changelog cache files.
changelogs/.plugin-cache.yaml
# Temporary test files. # Temporary test files.
tests/output tests/output
tests/integration/cloud-config-* tests/integration/cloud-config-*

View File

@@ -10,3 +10,6 @@ rules:
level: error level: error
line-length: disable line-length: disable
truthy: disable truthy: disable
indentation:
spaces: 2
indent-sequences: consistent

View File

@@ -1,54 +0,0 @@
# Kubernetes Collection Changes
## 0.11.0
### New Features
- PR #61: Add `helm`, `helm_info`, and `helm_repository` modules.
- PR #81: Rename repository to `community.kubernetes`.
### Bug Fixes
- PR #78: Update GitHub Actions workflow for better CI stability.
- PR #69: k8s_log no longer attempts to parse log as JSON.
- PR #85: Make sure extra files are not included in built collection.
## 0.10.0
### New Features
- PR #14: Add `k8s_exec` module for executing commands on pods via Kubernetes API.
- PR #16: Add `k8s_log` module for retrieving pod logs.
- Issue #49, PR #55: Add `persist_config` option for persisting refreshed tokens.
### Security Fixes
- PR #51: Warn about disclosure when using options like `kubectl_password`, `kubectl_extra_args`, and `kubectl_token` to pass data through to the command line using the `kubectl` connection plugin.
### Bug Fixes
- Issue #13: Fix argspec for 'elements'.
- Issue #33, PR #34: Fix argspec in `k8s_service`.
- Issue #10, PR #22: Test collection in a Kind cluster in CI using Molecule.
- PR #52: Documentation fix in `kubectl.py`.
- PR #54: Add exception handling when retrieving k8s client.
- PR #56: Use from_yaml filter with lookup examples in `k8s` module documentation examples.
## 0.9.0
- Initial migration of Kubernetes content from Ansible core (2.9 / devel), including content:
- **Connection Plugins**:
- `kubectl`
- **Filter Plugins**:
- `k8s_config_resource_name`
- **Inventory Source**:
- `k8s`
- `openshift`
- **Lookup Plugins**:
- `k8s`
- **Modules**:
- `k8s`
- `k8s_auth`
- `k8s_info`
- `k8s_scale`
- `k8s_service`

86
CHANGELOG.rst Normal file
View File

@@ -0,0 +1,86 @@
===================================
Kubernetes Collection Release Notes
===================================
.. contents:: Topics
v0.11.0
=======
Major Changes
-------------
- helm - New module for managing Helm charts (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_info - New module for retrieving Helm chart information (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_repository - New module for managing Helm repositories (https://github.com/ansible-collections/community.kubernetes/pull/61).
Minor Changes
-------------
- Rename repository to ``community.kubernetes`` (https://github.com/ansible-collections/community.kubernetes/pull/81).
Bugfixes
--------
- Make sure extra files are not included in built collection (https://github.com/ansible-collections/community.kubernetes/pull/85).
- Update GitHub Actions workflow for better CI stability (https://github.com/ansible-collections/community.kubernetes/pull/78).
- k8s_log - Module no longer attempts to parse log as JSON (https://github.com/ansible-collections/community.kubernetes/pull/69).
New Modules
-----------
- helm - Manages Kubernetes packages with the Helm package manager
- helm_info - Get information from Helm package deployed inside the cluster
- helm_repository - Add and remove Helm repository
v0.10.0
=======
Major Changes
-------------
- k8s_exec - New module for executing commands on pods via Kubernetes API (https://github.com/ansible-collections/community.kubernetes/pull/14).
- k8s_log - New module for retrieving pod logs (https://github.com/ansible-collections/community.kubernetes/pull/16).
Minor Changes
-------------
- k8s - Added ``persist_config`` option for persisting refreshed tokens (https://github.com/ansible-collections/community.kubernetes/issues/49).
Security Fixes
--------------
- kubectl - Warn about information disclosure when using options like ``kubectl_password``, ``kubectl_extra_args``, and ``kubectl_token`` to pass data through to the command line using the ``kubectl`` connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/51).
Bugfixes
--------
- k8s - Add exception handling when retrieving k8s client (https://github.com/ansible-collections/community.kubernetes/pull/54).
- k8s - Fix argspec for 'elements' (https://github.com/ansible-collections/community.kubernetes/issues/13).
- k8s - Use ``from_yaml`` filter with lookup examples in ``k8s`` module documentation examples (https://github.com/ansible-collections/community.kubernetes/pull/56).
- k8s_service - Fix argspec (https://github.com/ansible-collections/community.kubernetes/issues/33).
- kubectl - Fix documentation in kubectl connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/52).
New Modules
-----------
- k8s_exec - Execute command in Pod
- k8s_log - Fetch logs from Kubernetes resources
v0.9.0
======
Major Changes
-------------
- k8s - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Lookup plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_auth - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_config_resource_name - Filter plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s_info - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_scale - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_service - Module migrated from Ansible 2.9 to Kubernetes collection.
- kubectl - Connection plugin migrated from Ansible 2.9 to Kubernetes collection.
- openshift - Inventory source migrated from Ansible 2.9 to Kubernetes collection.

View File

@@ -132,8 +132,11 @@ The current process for publishing new versions of the Kubernetes Collection is
1. Ensure you're running Ansible from devel, so the [`build_ignore` key](https://github.com/ansible/ansible/issues/67130) in `galaxy.yml` is used. 1. Ensure you're running Ansible from devel, so the [`build_ignore` key](https://github.com/ansible/ansible/issues/67130) in `galaxy.yml` is used.
1. Run `git clean -x -d -f` in this repository's directory to clean out any extra files which should not be included. 1. Run `git clean -x -d -f` in this repository's directory to clean out any extra files which should not be included.
1. Ensure `CHANGELOG.md` contains all the latest changes.
1. Update `galaxy.yml` and this README's `requirements.yml` example with the new `version` for the collection. 1. Update `galaxy.yml` and this README's `requirements.yml` example with the new `version` for the collection.
1. Update the CHANGELOG:
1. Make sure you have [`antsibull-changelog`](https://pypi.org/project/antsibull-changelog/) installed.
1. Make sure there are fragments for all known changes in `changelogs/fragments`.
1. Run `antsibull-changelog release`
1. Tag the version in Git and push to GitHub. 1. Tag the version in Git and push to GitHub.
1. Run the following commands to build and release the new version on Galaxy: 1. Run the following commands to build and release the new version on Galaxy:

84
changelogs/changelog.yaml Normal file
View File

@@ -0,0 +1,84 @@
ancestor: null
releases:
0.10.0:
changes:
bugfixes:
- k8s - Add exception handling when retrieving k8s client (https://github.com/ansible-collections/community.kubernetes/pull/54).
- k8s - Fix argspec for 'elements' (https://github.com/ansible-collections/community.kubernetes/issues/13).
- k8s - Use ``from_yaml`` filter with lookup examples in ``k8s`` module documentation
examples (https://github.com/ansible-collections/community.kubernetes/pull/56).
- k8s_service - Fix argspec (https://github.com/ansible-collections/community.kubernetes/issues/33).
- kubectl - Fix documentation in kubectl connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/52).
major_changes:
- k8s_exec - New module for executing commands on pods via Kubernetes API (https://github.com/ansible-collections/community.kubernetes/pull/14).
- k8s_log - New module for retrieving pod logs (https://github.com/ansible-collections/community.kubernetes/pull/16).
minor_changes:
- k8s - Added ``persist_config`` option for persisting refreshed tokens (https://github.com/ansible-collections/community.kubernetes/issues/49).
security_fixes:
- kubectl - Warn about information disclosure when using options like ``kubectl_password``,
``kubectl_extra_args``, and ``kubectl_token`` to pass data through to the
command line using the ``kubectl`` connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/51).
fragments:
- 13-fix-elements-argspec.yaml
- 14-k8s_exec-new-module.yaml
- 16-k8s_log-new-module.yaml
- 33-k8s_service-fix-argspec.yaml
- 49-k8s-add-persist_config-option.yaml
- 51-kubectl-security-disclosure.yaml
- 52-kubectl-connection-docsfix.yaml
- 54-k8s-add-exception-handling.yaml
- 56-k8s-from_yaml-docs-examples.yaml
modules:
- description: Execute command in Pod
name: k8s_exec
namespace: ''
- description: Fetch logs from Kubernetes resources
name: k8s_log
namespace: ''
release_date: '2020-03-23'
0.11.0:
changes:
bugfixes:
- Make sure extra files are not included in built collection (https://github.com/ansible-collections/community.kubernetes/pull/85).
- Update GitHub Actions workflow for better CI stability (https://github.com/ansible-collections/community.kubernetes/pull/78).
- k8s_log - Module no longer attempts to parse log as JSON (https://github.com/ansible-collections/community.kubernetes/pull/69).
major_changes:
- helm - New module for managing Helm charts (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_info - New module for retrieving Helm chart information (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_repository - New module for managing Helm repositories (https://github.com/ansible-collections/community.kubernetes/pull/61).
minor_changes:
- Rename repository to ``community.kubernetes`` (https://github.com/ansible-collections/community.kubernetes/pull/81).
fragments:
- 61-helm-new-modules.yaml
- 69-k8s_log-dont-parse-as-json.yaml
- 78-github-actions-workflow.yaml
- 81-rename-repository.yaml
- 85-exclude-unnecessary-files-when-building.yaml
modules:
- description: Manages Kubernetes packages with the Helm package manager
name: helm
namespace: ''
- description: Get information from Helm package deployed inside the cluster
name: helm_info
namespace: ''
- description: Add and remove Helm repository
name: helm_repository
namespace: ''
release_date: '2020-05-04'
0.9.0:
changes:
major_changes:
- k8s - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Lookup plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_auth - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_config_resource_name - Filter plugin migrated from Ansible 2.9 to Kubernetes
collection.
- k8s_info - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_scale - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_service - Module migrated from Ansible 2.9 to Kubernetes collection.
- kubectl - Connection plugin migrated from Ansible 2.9 to Kubernetes collection.
- openshift - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
fragments:
- 4-k8s-prepare-collection-for-release.yaml
release_date: '2020-02-05'

30
changelogs/config.yaml Normal file
View File

@@ -0,0 +1,30 @@
---
changelog_filename_template: ../CHANGELOG.rst
changelog_filename_version_depth: 0
changes_file: changelog.yaml
changes_format: combined
keep_fragments: true
mention_ancestor: true
new_plugins_after_name: removed_features
notesdir: fragments
prelude_section_name: release_summary
prelude_section_title: Release Summary
sections:
- - major_changes
- Major Changes
- - minor_changes
- Minor Changes
- - breaking_changes
- Breaking Changes / Porting Guide
- - deprecated_features
- Deprecated Features
- - removed_features
- Removed Features (previously deprecated)
- - security_fixes
- Security Fixes
- - bugfixes
- Bugfixes
- - known_issues
- Known Issues
title: Kubernetes Collection
trivial_section_name: trivial

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- k8s - Fix argspec for 'elements' (https://github.com/ansible-collections/community.kubernetes/issues/13).

View File

@@ -0,0 +1,3 @@
---
major_changes:
- k8s_exec - New module for executing commands on pods via Kubernetes API (https://github.com/ansible-collections/community.kubernetes/pull/14).

View File

@@ -0,0 +1,3 @@
---
major_changes:
- k8s_log - New module for retrieving pod logs (https://github.com/ansible-collections/community.kubernetes/pull/16).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- k8s_service - Fix argspec (https://github.com/ansible-collections/community.kubernetes/issues/33).

View File

@@ -0,0 +1,12 @@
---
major_changes:
- k8s - Inventory source migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s - Lookup plugin migrated from Ansible 2.9 to Kubernetes collection.
- k8s_auth - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_info - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_scale - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_service - Module migrated from Ansible 2.9 to Kubernetes collection.
- k8s_config_resource_name - Filter plugin migrated from Ansible 2.9 to Kubernetes collection.
- kubectl - Connection plugin migrated from Ansible 2.9 to Kubernetes collection.
- openshift - Inventory source migrated from Ansible 2.9 to Kubernetes collection.

View File

@@ -0,0 +1,3 @@
---
minor_changes:
- k8s - Added ``persist_config`` option for persisting refreshed tokens (https://github.com/ansible-collections/community.kubernetes/issues/49).

View File

@@ -0,0 +1,3 @@
---
security_fixes:
- kubectl - Warn about information disclosure when using options like ``kubectl_password``, ``kubectl_extra_args``, and ``kubectl_token`` to pass data through to the command line using the ``kubectl`` connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/51).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- kubectl - Fix documentation in kubectl connection plugin (https://github.com/ansible-collections/community.kubernetes/pull/52).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- k8s - Add exception handling when retrieving k8s client (https://github.com/ansible-collections/community.kubernetes/pull/54).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- k8s - Use ``from_yaml`` filter with lookup examples in ``k8s`` module documentation examples (https://github.com/ansible-collections/community.kubernetes/pull/56).

View File

@@ -0,0 +1,5 @@
---
major_changes:
- helm - New module for managing Helm charts (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_info - New module for retrieving Helm chart information (https://github.com/ansible-collections/community.kubernetes/pull/61).
- helm_repository - New module for managing Helm repositories (https://github.com/ansible-collections/community.kubernetes/pull/61).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- k8s_log - Module no longer attempts to parse log as JSON (https://github.com/ansible-collections/community.kubernetes/pull/69).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- Update GitHub Actions workflow for better CI stability (https://github.com/ansible-collections/community.kubernetes/pull/78).

View File

@@ -0,0 +1,3 @@
---
minor_changes:
- Rename repository to ``community.kubernetes`` (https://github.com/ansible-collections/community.kubernetes/pull/81).

View File

@@ -0,0 +1,3 @@
---
bugfixes:
- Make sure extra files are not included in built collection (https://github.com/ansible-collections/community.kubernetes/pull/85).