|
| 1 | +# install-github-release-binary |
| 2 | + |
| 3 | +**install-github-release-binary** is an opinionated GitHub Action for adding a binary from a GitHub release to your CI `$PATH`. |
| 4 | + |
| 5 | +The primary goals are, in order of priority: |
| 6 | + |
| 7 | +1. control over software supply chain security (SSCS) |
| 8 | +2. execute quickly |
| 9 | +3. avoid rate limits |
| 10 | + |
| 11 | +## Supported releases |
| 12 | + |
| 13 | +## Use |
| 14 | + |
| 15 | +Use this action in a step: |
| 16 | + |
| 17 | +```yaml |
| 18 | +- name: Install flux-capacitor |
| 19 | + uses: EricCrosson/install-github-release-binary@v1 |
| 20 | + with: |
| 21 | + repo: EricCrosson/flux-capacitor@v1 |
| 22 | +``` |
| 23 | +
|
| 24 | +## Inputs |
| 25 | +
|
| 26 | +| Input Parameter | Required | Description | |
| 27 | +| :-------------: | :------: | -------------------------------------------------------------------------------------- | |
| 28 | +| repo | true | Target repository slug and tag. [[Details](#repo)] | |
| 29 | +| token | false | GitHub token for REST requests. Defaults to `${{ github.token }}`. [[Details](#token)] | |
| 30 | + |
| 31 | +#### repo |
| 32 | + |
| 33 | +Target repository slug and tag. |
| 34 | + |
| 35 | +Repository slugs are of the format `{owner}/{repository}`. |
| 36 | +For example: `EricCrosson/flux-capacitor`. |
| 37 | + |
| 38 | +Tags are of the format `v{semantic-version}`, where `{semantic-version}` is a [semantic version number]. |
| 39 | +Examples: |
| 40 | + |
| 41 | +- `v1` |
| 42 | +- `v1.2` |
| 43 | +- `v1.2.3` |
| 44 | + |
| 45 | +All together, the expected format is `{owner}/{repository}@v{semantic-version}`. |
| 46 | +For example: `EricCrosson/flux-capacitor@v1`. |
| 47 | + |
| 48 | +[semantic version number]: https://semver.org/ |
| 49 | + |
| 50 | +#### token |
| 51 | + |
| 52 | +A GitHub token with at least `repo` scope. |
| 53 | +Defaults to the `${{ github.token }}` created automatically by GitHub Actions. |
| 54 | + |
| 55 | +T install a binary from a private GitHub repository, use a [Personal Access Token]. |
| 56 | + |
| 57 | +[personal access token]: https://docs.github.com/en/enterprise-server@3.4/authentication/keeping-your-account-and-data-secure/creating-a-personal-access-token |
0 commit comments