From eed2e57ff4694e73b4611ff4b072c7920c64b605 Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Fri, 6 Feb 2026 15:34:11 -0500 Subject: [PATCH 1/5] Use Github-Actions action lint config if one is not present in the repo --- scripts/actionlint.sh | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/scripts/actionlint.sh b/scripts/actionlint.sh index e5229da..7c2446b 100755 --- a/scripts/actionlint.sh +++ b/scripts/actionlint.sh @@ -119,7 +119,14 @@ fi info "Linting workflows..." echo cd "$REPO_ROOT" || exit 1 -if ! "$ACTIONLINT_PATH" -color; then + +# If a repo has it's own action lint config, use that. Otherwise, use the one in this repo. +$CONFIG="" +if [[ ! -f "$REPO_ROOT/.github/actionlint.yml" ]] && [[ ! -f "$REPO_ROOT/.github/actionlint.yaml" ]]; then + CONFIG="-config-file $SCRIPT_DIR/../.github/actionlint.yml" +fi + +if ! "$ACTIONLINT_PATH" -color "$CONFIG"; then error "Workflows did not pass actionlint :(" exit 1 fi From 34adfc8897fbdd0432b4dbf7976126db21a1dc68 Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Fri, 6 Feb 2026 15:47:33 -0500 Subject: [PATCH 2/5] fix syntax issues --- scripts/actionlint.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/scripts/actionlint.sh b/scripts/actionlint.sh index 7c2446b..08c3886 100755 --- a/scripts/actionlint.sh +++ b/scripts/actionlint.sh @@ -2,7 +2,7 @@ ################################################################# # Lint workflows with https://github.com/rhysd/actionlint # ################################################################# - +set -x # Verify that shellcheck is installed (preinstalled on GitHub Actions runners) if ! command -v shellcheck &>/dev/null; then error "This script requires shellcheck. Please install it and try again" @@ -121,12 +121,13 @@ echo cd "$REPO_ROOT" || exit 1 # If a repo has it's own action lint config, use that. Otherwise, use the one in this repo. -$CONFIG="" +CONFIG="" if [[ ! -f "$REPO_ROOT/.github/actionlint.yml" ]] && [[ ! -f "$REPO_ROOT/.github/actionlint.yaml" ]]; then - CONFIG="-config-file $SCRIPT_DIR/../.github/actionlint.yml" + CONFIG=" -config-file $(readlink -f $SCRIPT_DIR/../.github/actionlint.yml)" + info "Using default Github-Actions repo actionlint.yml" >&2 fi -if ! "$ACTIONLINT_PATH" -color "$CONFIG"; then +if ! "$ACTIONLINT_PATH" ${CONFIG} -color; then error "Workflows did not pass actionlint :(" exit 1 fi From 0db03a611d7bdbd41086b43d6d839cbcf5159de6 Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Fri, 6 Feb 2026 15:50:35 -0500 Subject: [PATCH 3/5] Remove debug flag --- scripts/actionlint.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/scripts/actionlint.sh b/scripts/actionlint.sh index 08c3886..406ae63 100755 --- a/scripts/actionlint.sh +++ b/scripts/actionlint.sh @@ -2,7 +2,7 @@ ################################################################# # Lint workflows with https://github.com/rhysd/actionlint # ################################################################# -set -x + # Verify that shellcheck is installed (preinstalled on GitHub Actions runners) if ! command -v shellcheck &>/dev/null; then error "This script requires shellcheck. Please install it and try again" From 81c90060cf310b019d4e3f348da2e7f8f6afbfcf Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Fri, 6 Feb 2026 15:55:50 -0500 Subject: [PATCH 4/5] fix linter --- scripts/actionlint.sh | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/scripts/actionlint.sh b/scripts/actionlint.sh index 406ae63..ca62076 100755 --- a/scripts/actionlint.sh +++ b/scripts/actionlint.sh @@ -123,10 +123,13 @@ cd "$REPO_ROOT" || exit 1 # If a repo has it's own action lint config, use that. Otherwise, use the one in this repo. CONFIG="" if [[ ! -f "$REPO_ROOT/.github/actionlint.yml" ]] && [[ ! -f "$REPO_ROOT/.github/actionlint.yaml" ]]; then - CONFIG=" -config-file $(readlink -f $SCRIPT_DIR/../.github/actionlint.yml)" + CONFIG=" -config-file $(readlink -f "$SCRIPT_DIR"/../.github/actionlint.yml)" info "Using default Github-Actions repo actionlint.yml" >&2 fi +# We can't quote CONFIG here because we need the splitting on spaces for it to be recognized +# by actionlint as a flag +#shellcheck disable=SC2086 if ! "$ACTIONLINT_PATH" ${CONFIG} -color; then error "Workflows did not pass actionlint :(" exit 1 From 98c2412736d917bd262853c79f4dbcf2223e7d7c Mon Sep 17 00:00:00 2001 From: Cole Eason Date: Fri, 6 Feb 2026 16:01:41 -0500 Subject: [PATCH 5/5] Migrate this repo to blacksmith runners --- .github/workflows/cla.yml | 2 +- .github/workflows/npmPublish.yml | 2 +- .github/workflows/shellCheck.yml | 2 +- .github/workflows/validateActions.yml | 6 +++--- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/cla.yml b/.github/workflows/cla.yml index 34916b0..f70d57a 100644 --- a/.github/workflows/cla.yml +++ b/.github/workflows/cla.yml @@ -9,7 +9,7 @@ on: jobs: CLA: - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 # This job should only run for pull request comments or pull request target events (not issue comments) if: github.event.issue.pull_request || github.event_name == 'pull_request_target' steps: diff --git a/.github/workflows/npmPublish.yml b/.github/workflows/npmPublish.yml index dccde2a..22aaf18 100644 --- a/.github/workflows/npmPublish.yml +++ b/.github/workflows/npmPublish.yml @@ -21,7 +21,7 @@ on: jobs: publish: - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 permissions: contents: read id-token: write # Required for OIDC: https://docs.npmjs.com/trusted-publishers diff --git a/.github/workflows/shellCheck.yml b/.github/workflows/shellCheck.yml index 8c736b4..6dc858b 100644 --- a/.github/workflows/shellCheck.yml +++ b/.github/workflows/shellCheck.yml @@ -9,7 +9,7 @@ on: jobs: lint: if: ${{ github.actor != 'OSBotify' || github.event_name == 'workflow_call' }} - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 steps: - name: Checkout # 4.2.2 diff --git a/.github/workflows/validateActions.yml b/.github/workflows/validateActions.yml index f3684b2..f99587a 100644 --- a/.github/workflows/validateActions.yml +++ b/.github/workflows/validateActions.yml @@ -9,7 +9,7 @@ on: pull_request jobs: validateSchemas: - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 if: ${{ !contains(github.actor, '[bot]') && github.actor != 'MelvinBot' && github.actor != 'botify' && github.actor != 'OSBotify' }} steps: - name: Checkout repos @@ -34,7 +34,7 @@ jobs: run: echo "::error::The validateWorkflowSchemas check failed! To run it locally, go to the root of ${{ steps.repo.outputs.NAME }} and run /scripts/validateWorkflowSchemas.sh" actionlint: - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 if: ${{ !contains(github.actor, '[bot]') && github.actor != 'MelvinBot' && github.actor != 'botify' && github.actor != 'OSBotify' }} steps: - name: Checkout repos @@ -51,7 +51,7 @@ jobs: run: echo "::error::The actionlint check failed! To run it locally, go to the root of ${{ steps.repo.outputs.NAME }} and run /scripts/actionlint.sh" validateImmutableActionRefs: - runs-on: ubuntu-latest + runs-on: blacksmith-2vcpu-ubuntu-2404 if: ${{ !contains(github.actor, '[bot]') && github.actor != 'MelvinBot' && github.actor != 'botify' && github.actor != 'OSBotify' }} steps: - name: Checkout repos