Releases: engineerd/configurator
Release v0.0.10
- Cut the release from the default main branch
Release v0.0.9
Release v0.0.8
This release adds support for .tgz
and .tar.xz
archives.
Pull artifacts in unique temp directory and automatic cleanup for self-hosted runners
This release adds support for running this action in self-hosted runners by creating a new unique temporary directory for each run, then cleaning it up.
Thanks a lot to @thomastaylor312 for his contribution!
Add new `rawVersion` variable in `urlTemplate`
This release adds the {{rawVersion}}
variable in urlTemplate
when building the download URL. This is useful when the URL contains both the version with a leading v
, and without.
For example: https://github.com/cuelang/cue/releases/download/v0.3.0-beta.5/cue_0.3.0-beta.5_Linux_x86_64.tar.gz
This tool can now be easily configured using the following template:
steps:
- uses: engineerd/[email protected]
with:
name: "cue"
fromGitHubReleases: "true"
pathInArchive: "cue"
repo: "cuelang/cue"
urlTemplate: "https://github.com/cuelang/cue/releases/download/{{version}}/cue_{{rawVersion}}_Linux_x86_64.tar.gz"
version: "^v0.3.0-beta"
token: ${{ secrets.GITHUB_TOKEN }}
Thanks to @jzelinskie for adding this feature!
Fix path deprecation in Actions environment
Update GitHub Action packages to address path deprecation Signed-off-by: Radu M <[email protected]>
Add input validation and user-friendly error messages
This version adds improved input validation for the two action modes, and user-friendly error messages.
Add support for specifying release constraints for GitHub releases
This release introduces a new execution mode for the action - providing a URL template and a semver version or range to be selected from GitHub releases. In this mode, the action iterates through the GitHub releases to find the latest version that satisfies the version (or range) constraint, constructs the download URL, and adds the tool to the path.
Example - a cross-platform action that selects the latest Helm version that satisfies the ^3.1.2 release constraint - meaning it selects any minor and patch update, or, in other words, the latest v3.x.x version:
jobs:
configurator:
runs-on: ${{ matrix.config.os }}
strategy:
matrix:
config:
- {
os: "ubuntu-latest",
urlTemplate: "https://get.helm.sh/helm-{{version}}-linux-amd64.tar.gz",
name: "h3",
pathInArchive: "linux-amd64/helm",
}
- {
os: "windows-latest",
urlTemplate: "https://get.helm.sh/helm-{{version}}-windows-amd64.zip",
name: "h3.exe",
pathInArchive: "windows-amd64/helm.exe",
}
steps:
- uses: engineerd/[email protected]
with:
name: ${{ matrix.config.name }}
pathInArchive: ${{ matrix.config.pathInArchive }}
fromGitHubReleases: "true"
repo: "helm/helm"
version: "^v3.1.2"
urlTemplate: ${{ matrix.config.urlTemplate }}
token: ${{ secrets.GITHUB_TOKEN }}
- name: Testing
run: |
h3 --help
Instead of a version or range, latest
can be used to force the action to always select the latest GitHub release (note that this can change major versions and introduce breaking changes!):
jobs:
kind:
runs-on: ubuntu-latest
steps:
- uses: engineerd/[email protected]
with:
name: "kind"
fromGitHubReleases: "true"
repo: "kubernetes-sigs/kind"
urlTemplate: "https://github.com/kubernetes-sigs/kind/releases/download/{{version}}/kind-linux-amd64"
version: "latest"
token: ${{ secrets.GITHUB_TOKEN }}
- name: Testing
run: |
kind --help
Bump @actions/toolkit packages to mitigate bug in moving file and default path
Bump @actions/* package versions Signed-off-by: Radu M <[email protected]>
Configurator v0.0.1 🎉
Easy and cross-platform action to download, extract, and add to path statically compiled tools.