Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/sgibson91/helm-upgrade-decision-logic

Testing logic to decide which clusters/hubs to perform helm upgrade for based on changed filepaths
https://github.com/sgibson91/helm-upgrade-decision-logic

Last synced: about 1 month ago
JSON representation

Testing logic to decide which clusters/hubs to perform helm upgrade for based on changed filepaths

Awesome Lists containing this project

README

        

# Testing decision logic for helm upgrade

This repository is a sandbox for testing the logic required for deciding which hubs on which clusters should have a helm upgrade based on changed filepaths.

**What it contains:**

- `mymodule/helm_upgrade_decision_logic.py`: A Python package (script) that analyses a list of filenames and decides which clusters/hubs need a helm upgrade, for their hub helm chart and the support helm chart. It adds a list of dictionaries to the GitHub Actions environment that can be used to configure matrix jobs in a later job. There is also a `--pretty-print` option that prints a human-readable table of jobs that will be run using the `rich` package.
- `.github/workflows/helm-upgrade-decision-logic.yaml`: A GitHub Action workflow that uses [`jitterbit/get-changed-files`](https://github.com/jitterbit/get-changed-files) to establish which files have been changed and pass this list to the Python script.

There is a `config/clusters` folder and `helm-charts` folder as we would see in the `2i2c-org/infrastructure repo`.

The `tests/` folder contains testing infrastructure for this logic and this is triggered by the `test-deployer.yaml` workflow file.

Please make as many Pull Requests as you like to test the workflow!