From fd6f486340fcbb782efe75d81c30734dfbee34dc Mon Sep 17 00:00:00 2001 From: Iain Samuel McLean Elder Date: Sun, 30 Jun 2024 22:54:08 +0200 Subject: [PATCH] Use dynamic matrix for scheduled tests Provides a solution for #7. https://github.com/iainelder/dotfiles/issues/7 Inspired by Ken Muse's "Dynamic Build Matrices in GitHub Actions". https://www.kenmuse.com/blog/dynamic-build-matrices-in-github-actions/ Removed schedule from from generated workflows. Retain push trigger on generated workflows for tests triggered by changes to the installer script. --- .github/workflows/1password-cli.yml | 5 -- .github/workflows/1password.yml | 5 -- .github/workflows/_program.yml.template | 5 -- .github/workflows/act.yml | 5 -- .github/workflows/angle-grinder.yml | 5 -- .github/workflows/anki.yml | 5 -- .github/workflows/aws-nuke.yml | 5 -- .github/workflows/aws-vault.yml | 5 -- .github/workflows/awscli.yml | 5 -- .github/workflows/awsls.yml | 5 -- .github/workflows/awsvpnclient.yml | 5 -- .github/workflows/bashmarks.yml | 5 -- .github/workflows/borgbackup.yml | 5 -- .github/workflows/clustergit.yml | 5 -- .github/workflows/codebuild-agent.yml | 5 -- .github/workflows/cropgui.yml | 5 -- .github/workflows/cw.yml | 5 -- .github/workflows/diff-pdf.yml | 5 -- .github/workflows/direnv.yml | 5 -- .github/workflows/dotnetsdk.yml | 5 -- .github/workflows/dsutils.yml | 5 -- .github/workflows/duckdb.yml | 5 -- .github/workflows/dvc.yml | 5 -- .github/workflows/envman.yml | 5 -- .../firefox-open-url-in-container.yml | 5 -- .github/workflows/firefox.yml | 5 -- .github/workflows/fzf.yml | 5 -- .github/workflows/gcloud.yml | 5 -- .github/workflows/geckodriver.yml | 5 -- .github/workflows/gephi.yml | 5 -- .github/workflows/git-secrets.yml | 5 -- .github/workflows/github-cli.yml | 5 -- .github/workflows/gnucash3.yml | 5 -- .github/workflows/goenv.yml | 5 -- .github/workflows/golang.yml | 5 -- .github/workflows/granted.yml | 5 -- .github/workflows/htmlq.yml | 5 -- .github/workflows/identitystorelister.yml | 5 -- .github/workflows/jd.yml | 5 -- .github/workflows/jmeter.yml | 5 -- .github/workflows/mark.yml | 5 -- .github/workflows/mullvad-vpn.yml | 5 -- .github/workflows/nice-dcv-viewer.yml | 5 -- .github/workflows/openrefine.yml | 5 -- .github/workflows/packer.yml | 5 -- .github/workflows/parallel.yml | 5 -- .github/workflows/pipelines.yml | 5 -- .github/workflows/pipx.yml | 5 -- .github/workflows/plantuml.yml | 5 -- .github/workflows/powershell.yml | 5 -- .github/workflows/q.yml | 5 -- .github/workflows/qsv.yml | 5 -- .github/workflows/rain.yml | 5 -- .github/workflows/rclone.yml | 5 -- .github/workflows/rocketchat.yml | 5 -- .github/workflows/s5cmd.yml | 5 -- .github/workflows/saml2aws.yml | 5 -- .github/workflows/shellcheck.yml | 5 -- .github/workflows/snowsql.yml | 5 -- .github/workflows/spotify.yml | 5 -- .github/workflows/sqlean.yml | 5 -- .github/workflows/terragrunt.yml | 5 -- .github/workflows/test_installer.yml | 54 +++++++++++++++++++ .github/workflows/tfenv.yml | 5 -- .github/workflows/tgenv.yml | 5 -- .github/workflows/typora.yml | 5 -- .github/workflows/vagrant.yml | 5 -- .github/workflows/vale.yml | 5 -- .github/workflows/virtualbox.yml | 5 -- .github/workflows/vscode.yml | 5 -- .github/workflows/workspacesclient.yml | 5 -- .github/workflows/yq.yml | 5 -- .github/workflows/zoom.yml | 5 -- 73 files changed, 54 insertions(+), 360 deletions(-) create mode 100644 .github/workflows/test_installer.yml diff --git a/.github/workflows/1password-cli.yml b/.github/workflows/1password-cli.yml index cc5bde0d..5cb656de 100644 --- a/.github/workflows/1password-cli.yml +++ b/.github/workflows/1password-cli.yml @@ -4,11 +4,6 @@ on: paths: - programs/1password-cli/install.bash - .github/workflows/1Password CLI.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/1password.yml b/.github/workflows/1password.yml index 19f8bf3e..92f57a46 100644 --- a/.github/workflows/1password.yml +++ b/.github/workflows/1password.yml @@ -4,11 +4,6 @@ on: paths: - programs/1password/install.bash - .github/workflows/1Password.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/_program.yml.template b/.github/workflows/_program.yml.template index d28febf4..26e11b2d 100644 --- a/.github/workflows/_program.yml.template +++ b/.github/workflows/_program.yml.template @@ -4,11 +4,6 @@ on: paths: - ${program_script} - .github/workflows/${program_name}.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/act.yml b/.github/workflows/act.yml index bda782a2..0371912e 100644 --- a/.github/workflows/act.yml +++ b/.github/workflows/act.yml @@ -4,11 +4,6 @@ on: paths: - programs/act/install.bash - .github/workflows/Act.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/angle-grinder.yml b/.github/workflows/angle-grinder.yml index 8f87bdbb..bd639f56 100644 --- a/.github/workflows/angle-grinder.yml +++ b/.github/workflows/angle-grinder.yml @@ -4,11 +4,6 @@ on: paths: - programs/angle-grinder/install.bash - .github/workflows/Angle-Grinder.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/anki.yml b/.github/workflows/anki.yml index a0da005a..bba181e0 100644 --- a/.github/workflows/anki.yml +++ b/.github/workflows/anki.yml @@ -4,11 +4,6 @@ on: paths: - programs/anki/install.bash - .github/workflows/Anki.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/aws-nuke.yml b/.github/workflows/aws-nuke.yml index fbdcd5ab..278838cd 100644 --- a/.github/workflows/aws-nuke.yml +++ b/.github/workflows/aws-nuke.yml @@ -4,11 +4,6 @@ on: paths: - programs/aws-nuke/install.bash - .github/workflows/aws-nuke.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/aws-vault.yml b/.github/workflows/aws-vault.yml index 5a3c2a74..ba2b4aa6 100644 --- a/.github/workflows/aws-vault.yml +++ b/.github/workflows/aws-vault.yml @@ -4,11 +4,6 @@ on: paths: - programs/aws-vault/install.bash - .github/workflows/aws-vault.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/awscli.yml b/.github/workflows/awscli.yml index c99687ad..8545d385 100644 --- a/.github/workflows/awscli.yml +++ b/.github/workflows/awscli.yml @@ -4,11 +4,6 @@ on: paths: - programs/awscli/install.bash - .github/workflows/awscli.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/awsls.yml b/.github/workflows/awsls.yml index 28fb6d3b..763775c9 100644 --- a/.github/workflows/awsls.yml +++ b/.github/workflows/awsls.yml @@ -4,11 +4,6 @@ on: paths: - programs/awsls/install.bash - .github/workflows/awsls.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/awsvpnclient.yml b/.github/workflows/awsvpnclient.yml index d3287016..cb2f0e8b 100644 --- a/.github/workflows/awsvpnclient.yml +++ b/.github/workflows/awsvpnclient.yml @@ -4,11 +4,6 @@ on: paths: - programs/awsvpnclient/install.bash - .github/workflows/AWS Client VPN for Linux.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/bashmarks.yml b/.github/workflows/bashmarks.yml index 7275d87a..7b35c2da 100644 --- a/.github/workflows/bashmarks.yml +++ b/.github/workflows/bashmarks.yml @@ -4,11 +4,6 @@ on: paths: - programs/bashmarks/install.bash - .github/workflows/Bashmarks.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/borgbackup.yml b/.github/workflows/borgbackup.yml index 45978d64..dfea37af 100644 --- a/.github/workflows/borgbackup.yml +++ b/.github/workflows/borgbackup.yml @@ -4,11 +4,6 @@ on: paths: - programs/borgbackup/install.bash - .github/workflows/BorgBackup.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/clustergit.yml b/.github/workflows/clustergit.yml index b34c6f83..a09bd000 100644 --- a/.github/workflows/clustergit.yml +++ b/.github/workflows/clustergit.yml @@ -4,11 +4,6 @@ on: paths: - programs/clustergit/install.bash - .github/workflows/clustergit.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/codebuild-agent.yml b/.github/workflows/codebuild-agent.yml index d83268ea..6ec7325d 100644 --- a/.github/workflows/codebuild-agent.yml +++ b/.github/workflows/codebuild-agent.yml @@ -4,11 +4,6 @@ on: paths: - programs/codebuild-agent/install.bash - .github/workflows/AWS CodeBuild agent.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/cropgui.yml b/.github/workflows/cropgui.yml index a11562bd..39ce503e 100644 --- a/.github/workflows/cropgui.yml +++ b/.github/workflows/cropgui.yml @@ -4,11 +4,6 @@ on: paths: - programs/cropgui/install.bash - .github/workflows/Cropgui.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/cw.yml b/.github/workflows/cw.yml index cb97d134..a25573db 100644 --- a/.github/workflows/cw.yml +++ b/.github/workflows/cw.yml @@ -4,11 +4,6 @@ on: paths: - programs/cw/install.bash - .github/workflows/cw.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/diff-pdf.yml b/.github/workflows/diff-pdf.yml index a357ed05..35382115 100644 --- a/.github/workflows/diff-pdf.yml +++ b/.github/workflows/diff-pdf.yml @@ -4,11 +4,6 @@ on: paths: - programs/diff-pdf/install.bash - .github/workflows/diff-pdf.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/direnv.yml b/.github/workflows/direnv.yml index cdb065b1..88eb8e51 100644 --- a/.github/workflows/direnv.yml +++ b/.github/workflows/direnv.yml @@ -4,11 +4,6 @@ on: paths: - programs/direnv/install.bash - .github/workflows/direnv.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/dotnetsdk.yml b/.github/workflows/dotnetsdk.yml index d201b084..83e25d0a 100644 --- a/.github/workflows/dotnetsdk.yml +++ b/.github/workflows/dotnetsdk.yml @@ -4,11 +4,6 @@ on: paths: - programs/dotnetsdk/install.bash - .github/workflows/.NET SDK.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/dsutils.yml b/.github/workflows/dsutils.yml index 20bcdc0f..6effc3bb 100644 --- a/.github/workflows/dsutils.yml +++ b/.github/workflows/dsutils.yml @@ -4,11 +4,6 @@ on: paths: - programs/dsutils/install.bash - .github/workflows/dsutils.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/duckdb.yml b/.github/workflows/duckdb.yml index 7cd33d01..36677ec1 100644 --- a/.github/workflows/duckdb.yml +++ b/.github/workflows/duckdb.yml @@ -4,11 +4,6 @@ on: paths: - programs/duckdb/install.bash - .github/workflows/DuckDB.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/dvc.yml b/.github/workflows/dvc.yml index 90eab81c..9d0853f5 100644 --- a/.github/workflows/dvc.yml +++ b/.github/workflows/dvc.yml @@ -4,11 +4,6 @@ on: paths: - programs/dvc/install.bash - .github/workflows/DVC (Data Version Control).yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/envman.yml b/.github/workflows/envman.yml index 031c0835..712e1dbb 100644 --- a/.github/workflows/envman.yml +++ b/.github/workflows/envman.yml @@ -4,11 +4,6 @@ on: paths: - programs/envman/install.bash - .github/workflows/Envman.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/firefox-open-url-in-container.yml b/.github/workflows/firefox-open-url-in-container.yml index 84784a75..8c5b5846 100644 --- a/.github/workflows/firefox-open-url-in-container.yml +++ b/.github/workflows/firefox-open-url-in-container.yml @@ -4,11 +4,6 @@ on: paths: - programs/firefox-open-url-in-container/install.bash - .github/workflows/firefox-container.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/firefox.yml b/.github/workflows/firefox.yml index 555179b8..d2b0086f 100644 --- a/.github/workflows/firefox.yml +++ b/.github/workflows/firefox.yml @@ -4,11 +4,6 @@ on: paths: - programs/firefox/install.bash - .github/workflows/Firefox.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/fzf.yml b/.github/workflows/fzf.yml index 02bcb897..c4ff715f 100644 --- a/.github/workflows/fzf.yml +++ b/.github/workflows/fzf.yml @@ -4,11 +4,6 @@ on: paths: - programs/fzf/install.bash - .github/workflows/fzf.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/gcloud.yml b/.github/workflows/gcloud.yml index 2c8b2294..5b9721c7 100644 --- a/.github/workflows/gcloud.yml +++ b/.github/workflows/gcloud.yml @@ -4,11 +4,6 @@ on: paths: - programs/gcloud/install.bash - .github/workflows/gcloud CLI.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/geckodriver.yml b/.github/workflows/geckodriver.yml index e1135290..66f799a9 100644 --- a/.github/workflows/geckodriver.yml +++ b/.github/workflows/geckodriver.yml @@ -4,11 +4,6 @@ on: paths: - programs/geckodriver/install.bash - .github/workflows/geckodriver.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/gephi.yml b/.github/workflows/gephi.yml index ec2ef832..2e88b509 100644 --- a/.github/workflows/gephi.yml +++ b/.github/workflows/gephi.yml @@ -4,11 +4,6 @@ on: paths: - programs/gephi/install.bash - .github/workflows/Gephi.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/git-secrets.yml b/.github/workflows/git-secrets.yml index fba75088..b94e8367 100644 --- a/.github/workflows/git-secrets.yml +++ b/.github/workflows/git-secrets.yml @@ -4,11 +4,6 @@ on: paths: - programs/git-secrets/install.bash - .github/workflows/git-secrets.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/github-cli.yml b/.github/workflows/github-cli.yml index 60c36dd2..747e853b 100644 --- a/.github/workflows/github-cli.yml +++ b/.github/workflows/github-cli.yml @@ -4,11 +4,6 @@ on: paths: - programs/github-cli/install.bash - .github/workflows/GitHub CLI.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/gnucash3.yml b/.github/workflows/gnucash3.yml index 2d356ea2..2e70587e 100644 --- a/.github/workflows/gnucash3.yml +++ b/.github/workflows/gnucash3.yml @@ -4,11 +4,6 @@ on: paths: - programs/gnucash3/install.bash - .github/workflows/GnuCash 3.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/goenv.yml b/.github/workflows/goenv.yml index cd4a657d..c928b3be 100644 --- a/.github/workflows/goenv.yml +++ b/.github/workflows/goenv.yml @@ -4,11 +4,6 @@ on: paths: - programs/goenv/install.bash - .github/workflows/goenv.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/golang.yml b/.github/workflows/golang.yml index 5d64df40..ec7aec9d 100644 --- a/.github/workflows/golang.yml +++ b/.github/workflows/golang.yml @@ -4,11 +4,6 @@ on: paths: - programs/golang/install.bash - .github/workflows/Golang.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/granted.yml b/.github/workflows/granted.yml index 2fe3b780..2f328793 100644 --- a/.github/workflows/granted.yml +++ b/.github/workflows/granted.yml @@ -4,11 +4,6 @@ on: paths: - programs/granted/install.bash - .github/workflows/Granted.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/htmlq.yml b/.github/workflows/htmlq.yml index fc96f10e..9ea67659 100644 --- a/.github/workflows/htmlq.yml +++ b/.github/workflows/htmlq.yml @@ -4,11 +4,6 @@ on: paths: - programs/htmlq/install.bash - .github/workflows/htmlq.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/identitystorelister.yml b/.github/workflows/identitystorelister.yml index ede0c951..5f126f79 100644 --- a/.github/workflows/identitystorelister.yml +++ b/.github/workflows/identitystorelister.yml @@ -4,11 +4,6 @@ on: paths: - programs/identitystorelister/install.bash - .github/workflows/identitystorelister.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/jd.yml b/.github/workflows/jd.yml index 91bcdac2..aaf8a9ed 100644 --- a/.github/workflows/jd.yml +++ b/.github/workflows/jd.yml @@ -4,11 +4,6 @@ on: paths: - programs/jd/install.bash - .github/workflows/jd.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/jmeter.yml b/.github/workflows/jmeter.yml index a1437634..6774225f 100644 --- a/.github/workflows/jmeter.yml +++ b/.github/workflows/jmeter.yml @@ -4,11 +4,6 @@ on: paths: - programs/jmeter/install.bash - .github/workflows/JMeter.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/mark.yml b/.github/workflows/mark.yml index d903741d..32eea348 100644 --- a/.github/workflows/mark.yml +++ b/.github/workflows/mark.yml @@ -4,11 +4,6 @@ on: paths: - programs/mark/install.bash - .github/workflows/mark.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/mullvad-vpn.yml b/.github/workflows/mullvad-vpn.yml index 8b74d880..dcc91100 100644 --- a/.github/workflows/mullvad-vpn.yml +++ b/.github/workflows/mullvad-vpn.yml @@ -4,11 +4,6 @@ on: paths: - programs/mullvad-vpn/install.bash - .github/workflows/Mullvad VPN.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/nice-dcv-viewer.yml b/.github/workflows/nice-dcv-viewer.yml index 2203bef5..7fa01cc6 100644 --- a/.github/workflows/nice-dcv-viewer.yml +++ b/.github/workflows/nice-dcv-viewer.yml @@ -4,11 +4,6 @@ on: paths: - programs/nice-dcv-viewer/install.bash - .github/workflows/NICE DCV Viewer.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/openrefine.yml b/.github/workflows/openrefine.yml index 98661b7d..b256039f 100644 --- a/.github/workflows/openrefine.yml +++ b/.github/workflows/openrefine.yml @@ -4,11 +4,6 @@ on: paths: - programs/openrefine/install.bash - .github/workflows/OpenRefine.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/packer.yml b/.github/workflows/packer.yml index 9d9b88f3..9a223cf7 100644 --- a/.github/workflows/packer.yml +++ b/.github/workflows/packer.yml @@ -4,11 +4,6 @@ on: paths: - programs/packer/install.bash - .github/workflows/Packer.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/parallel.yml b/.github/workflows/parallel.yml index 2f59fd92..f998ddd7 100644 --- a/.github/workflows/parallel.yml +++ b/.github/workflows/parallel.yml @@ -4,11 +4,6 @@ on: paths: - programs/parallel/install.bash - .github/workflows/Parallel.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/pipelines.yml b/.github/workflows/pipelines.yml index f51408c5..35060807 100644 --- a/.github/workflows/pipelines.yml +++ b/.github/workflows/pipelines.yml @@ -4,11 +4,6 @@ on: paths: - programs/pipelines/install.bash - .github/workflows/Bitbucket Pipelines CLI.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/pipx.yml b/.github/workflows/pipx.yml index 665920d8..6c520a05 100644 --- a/.github/workflows/pipx.yml +++ b/.github/workflows/pipx.yml @@ -4,11 +4,6 @@ on: paths: - programs/pipx/install.bash - .github/workflows/Pipx.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/plantuml.yml b/.github/workflows/plantuml.yml index 0a7cfa70..2b6b86da 100644 --- a/.github/workflows/plantuml.yml +++ b/.github/workflows/plantuml.yml @@ -4,11 +4,6 @@ on: paths: - programs/plantuml/install.bash - .github/workflows/PlantUML.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/powershell.yml b/.github/workflows/powershell.yml index 35959f2c..ffeb29db 100644 --- a/.github/workflows/powershell.yml +++ b/.github/workflows/powershell.yml @@ -4,11 +4,6 @@ on: paths: - programs/powershell/install.bash - .github/workflows/PowerShell.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/q.yml b/.github/workflows/q.yml index 2e88fc83..405d4058 100644 --- a/.github/workflows/q.yml +++ b/.github/workflows/q.yml @@ -4,11 +4,6 @@ on: paths: - programs/q/install.bash - .github/workflows/q.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/qsv.yml b/.github/workflows/qsv.yml index 3605ae9b..be869672 100644 --- a/.github/workflows/qsv.yml +++ b/.github/workflows/qsv.yml @@ -4,11 +4,6 @@ on: paths: - programs/qsv/install.bash - .github/workflows/qsv.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/rain.yml b/.github/workflows/rain.yml index d0c9c652..4ad975f4 100644 --- a/.github/workflows/rain.yml +++ b/.github/workflows/rain.yml @@ -4,11 +4,6 @@ on: paths: - programs/rain/install.bash - .github/workflows/Rain.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/rclone.yml b/.github/workflows/rclone.yml index 34682b04..ce74d37b 100644 --- a/.github/workflows/rclone.yml +++ b/.github/workflows/rclone.yml @@ -4,11 +4,6 @@ on: paths: - programs/rclone/install.bash - .github/workflows/rclone.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/rocketchat.yml b/.github/workflows/rocketchat.yml index de5f0212..8b77b891 100644 --- a/.github/workflows/rocketchat.yml +++ b/.github/workflows/rocketchat.yml @@ -4,11 +4,6 @@ on: paths: - programs/rocketchat/install.bash - .github/workflows/Rocketchat.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/s5cmd.yml b/.github/workflows/s5cmd.yml index cc22adc8..5a5d0262 100644 --- a/.github/workflows/s5cmd.yml +++ b/.github/workflows/s5cmd.yml @@ -4,11 +4,6 @@ on: paths: - programs/s5cmd/install.bash - .github/workflows/s5cmd.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/saml2aws.yml b/.github/workflows/saml2aws.yml index 4ca2153e..b3eb7e0d 100644 --- a/.github/workflows/saml2aws.yml +++ b/.github/workflows/saml2aws.yml @@ -4,11 +4,6 @@ on: paths: - programs/saml2aws/install.bash - .github/workflows/saml2aws.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/shellcheck.yml b/.github/workflows/shellcheck.yml index e6da00ca..5052e535 100644 --- a/.github/workflows/shellcheck.yml +++ b/.github/workflows/shellcheck.yml @@ -4,11 +4,6 @@ on: paths: - programs/shellcheck/install.bash - .github/workflows/ShellCheck.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/snowsql.yml b/.github/workflows/snowsql.yml index b5781027..2f2594e7 100644 --- a/.github/workflows/snowsql.yml +++ b/.github/workflows/snowsql.yml @@ -4,11 +4,6 @@ on: paths: - programs/snowsql/install.bash - .github/workflows/SnowSQL.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/spotify.yml b/.github/workflows/spotify.yml index 48ed523b..3e0c6792 100644 --- a/.github/workflows/spotify.yml +++ b/.github/workflows/spotify.yml @@ -4,11 +4,6 @@ on: paths: - programs/spotify/install.bash - .github/workflows/Spotify.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/sqlean.yml b/.github/workflows/sqlean.yml index f1754f6d..24db3060 100644 --- a/.github/workflows/sqlean.yml +++ b/.github/workflows/sqlean.yml @@ -4,11 +4,6 @@ on: paths: - programs/sqlean/install.bash - .github/workflows/SQLean.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/terragrunt.yml b/.github/workflows/terragrunt.yml index 41c57133..398db6a2 100644 --- a/.github/workflows/terragrunt.yml +++ b/.github/workflows/terragrunt.yml @@ -4,11 +4,6 @@ on: paths: - programs/terragrunt/install.bash - .github/workflows/Terragrunt.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/test_installer.yml b/.github/workflows/test_installer.yml new file mode 100644 index 00000000..dd72dde5 --- /dev/null +++ b/.github/workflows/test_installer.yml @@ -0,0 +1,54 @@ +name: Test Installer +on: + schedule: + # To decrease the chance of delay, avoid the start of the hour. + # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule + - cron: "17 5 * * *" + workflow_dispatch: + +jobs: + list_installers: + name: List installers + runs-on: ubuntu-latest + outputs: + installers: ${{ steps.list_step.outputs.installers}} + steps: + - name: Check out code + uses: actions/checkout@v4 + + - name: List installers + id: list_step + run: | + { + printf "installers=" + find programs -mindepth 1 -maxdepth 1 -printf "%P\n" \ + | sort | jq -R | jq -s -c -M + } >> "$GITHUB_OUTPUT" + + test_installers: + name: Test installers + needs: list_installers + runs-on: ubuntu-latest + container: + image: ${{matrix.os}} + strategy: + fail-fast: false + matrix: + installer: ${{ fromJson(needs.list_installers.outputs.installers) }} + os: ["ubuntu:20.04", "ubuntu:22.04"] + steps: + - name: Check out code + uses: actions/checkout@v4 + + - name: Prepare Docker + run: ./scripts/prepare_docker.bash + env: + GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} + + - name: Install ${{matrix.installer}} + shell: su norm --command "bash --login {0}" + run: programs/${{matrix.installer}}/install.bash + + - name: Install ${{matrix.installer}} again (test idempotency) + shell: su norm --command "bash --login {0}" + run: programs/${{matrix.installer}}/install.bash diff --git a/.github/workflows/tfenv.yml b/.github/workflows/tfenv.yml index 36fe4ea4..c104dff8 100644 --- a/.github/workflows/tfenv.yml +++ b/.github/workflows/tfenv.yml @@ -4,11 +4,6 @@ on: paths: - programs/tfenv/install.bash - .github/workflows/tfenv.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/tgenv.yml b/.github/workflows/tgenv.yml index ab8be6da..b225ebae 100644 --- a/.github/workflows/tgenv.yml +++ b/.github/workflows/tgenv.yml @@ -4,11 +4,6 @@ on: paths: - programs/tgenv/install.bash - .github/workflows/tgenv.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/typora.yml b/.github/workflows/typora.yml index b5479913..2dcd4753 100644 --- a/.github/workflows/typora.yml +++ b/.github/workflows/typora.yml @@ -4,11 +4,6 @@ on: paths: - programs/typora/install.bash - .github/workflows/Typora.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/vagrant.yml b/.github/workflows/vagrant.yml index f7ecc03a..dfcea682 100644 --- a/.github/workflows/vagrant.yml +++ b/.github/workflows/vagrant.yml @@ -4,11 +4,6 @@ on: paths: - programs/vagrant/install.bash - .github/workflows/Vagrant.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/vale.yml b/.github/workflows/vale.yml index d4474f39..01327fbf 100644 --- a/.github/workflows/vale.yml +++ b/.github/workflows/vale.yml @@ -4,11 +4,6 @@ on: paths: - programs/vale/install.bash - .github/workflows/Vale.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/virtualbox.yml b/.github/workflows/virtualbox.yml index 8c26b0cb..e86994cf 100644 --- a/.github/workflows/virtualbox.yml +++ b/.github/workflows/virtualbox.yml @@ -4,11 +4,6 @@ on: paths: - programs/virtualbox/install.bash - .github/workflows/VirtualBox.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/vscode.yml b/.github/workflows/vscode.yml index 636062d7..6aef6852 100644 --- a/.github/workflows/vscode.yml +++ b/.github/workflows/vscode.yml @@ -4,11 +4,6 @@ on: paths: - programs/vscode/install.bash - .github/workflows/Visual Studio Code.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/workspacesclient.yml b/.github/workflows/workspacesclient.yml index 66478f17..e3ac2657 100644 --- a/.github/workflows/workspacesclient.yml +++ b/.github/workflows/workspacesclient.yml @@ -4,11 +4,6 @@ on: paths: - programs/workspacesclient/install.bash - .github/workflows/AWS Workspaces Client.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/yq.yml b/.github/workflows/yq.yml index e3119230..e352f897 100644 --- a/.github/workflows/yq.yml +++ b/.github/workflows/yq.yml @@ -4,11 +4,6 @@ on: paths: - programs/yq/install.bash - .github/workflows/yq.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: diff --git a/.github/workflows/zoom.yml b/.github/workflows/zoom.yml index 791055ec..83b014d5 100644 --- a/.github/workflows/zoom.yml +++ b/.github/workflows/zoom.yml @@ -4,11 +4,6 @@ on: paths: - programs/zoom/install.bash - .github/workflows/Zoom.yml - schedule: - # Not at the start of an hour or a day to decreate the chance of delay. - # See schedule documentation. - # https://docs.github.com/en/actions/using-workflows/events-that-trigger-workflows#schedule - - cron: "17 5 * * *" workflow_dispatch: