Compare commits

...

10 Commits

Author SHA1 Message Date
Taiki Endo
07a34f8347 Release 2.38.4 2024-06-12 02:16:44 +09:00
Taiki Endo
e626313db4 Workaround Cygwin bash's buggy behavior 2024-06-12 02:15:37 +09:00
Taiki Endo
01c63d291f Improve diagnostics for non-default bash on Windows 2024-06-12 00:58:48 +09:00
Taiki Endo
43f5aa7172 Release 2.38.3 2024-06-11 23:28:33 +09:00
Taiki Endo
1330af6455 Update changelog 2024-06-11 23:28:01 +09:00
Taiki Endo
01ad6befc0 Workaround msys64 bash's buggy behavior 2024-06-11 23:23:23 +09:00
Taiki Endo
0a18e2472c Update typos@latest to 1.22.4 2024-06-11 10:11:32 +09:00
Taiki Endo
ca13ba3e0d Update earthly@latest to 0.8.14 2024-06-11 05:42:24 +09:00
Taiki Endo
fa446e93ef Update cargo-rdme manifest 2024-06-11 05:42:24 +09:00
Taiki Endo
3c1a9d610d codegen: Mark cargo-rdme 1.4.4 as broken
Same as a86757441d.
2024-06-11 04:55:02 +09:00
8 changed files with 115 additions and 13 deletions

View File

@@ -2,8 +2,10 @@ almalinux
archlinux
bindgen
binstall
choco
coreutils
cyclonedx
cygdrive
deepsource
distro
doas
@@ -23,6 +25,7 @@ pwsh
quickinstall
rclone
rdme
requirechecksums
sccache
syft
udeps

View File

@@ -53,6 +53,11 @@ jobs:
- os: macos-14
- os: windows-2019
- os: windows-2022
# https://github.com/taiki-e/install-action/pull/518#issuecomment-2160736760
- os: windows-2022
bash: msys64
- os: windows-2022
bash: cygwin
runs-on: ${{ matrix.os }}
timeout-minutes: 60
steps:
@@ -62,6 +67,18 @@ jobs:
- name: Generate tool list
id: tool-list
run: tools/ci/tool-list.sh "${{ matrix.tool }}" >>"${GITHUB_OUTPUT}"
- run: |
set -eEuxo pipefail
echo "C:\msys64\mingw32\bin" >> $GITHUB_PATH
echo "C:\msys64\usr\bin" >> $GITHUB_PATH
if: matrix.bash == 'msys64'
- run: |
set -eEuxo pipefail
choco install --no-progress --requirechecksums cygwin
echo "C:\tools\cygwin\bin" >> $GITHUB_PATH
echo "C:\tools\cygwin\usr\bin" >> $GITHUB_PATH
if: matrix.bash == 'cygwin'
- run: env
- uses: ./
with:
tool: ${{ steps.tool-list.outputs.tool }}
@@ -92,6 +109,7 @@ jobs:
if [[ "$(cargo binstall -V)" != "$(jq -r '.latest.version' manifests/cargo-binstall.json)" ]]; then
exit 1
fi
if: matrix.bash != 'cygwin'
test-container:
strategy:

View File

@@ -10,6 +10,28 @@ Note: In this file, do not use the hard wrap in the middle of a sentence for com
## [Unreleased]
## [2.38.4] - 2024-06-11
- Workaround Cygwin bash's buggy behavior. ([#534](https://github.com/taiki-e/install-action/pull/534))
This fixes an installation issue when default bash was overridden like the following:
```sh
echo "C:\tools\cygwin\bin" >> $GITHUB_PATH
```
## [2.38.3] - 2024-06-11
- Workaround MSYS64 bash's buggy behavior. ([#533](https://github.com/taiki-e/install-action/pull/533))
This fixes an installation issue when default bash was overridden like the following:
```sh
echo "C:\msys64\usr\bin" >> $GITHUB_PATH
```
- Update `typos@latest` to 1.22.4.
- Update `earthly@latest` to 0.8.14.
## [2.38.2] - 2024-06-10
- Update `syft@latest` to 1.6.0.
@@ -2296,7 +2318,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.38.2...HEAD
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.38.4...HEAD
[2.38.4]: https://github.com/taiki-e/install-action/compare/v2.38.3...v2.38.4
[2.38.3]: https://github.com/taiki-e/install-action/compare/v2.38.2...v2.38.3
[2.38.2]: https://github.com/taiki-e/install-action/compare/v2.38.1...v2.38.2
[2.38.1]: https://github.com/taiki-e/install-action/compare/v2.38.0...v2.38.1
[2.38.0]: https://github.com/taiki-e/install-action/compare/v2.37.0...v2.38.0

33
main.sh
View File

