argo-helm/scripts/release-analysis
Tim Collins c9f549f35d
chore(github): Update release metrics before ArgoCon EU (#3215)
Signed-off-by: Tim Collins <tim@thecollins.team>
2025-03-26 09:01:08 +00:00
..
.mega-linter.yaml feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
Dockerfile feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
README.md chore(github): Update release metrics (#3188) 2025-03-03 18:42:59 +09:00
argo_helm_releases.csv chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00
argo_releases.csv chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00
fetch_helmet_releases.py feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
fetch_releases.py feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
main.py feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
merge_csvs.py feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
merged_releases.csv chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00
plot_graph.py feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
requirements.txt feat(github): Analyse past release times (#3135) 2025-01-29 13:43:03 +00:00
time_difference_plot_argo-cd.png chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00
time_difference_plot_argo-events.png chore(github): Update release metrics (#3188) 2025-03-03 18:42:59 +09:00
time_difference_plot_argo-rollouts.png chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00
time_difference_plot_argo-workflows.png chore(github): Update release metrics before ArgoCon EU (#3215) 2025-03-26 09:01:08 +00:00

README.md

argo-helm release analysis

Compare the time of the upstream release to the time of the equivalent Helm Chart release to determine the time it takes for a new release to be available in argo-helm.

How to run

This is quite github-api-intensive, so you'll need a github PAT. The PAT only requires public read (to fetch the data from the public repos without being too rate limited).

# Build the container
docker build . -t team-helm-analysis

# Delete any existing data
rm -f argo_helm_releases.csv argo_releases.csv merged_releases.csv time_difference_plot_argo*.png

# Run the container
GITHUB_TOKEN=your_token_here
docker run --rm -e GITHUB_TOKEN=$GITHUB_TOKEN -v ${PWD}:/app team-helm-analysis

You should get 3 csvs and 4 graphs once this completes. It takes around 5 mins to run.

Linting

I ran megalinter against this just to give some confidence that it's not completely broken. It's not perfect, but it's something.

Run megalinter locally against this directory with: docker run --rm -v /var/run/docker.sock:/var/run/docker.sock:rw -v $(pwd):/tmp/lint:rw oxsecurity/megalinter:v8