add skip-packaging option (#109)

Signed-off-by: Gary Morse <gmorse81@gmail.com>

Signed-off-by: Gary Morse <gmorse81@gmail.com>
This commit is contained in:
Gary Morse
2022-11-23 13:15:26 +01:00
committed by GitHub
parent 98bccfd32b
commit 38cfeacdbb
3 changed files with 52 additions and 27 deletions
+3 -1
View File
@@ -1,4 +1,4 @@
# *chart-releaser* Action
# _chart-releaser_ Action
A GitHub action to turn a GitHub project into a self-hosted Helm chart repo, using [helm/chart-releaser](https://github.com/helm/chart-releaser) CLI tool.
@@ -19,6 +19,7 @@ maintain your charts in a different directory, you must include a `charts_dir` i
- `config`: Optional config file for chart-releaser. For more information on the config file, see the [documentation](https://github.com/helm/chart-releaser#config-file)
- `charts_dir`: The charts directory
- `charts_repo_url`: The GitHub Pages URL to the charts repo (default: `https://<owner>.github.io/<project>`)
- `skip_packaging`: This option, when populated, will skip the packaging step. This allows you to do more advanced packaging of your charts (for example, with the `helm package` command) before this action runs. This action will only handle the indexing and publishing steps.
### Environment variables
@@ -73,6 +74,7 @@ It does this during every push to `main` by checking each chart in your
#### Example using custom config
`workflow.yml`:
```yaml
- name: Run chart-releaser
uses: helm/chart-releaser-action@v1.4.1
+9 -2
View File
@@ -20,10 +20,13 @@ inputs:
description: "The GitHub Pages URL to the charts repo (default: https://<owner>.github.io/<repo>)"
required: false
install_dir:
description: 'Where to install the cr tool'
description: "Where to install the cr tool"
required: false
install_only:
description: 'Just install cr tool'
description: "Just install cr tool"
required: false
skip_packaging:
description: "skip the packaging option (do your custom packaging before running this action"
required: false
runs:
@@ -61,5 +64,9 @@ runs:
args+=(--install-only "${{ inputs.install_only }}")
fi
if [[ -n "${{ inputs.skip_packaging }}" ]]; then
args+=(--skip-packaging "${{ inputs.skip_packaging }}")
fi
"$GITHUB_ACTION_PATH/cr.sh" "${args[@]}"
shell: bash
+16
View File
@@ -33,6 +33,7 @@ Usage: $(basename "$0") <options>
-r, --repo The repo name
-n, --install-dir The Path to install the cr tool
-i, --install-only Just install the cr tool
-s, --skip-packaging Skip the packaging step (run your own packaging before using the releaser)
EOF
}
@@ -45,6 +46,7 @@ main() {
local charts_repo_url=
local install_dir=
local install_only=
local skip_packaging=
parse_command_line "$@"
@@ -54,6 +56,7 @@ main() {
repo_root=$(git rev-parse --show-toplevel)
pushd "$repo_root" > /dev/null
if ! [[ -n "$skip_packaging" ]]; then
echo 'Looking up latest tag...'
local latest_tag
latest_tag=$(lookup_latest_tag)
@@ -84,6 +87,13 @@ main() {
else
echo "Nothing to do. No chart changes detected."
fi
else
install_chart_releaser
rm -rf .cr-index
mkdir -p .cr-index
release_charts
update_index
fi
popd > /dev/null
}
@@ -167,6 +177,12 @@ parse_command_line() {
shift
fi
;;
-s|--skip-packaging)
if [[ -n "${2:-}" ]]; then
skip_packaging="$2"
shift
fi
;;
*)
break
;;