@@ -400,7 +400,7 @@ init_install_action_bin_dir() {
}
canonicalize_windows_path() {
case "${host_os}" in
windows) sed <<<"$1" 's/^\/c\//C:\\/; s/\//\\/g' ;;
windows) sed <<<"$1" 's/^\/cygdrive\//\//; s/^\/c\//C:\\/; s/\//\\/g' ;;
*) echo "$1" ;;
esac
}
@@ -515,17 +515,38 @@ case "$(uname -m)" in
esac
info "host platform: ${host_arch}_${host_os}"
install_action_dir="${HOME}/.install-action"
home="${HOME}"
if [[ "${host_os}" == "windows" ]]; then
if [[ "${home}" == "/home/"* ]]; then
if [[ -d "${home/\/home\//\/c\/Users\/}" ]]; then
# MSYS2 https://github.com/taiki-e/install-action/pull/518#issuecomment-2160736760
home="${home/\/home\//\/c\/Users\/}"
elif [[ -d "${home/\/home\//\/cygdrive\/c\/Users\/}" ]]; then
# Cygwin https://github.com/taiki-e/install-action/issues/224#issuecomment-1720196288
home="${home/\/home\//\/cygdrive\/c\/Users\/}"
else
warn "\$HOME starting /home/ (${home}) on Windows bash is usually fake path, this may cause installation issue"
fi
fi
fi
install_action_dir="${home}/.install-action"
tmp_dir="${install_action_dir}/tmp"
cargo_bin="${CARGO_HOME:-"${HOME}/.cargo"}/bin"
cargo_bin="${CARGO_HOME:-"${home}/.cargo"}/bin"
# If $CARGO_HOME does not exist, or cargo installed outside of $CARGO_HOME/bin
# is used ($CARGO_HOME/bin is most likely not included in the PATH), fallback to
# /usr/local/bin or $install_action_dir/bin.
if [[ ! -e "${cargo_bin}" ]] || [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo"* ]]; then
if [[ "${host_os}" == "windows" ]]; then
if type -P cargo &>/dev/null; then
info "cargo is located at $(type -P cargo)"
cargo_bin=$(dirname "$(type -P cargo)")
else
cargo_bin="${install_action_dir}/bin"
fi
elif [[ ! -e "${cargo_bin}" ]] || [[ "$(type -P cargo || true)" != "${cargo_bin}/cargo"* ]]; then
if type -P cargo &>/dev/null; then
info "cargo is located at $(type -P cargo)"
fi
if [[ "${host_os}" == "windows" ]] || [[ ! -e /usr/local/bin ]]; then
if [[ ! -e /usr/local/bin ]]; then
cargo_bin="${install_action_dir}/bin"
else
cargo_bin=/usr/local/bin
@@ -808,7 +829,7 @@ if [[ ${#unsupported_tools[@]} -gt 0 ]]; then
# min tls version to be 1.2
cargo-binstall binstall --force --no-confirm --locked "${unsupported_tools[@]}"
if ! type -P cargo >/dev/null; then
_bin_dir=$(canonicalize_windows_path "${HOME}/.cargo/bin")
_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}"

View File

@@ -21,6 +21,11 @@
"1.4": {
"version": "1.4.2"
},
"1.4.4": {
"x86_64_windows": {
"checksum": "ff9b7a4d56a89451e8e0ae40716d47534fb08c5723a08fd560a66227b49e2694"
}
},
"1.4.3": {
"x86_64_windows": {
"checksum": "408ffb657c99bf4142521632306edc4ed130dd991a0cd4b62cf370c28b307daf"

21
manifests/earthly.json generated
View File

@@ -19,10 +19,27 @@
},
"license_markdown": "[MPL-2.0](https://github.com/earthly/earthly/blob/main/LICENSE)",
"latest": {
"version": "0.8.13"
"version": "0.8.14"
},
"0.8": {
"version": "0.8.13"
"version": "0.8.14"
},
"0.8.14": {
"x86_64_linux_gnu": {
"checksum": "9c184536faccf2e16e92ad06d2a2579e4b3ff6aaf6bf4c2f72b21228a6903bc2"
},
"x86_64_macos": {
"checksum": "09d749a4f5b9d71acb803ba229086b28f447ac2080492106f6f51536a64a0760"
},
"x86_64_windows": {
"checksum": "3244284dc9648d7cd3af350ab4a8bfd4c63b0e0e16e656c3e249fc1d58fe7e5f"
},
"aarch64_linux_gnu": {
"checksum": "a88786778964eb74b6b5db44734a4630dcedab49c4ed21fe432e9e6d08ff116c"
},
"aarch64_macos": {
"checksum": "0a0154bb94ef4c8692737156a74534d369947be1a4558e81603be3d2b4328d7b"
}
},
"0.8.13": {
"x86_64_linux_gnu": {

20
manifests/typos.json generated
View File

@@ -16,13 +16,27 @@
},
"license_markdown": "[MIT](https://github.com/crate-ci/typos/blob/master/LICENSE-MIT) OR [Apache-2.0](https://github.com/crate-ci/typos/blob/master/LICENSE-APACHE)",
"latest": {
"version": "1.22.3"
"version": "1.22.4"
},
"1": {
"version": "1.22.3"
"version": "1.22.4"
},
"1.22": {
"version": "1.22.3"
"version": "1.22.4"
},
"1.22.4": {
"x86_64_linux_musl": {
"checksum": "aa4be101267b74c7ba0a8d506362c8b5ed75351afe35c86e2de3b2dfad1092b7"
},
"x86_64_macos": {
"checksum": "3761bc4c3bbc0367fbb691e600d09f92a2b641f98158b13c78b469c36afa6a67"
},
"x86_64_windows": {
"checksum": "94473d6765f59ea970deb2377e5a42c6d4bf7a37441fab52a2a6eb1ee6d49f77"
},
"aarch64_macos": {
"checksum": "5328764dc79e25e65615698236ff8842bb4a1bfd95e2d4e84171d7df5b216489"
}
},
"1.22.3": {
"x86_64_linux_musl": {

View File

@@ -2,7 +2,7 @@
"repository": "https://github.com/orium/cargo-rdme",
"tag_prefix": "v",
"rust_crate": "${package}",
"broken": ["1.4.3"],
"broken": ["1.4.3", "1.4.4"],
"platform": {
"x86_64_linux_musl": {
"asset_name": "${package}_v${version}_${rust_target}.tar.bz2"