summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTom Forbes <tom@tomforb.es>2023-05-24 15:38:20 +0100
committerTom Forbes <tom@tomforb.es>2023-05-24 16:07:07 +0100
commite1f356d1113924d540beeb19eca9accc48726e66 (patch)
treefb4b3ecd18fd6ea5f792bf9b799bfe6609e34dca
parentb4de9c47c67b11ceda3ddcbaf14260d61dfc9135 (diff)
Use a better release workflowtest-better-releases
-rw-r--r--.github/workflows/test.yml41
1 files changed, 30 insertions, 11 deletions
diff --git a/.github/workflows/test.yml b/.github/workflows/test.yml
index 261718c..184bd37 100644
--- a/.github/workflows/test.yml
+++ b/.github/workflows/test.yml
@@ -32,15 +32,17 @@ jobs:
env:
RUST_BACKTRACE: "1"
steps:
- - uses: actions/checkout@master
+ - uses: actions/checkout@v3
- name: Install Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
+ - uses: Swatinem/rust-cache@v2
+ with:
+ prefix-key: standard-build-${{ matrix.os }}-
- # Caching:
- name: Run tests
uses: actions-rs/cargo@v1
with:
@@ -71,14 +73,12 @@ jobs:
tar czvf ../../${{ matrix.name }} ${{ matrix.bin }}
fi
cd -
- - name: Publish
- uses: softprops/action-gh-release@v1
+ - name: Archive binaries
+ uses: actions/upload-artifact@v3
if: startsWith(github.ref, 'refs/tags/')
with:
- draft: false
- files: 'gping*'
- env:
- GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ name: build-${{ matrix.name }}
+ path: ${{ matrix.name }}
test_alpine:
name: Test in Alpine
@@ -86,7 +86,7 @@ jobs:
container:
image: alpine:latest
steps:
- - uses: actions/checkout@master
+ - uses: actions/checkout@v3
- run: apk add libgcc gcc musl-dev
- name: Install Rust
@@ -147,12 +147,31 @@ jobs:
cd target/${{ matrix.target }}/release/
tar czvf ../../../gping-${{ matrix.target }}.tar.gz gping
cd -
+ - name: Archive production artifacts
+ uses: actions/upload-artifact@v3
+ if: startsWith(github.ref, 'refs/tags/')
+ with:
+ name: build-${{ matrix.target }}
+ path: |
+ gping*.tar.gz
+ gping*.zip
+
+ create_release:
+ name: Release
+ runs-on: ubuntu-latest
+ if: startsWith(github.ref, 'refs/tags/')
+ needs:
+ - cross_builds
+ - build_and_test
+ steps:
+ - uses: actions/download-artifact@v3
- name: Publish
uses: softprops/action-gh-release@v1
- if: startsWith(github.ref, 'refs/tags/')
with:
draft: false
- files: 'gping*'
+ files: |
+ **/*.tar.gz
+ **/*.zip
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}