nushell/.github/workflows/release.yml

101 lines
2.6 KiB
YAML
Raw Normal View History

#
# REF:
# 1. https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstrategymatrixinclude
#
name: Create Release Draft
on:
workflow_dispatch:
push:
tags: ["[0-9]+.[0-9]+.[0-9]+*"]
defaults:
run:
shell: bash
jobs:
all:
name: All
strategy:
matrix:
target:
- aarch64-apple-darwin
- x86_64-apple-darwin
- x86_64-pc-windows-msvc
- x86_64-unknown-linux-gnu
- x86_64-unknown-linux-musl
- aarch64-unknown-linux-gnu
- armv7-unknown-linux-gnueabihf
- riscv64gc-unknown-linux-gnu
extra: ['bin']
include:
- target: aarch64-apple-darwin
os: macos-latest
target_rustflags: ''
- target: x86_64-apple-darwin
os: macos-latest
target_rustflags: ''
- target: x86_64-pc-windows-msvc
extra: 'bin'
os: windows-latest
target_rustflags: ''
- target: x86_64-pc-windows-msvc
extra: msi
os: windows-latest
target_rustflags: ''
- target: x86_64-unknown-linux-gnu
os: ubuntu-20.04
target_rustflags: ''
- target: x86_64-unknown-linux-musl
os: ubuntu-20.04
target_rustflags: ''
- target: aarch64-unknown-linux-gnu
os: ubuntu-20.04
target_rustflags: ''
- target: armv7-unknown-linux-gnueabihf
os: ubuntu-20.04
target_rustflags: ''
- target: riscv64gc-unknown-linux-gnu
os: ubuntu-20.04
target_rustflags: ''
runs-on: ${{matrix.os}}
steps:
- uses: actions/checkout@v3.1.0
- name: Update Rust Toolchain Target
run: |
echo "targets = ['${{matrix.target}}']" >> rust-toolchain.toml
- name: Setup Rust toolchain and cache
Bump actions-rust-lang/setup-rust-toolchain from 1.3.7 to 1.4.2 (#8133) Bumps [actions-rust-lang/setup-rust-toolchain](https://github.com/actions-rust-lang/setup-rust-toolchain) from 1.3.7 to 1.4.2. <details> <summary>Changelog</summary> <p><em>Sourced from <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/blob/main/CHANGELOG.md">actions-rust-lang/setup-rust-toolchain's changelog</a>.</em></p> <blockquote> <h2>[1.4.2] - 2023-02-15</h2> <h3>Fixed</h3> <ul> <li>Tweak sparse registry version regex to better work with 1.68 nightly versions.</li> <li>Fix command not found issue</li> </ul> <h2>[1.4.1] - 2023-02-13</h2> <h3>Fixed</h3> <ul> <li> <p>Fixed running on macOS <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/9">#9</a> <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/10">#10</a> The macOS images have an ancient version of bash, but the action relies on &quot;newer&quot; features than 2014. We install bash via brew (already pre-installed) to have a new enough version.</p> <p>The CI is extended to also run on Windows and macOS to catch such issues earlier in the future.</p> <p>Thanks to <a href="https://github.com/GeorgeHahn"><code>@​GeorgeHahn</code></a> for reporting the issue.</p> </li> </ul> <h2>[1.4.0] - 2023-02-13</h2> <h3>Changed</h3> <ul> <li>Only set environment variables, if they are not set before. This allows setting environment variables before using this action and keeping their values.</li> <li>Enable stable sparse registry, except on versions 1.66 and 1.67 where this leads to errors.</li> </ul> </blockquote> </details> <details> <summary>Commits</summary> <ul> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/9fa7c33ef085194766da3eb0fb6eaa184459a834"><code>9fa7c33</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/11">#11</a> from actions-rust-lang/tweak-regex</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/5f4f30a995525d282f39f0fb5e26406227723a60"><code>5f4f30a</code></a> Maybe fix rustup warning</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/2d7b97c05cb6f82e3c2777e8a76b0815f53116ea"><code>2d7b97c</code></a> Tweak sparse registry version regex and command not found</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/c7c759a5c949e48a79c7c2d040b368c63d20a50c"><code>c7c759a</code></a> New version with macOS fix</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/ba68a52e42acf0d808384638dacea8abaeb71cec"><code>ba68a52</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/10">#10</a> from actions-rust-lang/issue-9</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/40e33d4912eba9276a5b0f8c30aeea91d96ad414"><code>40e33d4</code></a> Install newer bash on macOS</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/8ba1b441e509f7774cce130be9dee396ec063cde"><code>8ba1b44</code></a> Run CI on more platforms</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/51b4f8316aae34b9b0429f577f98fba4cc05e066"><code>51b4f83</code></a> Bump version to 1.4.0</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/4605df10a0c1146e915b379f8ee0e253aa315439"><code>4605df1</code></a> Merge pull request <a href="https://github-redirect.dependabot.com/actions-rust-lang/setup-rust-toolchain/issues/8">#8</a> from actions-rust-lang/sparse-registry</li> <li><a href="https://github.com/actions-rust-lang/setup-rust-toolchain/commit/eac5ebb2ae42ae05276fa251ffd2cda36abe4cf9"><code>eac5ebb</code></a> Fix: Use acceptable crate name (lowercase)</li> <li>Additional commits viewable in <a href="https://github.com/actions-rust-lang/setup-rust-toolchain/compare/v1.3.7...v1.4.2">compare view</a></li> </ul> </details> <br /> [![Dependabot compatibility score](https://dependabot-badges.githubapp.com/badges/compatibility_score?dependency-name=actions-rust-lang/setup-rust-toolchain&package-manager=github_actions&previous-version=1.3.7&new-version=1.4.2)](https://docs.github.com/en/github/managing-security-vulnerabilities/about-dependabot-security-updates#about-compatibility-scores) Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) --- <details> <summary>Dependabot commands and options</summary> <br /> You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) </details> Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2023-02-20 20:22:52 +01:00
uses: actions-rust-lang/setup-rust-toolchain@v1.4.2
- name: Setup Nushell
uses: hustcer/setup-nu@v3
with:
version: 0.72.1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Release Nu Binary
id: nu
run: nu .github/workflows/release-pkg.nu
env:
OS: ${{ matrix.os }}
REF: ${{ github.ref }}
TARGET: ${{ matrix.target }}
_EXTRA_: ${{ matrix.extra }}
TARGET_RUSTFLAGS: ${{ matrix.target_rustflags }}
# REF: https://github.com/marketplace/actions/gh-release
- name: Publish Archive
2022-11-29 18:35:16 +01:00
uses: softprops/action-gh-release@v0.1.13
if: ${{ startsWith(github.ref, 'refs/tags/') }}
with:
draft: true
files: ${{ steps.nu.outputs.archive }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}