mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-22 15:30:31 +00:00
Compare commits
10 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
4e38715ddc | ||
|
|
2d4372270d | ||
|
|
e5240ce0c5 | ||
|
|
cd2b50cd20 | ||
|
|
08b0c77d33 | ||
|
|
51b8ba088c | ||
|
|
c46ebac92e | ||
|
|
6058afcbf2 | ||
|
|
60784cb1f4 | ||
|
|
ccdec58fd9 |
@@ -44,7 +44,7 @@
|
|||||||
"languageSettings": [
|
"languageSettings": [
|
||||||
{
|
{
|
||||||
"languageId": ["*"],
|
"languageId": ["*"],
|
||||||
"dictionaries": ["rust"]
|
"dictionaries": ["bash", "rust"]
|
||||||
}
|
}
|
||||||
],
|
],
|
||||||
"ignorePaths": []
|
"ignorePaths": []
|
||||||
|
|||||||
1
.github/.cspell/project-dictionary.txt
vendored
1
.github/.cspell/project-dictionary.txt
vendored
@@ -22,7 +22,6 @@ pwsh
|
|||||||
quickinstall
|
quickinstall
|
||||||
rdme
|
rdme
|
||||||
sccache
|
sccache
|
||||||
shfmt
|
|
||||||
syft
|
syft
|
||||||
udeps
|
udeps
|
||||||
wasmtime
|
wasmtime
|
||||||
|
|||||||
40
.github/workflows/ci.yml
vendored
40
.github/workflows/ci.yml
vendored
@@ -66,10 +66,10 @@ jobs:
|
|||||||
tool: ${{ steps.tool-list.outputs.tool }}
|
tool: ${{ steps.tool-list.outputs.tool }}
|
||||||
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell
|
# https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsshell
|
||||||
- name: Test bash
|
- name: Test bash
|
||||||
run: just --version; shfmt --version; protoc --version
|
run: just --version && shfmt --version && protoc --version
|
||||||
shell: bash
|
shell: bash
|
||||||
- name: Test sh
|
- name: Test sh
|
||||||
run: just --version; shfmt --version; protoc --version
|
run: just --version && shfmt --version && protoc --version
|
||||||
shell: sh
|
shell: sh
|
||||||
if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
|
if: startsWith(matrix.os, 'ubuntu') || startsWith(matrix.os, 'macos')
|
||||||
- name: Test pwsh
|
- name: Test pwsh
|
||||||
@@ -118,29 +118,8 @@ jobs:
|
|||||||
timeout-minutes: 60
|
timeout-minutes: 60
|
||||||
container: ${{ matrix.container }}
|
container: ${{ matrix.container }}
|
||||||
steps:
|
steps:
|
||||||
- name: Install requirements (ubuntu/debian)
|
|
||||||
run: |
|
|
||||||
set -eEuxo pipefail
|
|
||||||
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/almalinux/centos)
|
|
||||||
run: |
|
|
||||||
set -eEuxo pipefail
|
|
||||||
curl --proto '=https' --tlsv1.2 -fsSL --retry 10 https://sh.rustup.rs | sh -s -- -y --profile minimal --default-toolchain stable --no-modify-path
|
|
||||||
echo "$HOME/.cargo/bin" >>"${GITHUB_PATH}"
|
|
||||||
if: startsWith(matrix.container, 'fedora') || startsWith(matrix.container, 'almalinux') || startsWith(matrix.container, 'centos')
|
|
||||||
- name: Install requirements (opensuse)
|
|
||||||
run: |
|
|
||||||
set -eEuxo pipefail
|
|
||||||
zypper install -y rustup
|
|
||||||
rustup toolchain add stable --profile minimal
|
|
||||||
if: startsWith(matrix.container, 'opensuse')
|
|
||||||
- name: Install requirements (archlinux)
|
|
||||||
run: pacman -Sy --noconfirm rust
|
|
||||||
if: startsWith(matrix.container, 'archlinux')
|
|
||||||
- name: Install requirements (alpine)
|
- name: Install requirements (alpine)
|
||||||
run: apk --no-cache add bash cargo
|
run: apk --no-cache add bash
|
||||||
shell: sh
|
shell: sh
|
||||||
if: startsWith(matrix.container, 'alpine')
|
if: startsWith(matrix.container, 'alpine')
|
||||||
- uses: taiki-e/checkout-action@v1
|
- uses: taiki-e/checkout-action@v1
|
||||||
@@ -153,19 +132,6 @@ jobs:
|
|||||||
with:
|
with:
|
||||||
tool: ${{ steps.tool-list.outputs.tool }}
|
tool: ${{ steps.tool-list.outputs.tool }}
|
||||||
|
|
||||||
test-no-cargo:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
timeout-minutes: 60
|
|
||||||
container: ubuntu
|
|
||||||
steps:
|
|
||||||
- uses: taiki-e/checkout-action@v1
|
|
||||||
- name: Generate tool list
|
|
||||||
id: tool-list
|
|
||||||
run: tools/ci/tool-list.sh >>"${GITHUB_OUTPUT}"
|
|
||||||
- uses: ./
|
|
||||||
with:
|
|
||||||
tool: ${{ steps.tool-list.outputs.tool }}
|
|
||||||
|
|
||||||
manifest:
|
manifest:
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
timeout-minutes: 60
|
timeout-minutes: 60
|
||||||
|
|||||||
22
CHANGELOG.md
22
CHANGELOG.md
@@ -10,6 +10,22 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
|
|||||||
|
|
||||||
## [Unreleased]
|
## [Unreleased]
|
||||||
|
|
||||||
|
## [2.34.0] - 2024-06-01
|
||||||
|
|
||||||
|
- Support cargo-binstall fallback without cargo.
|
||||||
|
|
||||||
|
## [2.33.36] - 2024-06-01
|
||||||
|
|
||||||
|
- Update `cargo-llvm-cov@latest` to 0.6.10.
|
||||||
|
|
||||||
|
## [2.33.35] - 2024-05-28
|
||||||
|
|
||||||
|
- Update `syft@latest` to 1.5.0.
|
||||||
|
|
||||||
|
## [2.33.34] - 2024-05-26
|
||||||
|
|
||||||
|
- Update `dprint@latest` to 0.46.1.
|
||||||
|
|
||||||
## [2.33.33] - 2024-05-25
|
## [2.33.33] - 2024-05-25
|
||||||
|
|
||||||
- Update `dprint@latest` to 0.46.0.
|
- Update `dprint@latest` to 0.46.0.
|
||||||
@@ -2215,7 +2231,11 @@ Note: This release is considered a breaking change because installing on version
|
|||||||
|
|
||||||
Initial release
|
Initial release
|
||||||
|
|
||||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.33.33...HEAD
|
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.34.0...HEAD
|
||||||
|
[2.34.0]: https://github.com/taiki-e/install-action/compare/v2.33.36...v2.34.0
|
||||||
|
[2.33.36]: https://github.com/taiki-e/install-action/compare/v2.33.35...v2.33.36
|
||||||
|
[2.33.35]: https://github.com/taiki-e/install-action/compare/v2.33.34...v2.33.35
|
||||||
|
[2.33.34]: https://github.com/taiki-e/install-action/compare/v2.33.33...v2.33.34
|
||||||
[2.33.33]: https://github.com/taiki-e/install-action/compare/v2.33.32...v2.33.33
|
[2.33.33]: https://github.com/taiki-e/install-action/compare/v2.33.32...v2.33.33
|
||||||
[2.33.32]: https://github.com/taiki-e/install-action/compare/v2.33.31...v2.33.32
|
[2.33.32]: https://github.com/taiki-e/install-action/compare/v2.33.31...v2.33.32
|
||||||
[2.33.31]: https://github.com/taiki-e/install-action/compare/v2.33.30...v2.33.31
|
[2.33.31]: https://github.com/taiki-e/install-action/compare/v2.33.30...v2.33.31
|
||||||
|
|||||||
@@ -10,6 +10,8 @@ improper_ctypes_definitions = "warn"
|
|||||||
non_ascii_idents = "warn"
|
non_ascii_idents = "warn"
|
||||||
rust_2018_idioms = "warn"
|
rust_2018_idioms = "warn"
|
||||||
single_use_lifetimes = "warn"
|
single_use_lifetimes = "warn"
|
||||||
|
unexpected_cfgs = { level = "warn", check-cfg = [
|
||||||
|
] }
|
||||||
unreachable_pub = "warn"
|
unreachable_pub = "warn"
|
||||||
unsafe_op_in_unsafe_fn = "warn"
|
unsafe_op_in_unsafe_fn = "warn"
|
||||||
[workspace.lints.clippy]
|
[workspace.lints.clippy]
|
||||||
@@ -27,12 +29,13 @@ borrow_as_ptr = { level = "allow", priority = 1 } # https://github.com/rust-lang
|
|||||||
declare_interior_mutable_const = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/7665
|
declare_interior_mutable_const = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/7665
|
||||||
doc_markdown = { level = "allow", priority = 1 }
|
doc_markdown = { level = "allow", priority = 1 }
|
||||||
float_cmp = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/7725
|
float_cmp = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/7725
|
||||||
lint_groups_priority = { level = "allow", priority = 1 } # clippy bug: https://github.com/rust-lang/rust-clippy/issues/12270
|
incompatible_msrv = { level = "allow", priority = 1 } # buggy: doesn't consider cfg, https://github.com/rust-lang/rust-clippy/issues/12280, https://github.com/rust-lang/rust-clippy/issues/12257#issuecomment-2093667187
|
||||||
|
lint_groups_priority = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/12270
|
||||||
manual_assert = { level = "allow", priority = 1 }
|
manual_assert = { level = "allow", priority = 1 }
|
||||||
manual_range_contains = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/6455#issuecomment-1225966395
|
manual_range_contains = { level = "allow", priority = 1 } # https://github.com/rust-lang/rust-clippy/issues/6455#issuecomment-1225966395
|
||||||
missing_errors_doc = { level = "allow", priority = 1 }
|
missing_errors_doc = { level = "allow", priority = 1 }
|
||||||
module_name_repetitions = { level = "allow", priority = 1 }
|
module_name_repetitions = { level = "allow", priority = 1 }
|
||||||
nonminimal_bool = { level = "allow", priority = 1 } # buggy https://github.com/rust-lang/rust-clippy/issues?q=is%3Aissue+is%3Aopen+nonminimal_bool
|
nonminimal_bool = { level = "allow", priority = 1 } # buggy: https://github.com/rust-lang/rust-clippy/issues?q=is%3Aissue+is%3Aopen+nonminimal_bool
|
||||||
similar_names = { level = "allow", priority = 1 }
|
similar_names = { level = "allow", priority = 1 }
|
||||||
single_match = { level = "allow", priority = 1 }
|
single_match = { level = "allow", priority = 1 }
|
||||||
single_match_else = { level = "allow", priority = 1 }
|
single_match_else = { level = "allow", priority = 1 }
|
||||||
|
|||||||
@@ -152,7 +152,6 @@ This action has been tested for GitHub-hosted runners (Ubuntu, macOS, Windows) a
|
|||||||
To use this action in self-hosted runners or in containers, at least the following tools are required:
|
To use this action in self-hosted runners or in containers, at least the following tools are required:
|
||||||
|
|
||||||
- bash
|
- bash
|
||||||
- cargo (if you use cargo-binstall fallback)
|
|
||||||
|
|
||||||
## Related Projects
|
## Related Projects
|
||||||
|
|
||||||
|
|||||||
8
main.sh
8
main.sh
@@ -748,5 +748,11 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
|
|||||||
# By default, cargo-binstall enforce downloads over secure transports only.
|
# By default, cargo-binstall enforce downloads over secure transports only.
|
||||||
# As a result, http will be disabled, and it will also set
|
# As a result, http will be disabled, and it will also set
|
||||||
# min tls version to be 1.2
|
# min tls version to be 1.2
|
||||||
cargo binstall --force --no-confirm --locked "${unsupported_tools[@]}"
|
cargo-binstall binstall --force --no-confirm --locked "${unsupported_tools[@]}"
|
||||||
|
if ! type -P cargo >/dev/null; then
|
||||||
|
_bin_dir=$(canonicalize_windows_path "${HOME}/.cargo/bin")
|
||||||
|
# TODO: avoid this when already added
|
||||||
|
info "adding '${_bin_dir}' to PATH"
|
||||||
|
echo "${_bin_dir}" >>"${GITHUB_PATH}"
|
||||||
|
fi
|
||||||
fi
|
fi
|
||||||
|
|||||||
21
manifests/cargo-llvm-cov.json
generated
21
manifests/cargo-llvm-cov.json
generated
@@ -18,10 +18,27 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.6.9"
|
"version": "0.6.10"
|
||||||
},
|
},
|
||||||
"0.6": {
|
"0.6": {
|
||||||
"version": "0.6.9"
|
"version": "0.6.10"
|
||||||
|
},
|
||||||
|
"0.6.10": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"checksum": "2350d7d6586c8b1ac828ad5578225fafb6a43fa9c35fe835c28a5ed63499df60"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"checksum": "6355b4536798ba0cea459729cc531f7bbf252d51c86b02683c0b4a4033d8cb96"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"checksum": "3090e71ba2c0e16e593d338f4ed696f3829544f53dea63bdd966398f4379259c"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"checksum": "7921682e7bd925b69bbecaf9bf42f99a6404ef60049b1a9f87fe97dc697265f4"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"checksum": "46fe1d529755ca1a39dc7995374eef4482a20f0f632dd113430641c06fc4b466"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.6.9": {
|
"0.6.9": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
21
manifests/dprint.json
generated
21
manifests/dprint.json
generated
@@ -24,10 +24,27 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "0.46.0"
|
"version": "0.46.1"
|
||||||
},
|
},
|
||||||
"0.46": {
|
"0.46": {
|
||||||
"version": "0.46.0"
|
"version": "0.46.1"
|
||||||
|
},
|
||||||
|
"0.46.1": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"checksum": "4a7d6fa6b920ab150f580965556086cdd7992e07078e627ab9a9d1c3bd30ba85"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"checksum": "cdea84bce1d84c26e8eced2265d246b79a849ec2e7d1377d98dd7bdb21c7ce83"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"checksum": "74e5ab38c744d5903862c2b5174d0fef9759b5506da775e1fb93b6a68c63101d"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"checksum": "e2b6d87167d21f1f01571790e79526ef9caff3b8b75f5cac348c4f06f60a8c16"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"checksum": "f3ff4faef83d14c3b4ae262e79a40d4e0fc3fa1903d0b6e9b82f0b25b00e9499"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"0.46.0": {
|
"0.46.0": {
|
||||||
"x86_64_linux_musl": {
|
"x86_64_linux_musl": {
|
||||||
|
|||||||
24
manifests/syft.json
generated
24
manifests/syft.json
generated
@@ -23,10 +23,30 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
"latest": {
|
"latest": {
|
||||||
"version": "1.4.1"
|
"version": "1.5.0"
|
||||||
},
|
},
|
||||||
"1": {
|
"1": {
|
||||||
"version": "1.4.1"
|
"version": "1.5.0"
|
||||||
|
},
|
||||||
|
"1.5": {
|
||||||
|
"version": "1.5.0"
|
||||||
|
},
|
||||||
|
"1.5.0": {
|
||||||
|
"x86_64_linux_musl": {
|
||||||
|
"checksum": "3d10023d46dfaf0fe75288df207b478b43597f7d2fff553f58430817166bd478"
|
||||||
|
},
|
||||||
|
"x86_64_macos": {
|
||||||
|
"checksum": "605322e3e7043a4f2f3d6e37f75a71389d38f6f290bff2e54bb2aaebbbf4829b"
|
||||||
|
},
|
||||||
|
"x86_64_windows": {
|
||||||
|
"checksum": "5079c6a88e130f8677d0701cb2689f9eae2088022ecf5fa2b9f341b96d9983d2"
|
||||||
|
},
|
||||||
|
"aarch64_linux_musl": {
|
||||||
|
"checksum": "ee2b1289a1e4b0de9409c3a78867949ca42788a5f50072b8a6e6e04e6a269f9c"
|
||||||
|
},
|
||||||
|
"aarch64_macos": {
|
||||||
|
"checksum": "fe02d072e7ec9a8eb4ac866ba973396a8beae79829ee870acaadd4d862e5e65a"
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"1.4": {
|
"1.4": {
|
||||||
"version": "1.4.1"
|
"version": "1.4.1"
|
||||||
|
|||||||
@@ -128,17 +128,14 @@ case "${host_os}" in
|
|||||||
fi
|
fi
|
||||||
;;
|
;;
|
||||||
esac
|
esac
|
||||||
# cargo-binstall requires cargo
|
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
|
||||||
if type -P cargo &>/dev/null; then
|
case "${version}" in
|
||||||
# cargo-watch/watchexec-cli is supported by cargo-binstall (through quickinstall)
|
|
||||||
case "${version}" in
|
|
||||||
latest) tools+=(cargo-watch watchexec-cli nextest) ;;
|
latest) tools+=(cargo-watch watchexec-cli nextest) ;;
|
||||||
major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5 nextest@0.9.57) ;;
|
major.minor.patch) tools+=(cargo-watch@8.1.1 watchexec-cli@1.20.5 nextest@0.9.57) ;;
|
||||||
major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20 nextest@0.9) ;;
|
major.minor) tools+=(cargo-watch@8.1 watchexec-cli@1.20 nextest@0.9) ;;
|
||||||
major) tools+=(cargo-watch@8 watchexec-cli@1) ;;
|
major) tools+=(cargo-watch@8 watchexec-cli@1) ;;
|
||||||
*) exit 1 ;;
|
*) exit 1 ;;
|
||||||
esac
|
esac
|
||||||
fi
|
|
||||||
|
|
||||||
# sort and dedup
|
# sort and dedup
|
||||||
IFS=$'\n'
|
IFS=$'\n'
|
||||||
|
|||||||
Reference in New Issue
Block a user