summaryrefslogtreecommitdiff
path: root/.github/workflows
diff options
context:
space:
mode:
authorCarpenter, Adam (CORP) <Adam.Carpenter@adp.com>2021-10-12 14:22:20 -0400
committerCarpenter, Adam (CORP) <Adam.Carpenter@adp.com>2021-10-12 14:22:20 -0400
commitd8aa76522cc078b5784c94843be37f2875ad5966 (patch)
treebc871deb1cc7011bb2da6aa6768fd44ca4609dcc /.github/workflows
parent816fc5d79bd9c3104363bcc8b575ad1576593260 (diff)
downloadaltruistic-angelshark-d8aa76522cc078b5784c94843be37f2875ad5966.tar.xz
altruistic-angelshark-d8aa76522cc078b5784c94843be37f2875ad5966.zip
ci: add github action, update readme
Diffstat (limited to '.github/workflows')
-rw-r--r--.github/workflows/publish.yml81
1 files changed, 81 insertions, 0 deletions
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644
index 0000000..1f92c63
--- /dev/null
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,81 @@
+name: Publish
+
+on:
+ push:
+ tags:
+ - "*"
+
+jobs:
+ publish:
+ name: ${{ matrix.target }}
+ runs-on: ${{ matrix.os }}
+ strategy:
+ matrix:
+ include:
+ - os: ubuntu-latest
+ target: x86_64-unknown-linux-gnu
+ use-cross: false
+
+ - os: ubuntu-latest
+ target: x86_64-unknown-linux-musl
+ use-cross: false
+
+ - os: windows-latest
+ target: x86_64-pc-windows-msvc
+ use-cross: false
+
+ - os: macos-latest
+ target: x86_64-apple-darwin
+ use-cross: false
+
+ steps:
+ - name: Checkout repository
+ uses: actions/checkout@v2
+ with:
+ fetch-depth: 1
+
+ - name: Set the version
+ id: version
+ run: echo ::set-output name=VERSION::${GITHUB_REF#refs/tags/}
+
+ - name: Install Rust
+ uses: actions-rs/toolchain@v1
+ with:
+ toolchain: stable
+ profile: minimal
+ override: true
+ target: ${{ matrix.target }}
+
+ - name: Build
+ uses: actions-rs/cargo@v1
+ with:
+ use-cross: ${{ matrix.use-cross }}
+ command: build
+ args:
+ --target ${{ matrix.target }} --release --locked --bin angelsharkcli
+
+ - name: Strip binary
+ if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
+ run: strip target/${{ matrix.target }}/release/angelsharkcli
+
+ - name: Upload nix binaries to release
+ if: matrix.os == 'ubuntu-latest' || matrix.os == 'macos-latest'
+ uses: svenstaro/upload-release-action@v1-release
+ with:
+ repo_token: ${{ secrets.GITHUB_TOKEN }}
+ file: target/${{ matrix.target }}/release/angelsharkcli
+ asset_name:
+ angelsharkcli-${{ steps.version.outputs.VERSION }}-${{ matrix.target
+ }}
+ tag: ${{ github.ref }}
+
+ - name: Upload Windows binaries to release
+ if: matrix.os == 'windows-latest'
+ uses: svenstaro/upload-release-action@v1-release
+ with:
+ repo_token: ${{ secrets.GITHUB_TOKEN }}
+ file: target/${{ matrix.target }}/release/angelsharkcli.exe
+ asset_name:
+ angelsharkcli-${{ steps.version.outputs.VERSION }}-${{ matrix.target
+ }}.exe
+ tag: ${{ github.ref }}