Support cargo-udeps on more platforms

This commit is contained in:
Taiki Endo
2023-05-07 02:30:15 +09:00
parent b31ec2c441
commit 9c28344380
4 changed files with 54 additions and 17 deletions

View File

@@ -97,28 +97,32 @@ jobs:
fail-fast: false
matrix:
container:
- ubuntu:18.04 # glibc 2.27
# glibc >= 2.31
- ubuntu:20.04 # glibc 2.31
- debian:10-slim # glibc 2.28
- ubuntu:22.04 # glibc 2.35
- debian:11-slim # glibc 2.31
- rockylinux:8 # glibc 2.28
- rockylinux:8-minimal # glibc 2.28
- fedora:latest # glibc 2.36 (as of fedora 37)
tool:
# valgrind: installing snap to container is difficult...
- cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
include:
- container: ubuntu:22.04 # glibc 2.35
# cargo-udeps depends on openssl 1.1
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
- container: fedora:latest # glibc 2.36 (as of fedora 37)
# cargo-udeps depends on openssl 1.1
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin,zola
# glibc < 2.31
# zola don't provide prebuilt binaries for musl or old glibc host.
- container: ubuntu:18.04 # glibc 2.27
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: debian:10-slim # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: rockylinux:8 # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
- container: rockylinux:8-minimal # glibc 2.28
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,protoc,shellcheck,shfmt,wasm-pack,wasmtime,mdbook,mdbook-linkcheck,cargo-watch,grcov,watchexec-cli,cargo-tarpaulin
# glibc < 2.27 or musl
- container: centos:7 # glibc 2.17
# cargo-udeps,protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl or old glibc host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
# protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl or old glibc host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
- container: alpine:latest # musl 1.2.3 (as of alpine 3.17)
# cargo-udeps,protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
# protoc,valgrind,wasmtime,mdbook-linkcheck,cargo-watch,zola don't provide prebuilt binaries for musl host.
tool: cargo-hack,cargo-llvm-cov,cargo-minimal-versions,cargo-no-dev-deps,parse-changelog,cargo-udeps,cargo-valgrind,cargo-deny,cross,dprint,just,nextest,shellcheck,shfmt,wasm-pack,mdbook,cargo-binstall,grcov,watchexec-cli,cargo-tarpaulin
runs-on: ubuntu-latest
timeout-minutes: 60
container: ${{ matrix.container }}

View File

@@ -18,6 +18,8 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
- Update `cargo-nextest@latest` to 0.9.52.
- Support `cargo-udeps` on Linux (musl) and aarch64 Linux/macOS/Windows.
## [2.8.0] - 2023-05-03
- Trim whitespace from tool names. ([#115](https://github.com/taiki-e/install-action/pull/115))

View File

@@ -4,6 +4,10 @@
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-x86_64-unknown-linux-gnu.tar.gz",
"bin": "./cargo-udeps-v${version}-x86_64-unknown-linux-gnu/cargo-udeps"
},
"x86_64_linux_musl": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-x86_64-unknown-linux-musl.tar.gz",
"bin": "./cargo-udeps-v${version}-x86_64-unknown-linux-musl/cargo-udeps"
},
"x86_64_macos": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-x86_64-apple-darwin.tar.gz",
"bin": "./cargo-udeps-v${version}-x86_64-apple-darwin/cargo-udeps"
@@ -11,6 +15,18 @@
"x86_64_windows": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-x86_64-pc-windows-msvc.zip",
"bin": "./cargo-udeps-v${version}-x86_64-pc-windows-msvc/cargo-udeps.exe"
},
"aarch64_linux_musl": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-aarch64-unknown-linux-musl.tar.gz",
"bin": "./cargo-udeps-v${version}-aarch64-unknown-linux-musl/cargo-udeps"
},
"aarch64_macos": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-aarch64-apple-darwin.tar.gz",
"bin": "./cargo-udeps-v${version}-aarch64-apple-darwin/cargo-udeps"
},
"aarch64_windows": {
"url": "https://github.com/est31/cargo-udeps/releases/download/v${version}/cargo-udeps-v${version}-aarch64-pc-windows-msvc.zip",
"bin": "./cargo-udeps-v${version}-aarch64-pc-windows-msvc/cargo-udeps.exe"
}
},
"latest": {
@@ -20,14 +36,23 @@
"version": "0.1.39"
},
"0.1.39": {
"x86_64_linux_gnu": {
"checksum": "c6ce53134935cb182f23cb2ad8eddfbd33398d9eed69770805776e7046b224d6"
"x86_64_linux_musl": {
"checksum": "6476cf5711a150c53b563ecb1680b45365c86b054079b483333a961e14dd2c8a"
},
"x86_64_macos": {
"checksum": "c93e5e03c64ac351ec69a62d22c119e8b2f612fde5bc7938aade549bc38f4d49"
},
"x86_64_windows": {
"checksum": "02e5ce690d027a28e323e753ba03f4ce164bd106d98afe437871778f1b166c8f"
},
"aarch64_linux_musl": {
"checksum": "f5de7ae1fb82ea797be27a56a0cfe80d2724a4ae4d380dd49f1d5ac221f45f4a"
},
"aarch64_macos": {
"checksum": "d605026264208372def2a3d62498070b02cd3e10fc74ffc7448e8b626fc7fd90"
},
"aarch64_windows": {
"checksum": "dc026ed1fe5ba3147eda788df31c9da660942b959c3f6b1441752f0f886aef53"
}
},
"0.1.38": {

View File

@@ -5,9 +5,15 @@
"bin": "./${package}-v${version}-${rust_target}/${package}${exe}",
"platform": {
"x86_64_linux_gnu": {},
"x86_64_linux_musl": {},
"x86_64_macos": {},
"x86_64_windows": {
"asset_name": "${package}-v${version}-${rust_target}.zip"
},
"aarch64_linux_musl": {},
"aarch64_macos": {},
"aarch64_windows": {
"asset_name": "${package}-v${version}-${rust_target}.zip"
}
}
}