fix: lint scripts for local and CI (#961)

This commit is contained in:
James Hegedus 2021-05-27 02:19:54 +10:00 committed by GitHub
parent 24ff4582cb
commit 5dafbc8e39
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 37 additions and 21 deletions

View File

@ -17,17 +17,7 @@ jobs:
uses: asdf-vm/actions/install@v1 uses: asdf-vm/actions/install@v1
- name: Run ShellCheck - name: Run ShellCheck
run: | run: scripts/shellcheck.bash
shellcheck -s bash -x \
asdf.sh \
release/tag.sh \
bin/asdf \
bin/private/asdf-exec \
lib/utils.bash \
lib/commands/*.bash \
completions/*.bash \
test/test_helpers.bash \
test/fixtures/dummy_plugin/bin/*
shellfmt: shellfmt:
runs-on: ubuntu-latest runs-on: ubuntu-latest
@ -42,4 +32,4 @@ jobs:
run: shfmt -f . run: shfmt -f .
- name: Run shfmt - name: Run shfmt
run: shfmt -d . run: scripts/shfmt.bash

View File

@ -1,19 +1,29 @@
# Release README # Release README
If you are a user you can ignore everything in this directory. This directory contains documentation and scripts for preparing and tagging new versions of asdf and is only used by asdf maintainers. If you are a user you can ignore everything in this directory. This directory
contains documentation and scripts for preparing and tagging new versions of
asdf and is only used by asdf maintainers.
## Tagging Release Candidates ## Tagging Release Candidates
To tag release candidates To tag release candidates
1. Update the CHANGELOG. Make sure it contains an entry for the version you are tagging as well as a dev version things that come after the tag (e.g. a heading with the format `<next-version>-dev`) 1. Update the CHANGELOG. Make sure it contains an entry for the version you are
2. Run the tests and the linter - `bats test` tagging as well as a dev version things that come after the tag (e.g. a heading
3. Run the release script. The new version must be in the format `0.0.0-rc0`. For example: `release/tag.sh 0.0.0-rc0` with the format `<next-version>-dev`).
4. If the release script succeeds, push to GitHub. Make sure to use the correct remote to push to the official repository 2. Run the tests, linter and format check - `bats test`, `./scripts/shellcheck.bash` and `./scripts/shfmt.bash`.
3. Run the release script. The new version must be in the format `0.0.0-rc0`.
For example: `release/tag.sh 0.0.0-rc0`.
4. If the release script succeeds, push to GitHub. Make sure to use the correct
remote to push to the official repository
## Tagging Releases ## Tagging Releases
1. Update the CHANGELOG. Make sure it contains an entry for the version you are tagging as well as a dev version things that come after the tag (e.g. a heading with the format `<next-version>-dev`) 1. Update the CHANGELOG. Make sure it contains an entry for the version you are
2. Run the tests and the linter - `bats test` tagging as well as a dev version things that come after the tag (e.g. a heading
3. Run the release script. The new version must be in the format `0.0.0`. For example: `release/tag.sh 0.0.0` with the format `<next-version>-dev`).
4. If the release script succeeds, push to GitHub. Make sure to use the correct remote to push to the official repository 2. Run the tests, linter and format check - `bats test`, `./scripts/shellcheck.bash` and `./scripts/shfmt.bash`.
3. Run the release script. The new version must be in the format `0.0.0`. For
example: `release/tag.sh 0.0.0`.
4. If the release script succeeds, push to GitHub. Make sure to use the correct
remote to push to the official repository

13
scripts/shellcheck.bash Executable file
View File

@ -0,0 +1,13 @@
#!/usr/bin/env bash
exec shellcheck -s bash -x \
asdf.sh \
completions/*.bash \
bin/asdf \
bin/private/asdf-exec \
lib/utils.bash \
lib/commands/*.bash \
release/tag.sh \
scripts/*.bash \
test/test_helpers.bash \
test/fixtures/dummy_plugin/bin/*

3
scripts/shfmt.bash Executable file
View File

@ -0,0 +1,3 @@
#!/usr/bin/env bash
exec shfmt -d .