mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-28 18:10:26 +00:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
a6b28c31ef | ||
|
|
09cf616b64 | ||
|
|
2f6cd157e0 | ||
|
|
3660b253bf | ||
|
|
6cd53f784a | ||
|
|
eb8dccef73 | ||
|
|
442088fba1 | ||
|
|
18cb28e03d | ||
|
|
099d544df2 | ||
|
|
05558ee559 |
2
.github/.cspell/project-dictionary.txt
vendored
2
.github/.cspell/project-dictionary.txt
vendored
@@ -1,3 +1,4 @@
|
||||
almalinux
|
||||
binstall
|
||||
coreutils
|
||||
distro
|
||||
@@ -15,7 +16,6 @@ nextest
|
||||
protoc
|
||||
pwsh
|
||||
quickinstall
|
||||
rockylinux
|
||||
shellcheck
|
||||
shfmt
|
||||
syft
|
||||
|
||||
30
.github/workflows/ci.yml
vendored
30
.github/workflows/ci.yml
vendored
@@ -55,7 +55,7 @@ jobs:
|
||||
runs-on: ${{ matrix.os }}
|
||||
timeout-minutes: 60
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
|
||||
@@ -102,10 +102,10 @@ jobs:
|
||||
- debian:11-slim # glibc 2.31
|
||||
- debian:12-slim # glibc 2.36
|
||||
- fedora:latest # glibc 2.37 (as of fedora 38)
|
||||
- rockylinux:8 # glibc 2.28
|
||||
- rockylinux:8-minimal # glibc 2.28
|
||||
- rockylinux:9 # glibc 2.34
|
||||
- rockylinux:9-minimal # glibc 2.34
|
||||
- almalinux:8 # glibc 2.28
|
||||
- almalinux:8-minimal # glibc 2.28
|
||||
- almalinux:9 # glibc 2.34
|
||||
- almalinux:9-minimal # glibc 2.34
|
||||
- centos:7 # glibc 2.17
|
||||
- alpine:latest # musl 1.2.4 (as of alpine 3.18)
|
||||
runs-on: ubuntu-latest
|
||||
@@ -118,29 +118,23 @@ jobs:
|
||||
apt-get -o Acquire::Retries=10 -qq update
|
||||
apt-get -o Acquire::Retries=10 -o Dpkg::Use-Pty=0 install -y --no-install-recommends cargo
|
||||
if: startsWith(matrix.container, 'ubuntu') || startsWith(matrix.container, 'debian')
|
||||
- name: Install requirements (fedora/rockylinux)
|
||||
- name: Install requirements (fedora/almalinux/centos)
|
||||
run: |
|
||||
set -euxo pipefail
|
||||
dnf=dnf
|
||||
if ! type -P dnf &>/dev/null; then
|
||||
dnf=microdnf
|
||||
if ! type -P dnf &>/dev/null && type -P microdnf &>/dev/null; then
|
||||
# tar and gzip are required for actions/checkout on *-minimal images
|
||||
microdnf install -y tar gzip
|
||||
fi
|
||||
# tar and gzip are required for actions/checkout on rockylinux:*-minimal
|
||||
$dnf install -y cargo tar gzip
|
||||
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'rockylinux')
|
||||
- name: Install requirements (centos)
|
||||
run: |
|
||||
set -euxo pipefail
|
||||
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable
|
||||
echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}"
|
||||
if: startsWith(matrix.container, 'centos')
|
||||
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'almalinux') || startsWith(matrix.container, 'centos')
|
||||
- name: Install requirements (alpine)
|
||||
run: |
|
||||
set -eux
|
||||
apk --no-cache add bash cargo
|
||||
shell: sh
|
||||
if: startsWith(matrix.container, 'alpine')
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v3 # TODO: actions/checkout@v3 requires glibc 2.28+
|
||||
with:
|
||||
persist-credentials: false
|
||||
# cross attempts to install rust-src when Cargo.toml is available even if `cross --version`
|
||||
@@ -159,7 +153,7 @@ jobs:
|
||||
contents: write
|
||||
pull-requests: write
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- name: Install Rust
|
||||
|
||||
2
.github/workflows/release.yml
vendored
2
.github/workflows/release.yml
vendored
@@ -20,7 +20,7 @@ jobs:
|
||||
permissions:
|
||||
contents: write
|
||||
steps:
|
||||
- uses: actions/checkout@v3
|
||||
- uses: actions/checkout@v4
|
||||
with:
|
||||
persist-credentials: false
|
||||
- uses: taiki-e/create-gh-release-action@v1
|
||||
|
||||
12
CHANGELOG.md
12
CHANGELOG.md
@@ -10,6 +10,14 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
||||
|
||||
## [Unreleased]
|
||||
|
||||
## [2.18.2] - 2023-09-08
|
||||
|
||||
- Update `protoc@latest` to 3.24.3.
|
||||
|
||||
## [2.18.1] - 2023-09-05
|
||||
|
||||
- Diagnostic improvements.
|
||||
|
||||
## [2.18.0] - 2023-09-04
|
||||
|
||||
- Support `xbuild`. ([#212](https://github.com/taiki-e/install-action/pull/212), thanks @notgull)
|
||||
@@ -1165,7 +1173,9 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.18.0...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.18.2...HEAD
|
||||
[2.18.2]: https://github.com/taiki-e/install-action/compare/v2.18.1...v2.18.2
|
||||
[2.18.1]: https://github.com/taiki-e/install-action/compare/v2.18.0...v2.18.1
|
||||
[2.18.0]: https://github.com/taiki-e/install-action/compare/v2.17.8...v2.18.0
|
||||
[2.17.8]: https://github.com/taiki-e/install-action/compare/v2.17.7...v2.17.8
|
||||
[2.17.7]: https://github.com/taiki-e/install-action/compare/v2.17.6...v2.17.7
|
||||
|
||||
@@ -82,8 +82,8 @@ https://spdx.org/licenses
|
||||
| Name | Where binaries will be installed | Where will it be installed from | Supported platform | License |
|
||||
| ---- | -------------------------------- | ------------------------------- | ------------------ | ------- |
|
||||
| [**cargo-binstall**][cargo-binstall] | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/cargo-bins/cargo-binstall/releases) | Linux, macOS, Windows | [GPL-3.0](https://github.com/cargo-bins/cargo-binstall/blob/HEAD/crates/bin/LICENSE) |
|
||||
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-careful**](https://github.com/RalfJung/cargo-careful) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/RalfJung/cargo-careful/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/RalfJung/cargo-careful/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-deny**](https://github.com/EmbarkStudios/cargo-deny) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/EmbarkStudios/cargo-deny/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/EmbarkStudios/cargo-deny/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-dinghy**](https://github.com/sonos/dinghy) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/sonos/dinghy/releases) | Linux, macOS | [Apache-2.0](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/sonos/dinghy/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-hack**](https://github.com/taiki-e/cargo-hack) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-hack/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-hack/blob/HEAD/LICENSE-MIT) |
|
||||
| [**cargo-llvm-cov**](https://github.com/taiki-e/cargo-llvm-cov) | `$CARGO_HOME/bin` | [GitHub Releases](https://github.com/taiki-e/cargo-llvm-cov/releases) | Linux, macOS, Windows | [Apache-2.0](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-APACHE) OR [MIT](https://github.com/taiki-e/cargo-llvm-cov/blob/HEAD/LICENSE-MIT) |
|
||||
@@ -132,7 +132,7 @@ See the linked documentation for information on security when installed using [s
|
||||
|
||||
## Compatibility
|
||||
|
||||
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Rocky).
|
||||
This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) and containers (Ubuntu, Debian, Alpine, Fedora, CentOS, Alma).
|
||||
To use this action in self-hosted runners or in containers, at least the following tools are required:
|
||||
|
||||
- bash
|
||||
|
||||
41
main.sh
41
main.sh
@@ -576,35 +576,32 @@ for tool in "${tools[@]}"; do
|
||||
;;
|
||||
esac
|
||||
|
||||
info "${tool} installed at $(type -P "${tool}${exe}")"
|
||||
# At least cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
|
||||
case "${tool}" in
|
||||
cargo-careful) ;; # cargo-careful 0.3.4 does not support neither --version nor --help option.
|
||||
xbuild) tool_bin="x" ;;
|
||||
*) tool_bin="${tool}" ;;
|
||||
esac
|
||||
info "${tool} installed at $(type -P "${tool_bin}${exe}")"
|
||||
# cargo-udeps 0.1.30 and wasm-pack 0.12.0 do not support --version option.
|
||||
case "${tool}" in
|
||||
cargo-careful | cargo-machete) ;; # cargo-careful 0.3.4 and cargo-machete 0.5.0 do not support neither --version nor --help option.
|
||||
cargo-*)
|
||||
if type -P cargo &>/dev/null; then
|
||||
case "${tool}" in
|
||||
cargo-valgrind) rx cargo "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
|
||||
*)
|
||||
if ! rx cargo "${tool#cargo-}" --version; then
|
||||
rx cargo "${tool#cargo-}" --help
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
_cargo=cargo
|
||||
else
|
||||
case "${tool}" in
|
||||
cargo-valgrind) rx "${tool}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
|
||||
*)
|
||||
if ! rx "${tool}" "${tool#cargo-}" --version; then
|
||||
rx "${tool}" "${tool#cargo-}" --help
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
_cargo="${tool}"
|
||||
fi
|
||||
case "${tool}" in
|
||||
cargo-valgrind) rx "${_cargo}" "${tool#cargo-}" --help ;; # cargo-valgrind 2.1.0's --version option just calls cargo's --version option
|
||||
*)
|
||||
if ! rx "${_cargo}" "${tool#cargo-}" --version; then
|
||||
rx "${_cargo}" "${tool#cargo-}" --help
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
;;
|
||||
xbuild) rx "x" --version ;;
|
||||
*)
|
||||
if ! rx "${tool}" --version; then
|
||||
rx "${tool}" --help
|
||||
if ! rx "${tool_bin}" --version; then
|
||||
rx "${tool_bin}" --help
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
|
||||
28
manifests/protoc.json
generated
28
manifests/protoc.json
generated
@@ -2,13 +2,35 @@
|
||||
"rust_crate": null,
|
||||
"template": null,
|
||||
"latest": {
|
||||
"version": "3.24.2"
|
||||
"version": "3.24.3"
|
||||
},
|
||||
"3": {
|
||||
"version": "3.24.2"
|
||||
"version": "3.24.3"
|
||||
},
|
||||
"3.24": {
|
||||
"version": "3.24.2"
|
||||
"version": "3.24.3"
|
||||
},
|
||||
"3.24.3": {
|
||||
"x86_64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-x86_64.zip",
|
||||
"checksum": "fc793561283d9ea6813fb757ae54f1afea6770afcd930904bdf3e590910420aa"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-x86_64.zip",
|
||||
"checksum": "13b45cdcde9b2101e982de897d5490cfd81dfa181605749c23982379ba0e3288"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-win64.zip",
|
||||
"checksum": "c8f8c87e2eb6ba1e45f1f0b7b6c17f129309fff421c04290e272de1f7defd8f1"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-linux-aarch_64.zip",
|
||||
"checksum": "77a5a41f3e9712af6a35de13143b9b2b77f075aa1ab18a63cca4483b30f6e3cd"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"url": "https://github.com/protocolbuffers/protobuf/releases/download/v24.3/protoc-24.3-osx-aarch_64.zip",
|
||||
"checksum": "cca53adb73a6686dd60bb3b0da33961e6b9dab1f833c851b5e1bb7b5df02b36f"
|
||||
}
|
||||
},
|
||||
"3.24.2": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
Reference in New Issue
Block a user