mirror of
https://github.com/taiki-e/install-action.git
synced 2026-04-27 01:20:28 +00:00
Compare commits
10 Commits
v2.6.2
...
release-gu
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
f7379c13bb | ||
|
|
1c96e2750b | ||
|
|
b047e58764 | ||
|
|
02aadca714 | ||
|
|
c64d4ba1ed | ||
|
|
f006976e02 | ||
|
|
7570159fcc | ||
|
|
7fed544855 | ||
|
|
9eaa8ca48b | ||
|
|
159a429775 |
16
.github/.cspell/organization-dictionary.txt
vendored
16
.github/.cspell/organization-dictionary.txt
vendored
@@ -77,27 +77,36 @@ vxworks
|
||||
wasi
|
||||
watchos
|
||||
xous
|
||||
xtensa
|
||||
|
||||
// Rust other
|
||||
aclass
|
||||
acqrel
|
||||
alloc
|
||||
bools
|
||||
builtins
|
||||
canonicalize
|
||||
consts
|
||||
ctypes
|
||||
dealloc
|
||||
deque
|
||||
docsrs
|
||||
doctest
|
||||
hasher
|
||||
impls
|
||||
inlateout
|
||||
intrinsics
|
||||
lateout
|
||||
mclass
|
||||
msrv
|
||||
nand
|
||||
nomem
|
||||
nonoverlapping
|
||||
noreturn
|
||||
nostack
|
||||
peekable
|
||||
punct
|
||||
rclass
|
||||
repr
|
||||
rfind
|
||||
rfold
|
||||
@@ -109,14 +118,17 @@ supertrait
|
||||
supertraits
|
||||
sysroot
|
||||
toolchains
|
||||
turbofish
|
||||
uninit
|
||||
unsized
|
||||
upcastable
|
||||
|
||||
// Other
|
||||
binutils
|
||||
connrefused
|
||||
cygwin
|
||||
dpkg
|
||||
endianness
|
||||
euxo
|
||||
msys
|
||||
noninteractive
|
||||
@@ -128,4 +140,8 @@ pipefail
|
||||
powerset
|
||||
proto
|
||||
readelf
|
||||
SIGABRT
|
||||
SIGILL
|
||||
SIGINT
|
||||
SIGTERM
|
||||
tlsv
|
||||
|
||||
1
.github/workflows/release.yml
vendored
1
.github/workflows/release.yml
vendored
@@ -29,3 +29,4 @@ jobs:
|
||||
title: $version
|
||||
branch: 'main|v[0-9]+'
|
||||
token: ${{ secrets.GITHUB_TOKEN }}
|
||||
- run: ci/publish.sh
|
||||
|
||||
21
CHANGELOG.md
21
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]
|
||||
|
||||
## [2.6.5] - 2023-03-25
|
||||
|
||||
- Update `cargo-binstall@latest` to 0.22.0.
|
||||
|
||||
## [2.6.4] - 2023-03-21
|
||||
|
||||
- Update `wasmtime@latest` to 7.0.0.
|
||||
|
||||
## [2.6.3] - 2023-03-20
|
||||
|
||||
- Update `zola@latest` to 0.17.2.
|
||||
|
||||
- Update `wasm-pack@latest` to 0.11.0.
|
||||
|
||||
- Update `cargo-nextest@latest` to 0.9.51.
|
||||
|
||||
## [2.6.2] - 2023-03-14
|
||||
|
||||
- Update `cargo-binstall@latest` to 0.21.3. This fixes spurious error when accessing crates.io.
|
||||
@@ -683,7 +699,10 @@ Note: This release is considered a breaking change because installing on version
|
||||
|
||||
Initial release
|
||||
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.6.2...HEAD
|
||||
[Unreleased]: https://github.com/taiki-e/install-action/compare/v2.6.5...HEAD
|
||||
[2.6.5]: https://github.com/taiki-e/install-action/compare/v2.6.4...v2.6.5
|
||||
[2.6.4]: https://github.com/taiki-e/install-action/compare/v2.6.3...v2.6.4
|
||||
[2.6.3]: https://github.com/taiki-e/install-action/compare/v2.6.2...v2.6.3
|
||||
[2.6.2]: https://github.com/taiki-e/install-action/compare/v2.6.1...v2.6.2
|
||||
[2.6.1]: https://github.com/taiki-e/install-action/compare/v2.6.0...v2.6.1
|
||||
[2.6.0]: https://github.com/taiki-e/install-action/compare/v2.5.7...v2.6.0
|
||||
|
||||
@@ -17,3 +17,31 @@ See JSON files in `tools/codegen/base` directory for examples of the manifest.
|
||||
3\. Add tool name to test matrix in `.github/workflows/ci.yml`.
|
||||
|
||||
4\. Add tool name to table in "Supported tools" section in `README.md`.
|
||||
|
||||
## Release new version
|
||||
|
||||
Note: This is a guide for maintainers.
|
||||
|
||||
### Minor version vs patch version
|
||||
|
||||
Increase the patch version if only the following changes are included.
|
||||
|
||||
- Update the `@latest` version of the tool.
|
||||
|
||||
Rationale: Normally, tool versions are controlled by the `@<version>` syntax, which is explicitly separated from the versioning of the install-action itself.
|
||||
|
||||
Exception: If the major or minor version of the `cargo-binstall` is updated, the minor version should be increased because the behavior of the fallback may change slightly.
|
||||
|
||||
- Fix regressions or minor bugs.
|
||||
|
||||
Rationale: Semantic Versioning.
|
||||
|
||||
- Improve documentation or diagnostics.
|
||||
|
||||
Rationale: Semantic Versioning.
|
||||
|
||||
Increase the minor version otherwise.
|
||||
|
||||
### Release instructions
|
||||
|
||||
TODO: current release script assumes admin permissions
|
||||
|
||||
@@ -3,6 +3,15 @@ set -euxo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
bail() {
|
||||
echo >&2 "error: $*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [[ -z "${CI:-}" ]]; then
|
||||
bail "this script is intended to call from release workflow on CI"
|
||||
fi
|
||||
|
||||
git config user.name "Taiki Endo"
|
||||
git config user.email "te316e89@gmail.com"
|
||||
|
||||
|
||||
74
ci/publish.sh
Executable file
74
ci/publish.sh
Executable file
@@ -0,0 +1,74 @@
|
||||
#!/usr/bin/env bash
|
||||
set -euo pipefail
|
||||
IFS=$'\n\t'
|
||||
cd "$(dirname "$0")"/..
|
||||
|
||||
# shellcheck disable=SC2154
|
||||
trap 's=$?; echo >&2 "$0: Error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}' ERR
|
||||
|
||||
bail() {
|
||||
echo >&2 "error: $*"
|
||||
exit 1
|
||||
}
|
||||
|
||||
if [[ -z "${CI:-}" ]]; then
|
||||
bail "this script is intended to call from release workflow on CI"
|
||||
fi
|
||||
ref="${GITHUB_REF:-}"
|
||||
if [[ "${ref}" != "refs/tags/"* ]]; then
|
||||
bail "tag ref should start with 'refs/tags/'"
|
||||
fi
|
||||
tag="${ref#refs/tags/}"
|
||||
|
||||
git config user.name "Taiki Endo"
|
||||
git config user.email "te316e89@gmail.com"
|
||||
|
||||
version="${tag}"
|
||||
version="${version#v}"
|
||||
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tools+=("$(basename "${tool%.*}")")
|
||||
done
|
||||
# Aliases
|
||||
tools+=(nextest)
|
||||
# Not manifest-base
|
||||
tools+=(valgrind)
|
||||
|
||||
(
|
||||
set -x
|
||||
|
||||
major_version_tag="v${version%%.*}"
|
||||
git checkout -b "${major_version_tag}"
|
||||
git push origin refs/heads/"${major_version_tag}"
|
||||
if git --no-pager tag | grep -Eq "^${major_version_tag}$"; then
|
||||
git tag -d "${major_version_tag}"
|
||||
git push --delete origin refs/tags/"${major_version_tag}"
|
||||
fi
|
||||
git tag "${major_version_tag}"
|
||||
git checkout main
|
||||
git branch -d "${major_version_tag}"
|
||||
)
|
||||
|
||||
for tool in "${tools[@]}"; do
|
||||
(
|
||||
set -x
|
||||
git checkout -b "${tool}"
|
||||
sed -i -e "s/required: true/required: false/g" action.yml
|
||||
sed -i -e "s/# default: #publish:tool/default: ${tool}/g" action.yml
|
||||
git add action.yml
|
||||
git commit -m "${tool}"
|
||||
git push origin -f refs/heads/"${tool}"
|
||||
if git --no-pager tag | grep -Eq "^${tool}$"; then
|
||||
git tag -d "${tool}"
|
||||
git push --delete origin refs/tags/"${tool}"
|
||||
fi
|
||||
git tag "${tool}"
|
||||
git checkout main
|
||||
git branch -D "${tool}"
|
||||
)
|
||||
done
|
||||
|
||||
set -x
|
||||
|
||||
git push origin --tags
|
||||
16
manifests/cargo-binstall.json
generated
16
manifests/cargo-binstall.json
generated
@@ -20,26 +20,26 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.21.3"
|
||||
"version": "0.22.0"
|
||||
},
|
||||
"0.21.3": {
|
||||
"0.22.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "d7a790ac52c9e88d6d52850cd9692db249b6528caed9ea3bda45878043c95550"
|
||||
"checksum": "2238080e5e2c4eae5993de478341af6348e10fd9763a95a77e654e6f28268266"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "98a615028e344e0461fcb12f68f5e6381922215a337ea2511aa343546ebffc19"
|
||||
"checksum": "3e87999ab63edf3cdd71a3839bd85661c5dea5d763718668b8b3b35b1ac5dbe0"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "b4c1c5a5fff2c713b6f189698064ff85744990f3ed9ab402af1d2b305f859233"
|
||||
"checksum": "f656718d44ca4a09ff2231970edc7878a1aa33b6e15790a4884a758144008e27"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "1fc4bcba137534362a40618d9cf9f69777b3e6f5aa9dbcdd09ded6ae5e36c72f"
|
||||
"checksum": "280fc36a0f565d76636aa3aff570c97d1e6fbd6aa08ef315af2cb968054e1d9b"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "5dd1ca2b9c0d93e960d0fedcc51a7b217e4683a88afcf4f6e1ec636c3480b013"
|
||||
"checksum": "abb87cb2ef23b552c62dc463777debb31be4a817ef9366509abb245d346e4410"
|
||||
},
|
||||
"aarch64_windows": {
|
||||
"checksum": "a70bb9ff8360bd7128870739675aff5b78710e4bb93e96d9577bb6e961828d69"
|
||||
"checksum": "50108bd891a0b6a0044f71d11e09e886a3eec44f4163d44f79a3eed049a484c2"
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
21
manifests/cargo-nextest.json
generated
21
manifests/cargo-nextest.json
generated
@@ -17,10 +17,27 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.9.50"
|
||||
"version": "0.9.51"
|
||||
},
|
||||
"0.9": {
|
||||
"version": "0.9.50"
|
||||
"version": "0.9.51"
|
||||
},
|
||||
"0.9.51": {
|
||||
"x86_64_linux_gnu": {
|
||||
"checksum": "5cbf80e72737d63a601f139d6ff1c42ca9cf6204cd7991f7d6ce7458f2c12bbc"
|
||||
},
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "2d7def02b6b795b7b44fe2cca9b1b9e77bcb4c8903957ad502f60f45a2f92e9a"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "607c0cac7d659bb957af12a136756821771b9d91f03ccae24b255363e7fcbfda"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "4a97e5ab319af4347549e8414df2af5af7d9f8b4cee8650bad0111d2007711b2"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"checksum": "8da18d12f95280bf1a7bde6e13cb8e1e2ea877acc4e826c27ab6c5df653fafca"
|
||||
}
|
||||
},
|
||||
"0.9.50": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
19
manifests/wasm-pack.json
generated
19
manifests/wasm-pack.json
generated
@@ -18,7 +18,24 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.10.3"
|
||||
"version": "0.11.0"
|
||||
},
|
||||
"0.11": {
|
||||
"version": "0.11.0"
|
||||
},
|
||||
"0.11.0": {
|
||||
"x86_64_linux_musl": {
|
||||
"checksum": "f3041ac5fda684d09b28ca23555c2f24cac9d6eef57ee4ef3f29fdab1c19fe24"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "5da38cb10536e6fe686402f5af94ea48a4b94dca9bde931bf117ddce3e746f0e"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "10092618d9451bace4f727d344f19a02dda4a28ffd527272595f88b8c15efec9"
|
||||
},
|
||||
"aarch64_linux_musl": {
|
||||
"checksum": "ebc6339762f95385081a06ce3ac8d5846e7267011bc028266009cf3b4ff0f81c"
|
||||
}
|
||||
},
|
||||
"0.10": {
|
||||
"version": "0.10.3"
|
||||
|
||||
25
manifests/wasmtime.json
generated
25
manifests/wasmtime.json
generated
@@ -22,7 +22,30 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "6.0.1"
|
||||
"version": "7.0.0"
|
||||
},
|
||||
"7": {
|
||||
"version": "7.0.0"
|
||||
},
|
||||
"7.0": {
|
||||
"version": "7.0.0"
|
||||
},
|
||||
"7.0.0": {
|
||||
"x86_64_linux_gnu": {
|
||||
"checksum": "b8a1c97f9107c885ea73a5c38677d0d340a7c26879d366e8a5f3dce84cffec99"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "70596a9f8fcf0b2467877cb184f41f6b451ade4ac74d1e0bb8986bbfbac925b4"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "bf796c35020df2df3a29475949e0330ea3fd47bbfd719d2959564c3e32a8c1a7"
|
||||
},
|
||||
"aarch64_linux_gnu": {
|
||||
"checksum": "723171912c7cd6332c1ac599851dd04dcb107f60a9f18d9d2d3bd319e3c2c6ba"
|
||||
},
|
||||
"aarch64_macos": {
|
||||
"checksum": "8e66af9cb46726f2c9b22f96cd8a08a5f1112d2f02f13f84ff2167444b14366e"
|
||||
}
|
||||
},
|
||||
"6": {
|
||||
"version": "6.0.1"
|
||||
|
||||
15
manifests/zola.json
generated
15
manifests/zola.json
generated
@@ -11,10 +11,21 @@
|
||||
}
|
||||
},
|
||||
"latest": {
|
||||
"version": "0.17.1"
|
||||
"version": "0.17.2"
|
||||
},
|
||||
"0.17": {
|
||||
"version": "0.17.1"
|
||||
"version": "0.17.2"
|
||||
},
|
||||
"0.17.2": {
|
||||
"x86_64_linux_gnu": {
|
||||
"checksum": "48742322fc0660afb22a4ce194e9b2bd610b5bd36f43abe121e56eb8a704b464"
|
||||
},
|
||||
"x86_64_macos": {
|
||||
"checksum": "5e17a54c9b1db55ae71d49587b399b8b39bdee8cbb4a198ab6449c3e0f9ad21e"
|
||||
},
|
||||
"x86_64_windows": {
|
||||
"checksum": "89c504756a2c34f8540adf7eee83a8f1b61527bc55daa7e42481a0c727cae88f"
|
||||
}
|
||||
},
|
||||
"0.17.1": {
|
||||
"x86_64_linux_gnu": {
|
||||
|
||||
@@ -14,6 +14,14 @@ trap 's=$?; echo >&2 "$0: Error on line "${LINENO}": ${BASH_COMMAND}"; exit ${s}
|
||||
# Note: This script requires the following tools:
|
||||
# - parse-changelog <https://github.com/taiki-e/parse-changelog>
|
||||
|
||||
x() {
|
||||
local cmd="$1"
|
||||
shift
|
||||
(
|
||||
set -x
|
||||
"${cmd}" "$@"
|
||||
)
|
||||
}
|
||||
bail() {
|
||||
echo >&2 "error: $*"
|
||||
exit 1
|
||||
@@ -40,6 +48,7 @@ if gh release view "${tag}" &>/dev/null; then
|
||||
bail "tag '${tag}' has already been created and pushed"
|
||||
fi
|
||||
|
||||
# Make sure that the release was created from an allowed branch.
|
||||
if ! git branch | grep -q '\* main$'; then
|
||||
bail "current branch is not 'main'"
|
||||
fi
|
||||
@@ -88,57 +97,11 @@ echo "======================================="
|
||||
|
||||
if [[ -n "${tags}" ]]; then
|
||||
# Create a release commit.
|
||||
git add "${changelog}"
|
||||
git commit -m "Release ${version}"
|
||||
x git add "${changelog}"
|
||||
x git commit -m "Release ${version}"
|
||||
fi
|
||||
|
||||
tools=()
|
||||
for tool in tools/codegen/base/*.json; do
|
||||
tools+=("$(basename "${tool%.*}")")
|
||||
done
|
||||
# Aliases
|
||||
tools+=(nextest)
|
||||
# Not manifest-base
|
||||
tools+=(valgrind)
|
||||
|
||||
(
|
||||
set -x
|
||||
|
||||
git tag "${tag}"
|
||||
git push origin main
|
||||
git push origin --tags
|
||||
|
||||
major_version_tag="v${version%%.*}"
|
||||
git checkout -b "${major_version_tag}"
|
||||
git push origin refs/heads/"${major_version_tag}"
|
||||
if git --no-pager tag | grep -Eq "^${major_version_tag}$"; then
|
||||
git tag -d "${major_version_tag}"
|
||||
git push --delete origin refs/tags/"${major_version_tag}"
|
||||
fi
|
||||
git tag "${major_version_tag}"
|
||||
git checkout main
|
||||
git branch -d "${major_version_tag}"
|
||||
)
|
||||
|
||||
for tool in "${tools[@]}"; do
|
||||
(
|
||||
set -x
|
||||
git checkout -b "${tool}"
|
||||
sed -i -e "s/required: true/required: false/g" action.yml
|
||||
sed -i -e "s/# default: #publish:tool/default: ${tool}/g" action.yml
|
||||
git add action.yml
|
||||
git commit -m "${tool}"
|
||||
git push origin -f refs/heads/"${tool}"
|
||||
if git --no-pager tag | grep -Eq "^${tool}$"; then
|
||||
git tag -d "${tool}"
|
||||
git push --delete origin refs/tags/"${tool}"
|
||||
fi
|
||||
git tag "${tool}"
|
||||
git checkout main
|
||||
git branch -D "${tool}"
|
||||
)
|
||||
done
|
||||
|
||||
set -x
|
||||
|
||||
git push origin --tags
|
||||
x git tag "${tag}"
|
||||
# TODO: the following still assumes admin permissions
|
||||
x git push origin main
|
||||
x git push origin --tags
|
||||
|
||||
Reference in New Issue
Block a user