Add MUSL builds to GH Actions and fix Release event trigger (#810)
This commit is contained in:
parent
97f0f69059
commit
0c74305617
1 changed files with 37 additions and 15 deletions
52
.github/workflows/main-rust.yml
vendored
52
.github/workflows/main-rust.yml
vendored
|
@ -31,32 +31,51 @@ jobs:
|
||||||
with:
|
with:
|
||||||
toolchain: stable
|
toolchain: stable
|
||||||
|
|
||||||
|
# Building actions
|
||||||
- name: Build
|
- name: Build
|
||||||
run: cargo build --release
|
run: cargo build --release
|
||||||
|
|
||||||
- name: Publish to crates.io
|
|
||||||
if: github.event_name == 'release'
|
|
||||||
run: cargo publish --no-verify --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
|
||||||
|
|
||||||
- uses: actions/upload-artifact@v3
|
|
||||||
name: Upload a Build Artifact
|
|
||||||
with:
|
|
||||||
name: libreddit
|
|
||||||
path: target/release/libreddit
|
|
||||||
|
|
||||||
- name: Versions
|
|
||||||
id: version
|
|
||||||
run: echo "VERSION=$(cargo metadata --format-version 1 --no-deps | jq .packages[0].version -r | sed 's/^/v/')" >> "$GITHUB_OUTPUT"
|
|
||||||
|
|
||||||
- name: Calculate SHA512 checksum
|
- name: Calculate SHA512 checksum
|
||||||
run: sha512sum target/release/libreddit > libreddit.sha512
|
run: sha512sum target/release/libreddit > libreddit.sha512
|
||||||
|
|
||||||
- name: Calculate SHA256 checksum
|
- name: Calculate SHA256 checksum
|
||||||
run: sha256sum target/release/libreddit > libreddit.sha256
|
run: sha256sum target/release/libreddit > libreddit.sha256
|
||||||
|
|
||||||
|
- name: Build MUSL
|
||||||
|
run: cargo build --release --target x86_64-unknown-linux-musl
|
||||||
|
|
||||||
|
- name: Calculate MUSL SHA512 checksum
|
||||||
|
run: sha512sum target/x86_64-unknown-linux-musl/release/libreddit > libreddit-musl.sha512
|
||||||
|
|
||||||
|
- name: Calculate MUSL SHA256 checksum
|
||||||
|
run: sha256sum target/x86_64-unknown-linux-musl/release/libreddit > libreddit-musl.sha256
|
||||||
|
|
||||||
|
- name: Move MUSL binary
|
||||||
|
run: mv target/x86_64-unknown-linux-musl/release/libreddit target/x86_64-unknown-linux-musl/release/libreddit-musl
|
||||||
|
|
||||||
|
- uses: actions/upload-artifact@v3
|
||||||
|
name: Upload a Build Artifact
|
||||||
|
with:
|
||||||
|
name: libreddit
|
||||||
|
path: |
|
||||||
|
target/release/libreddit
|
||||||
|
target/x86_64-unknown-linux-musl/release/libreddit-musl
|
||||||
|
*.sha512
|
||||||
|
*.sha256
|
||||||
|
|
||||||
|
- name: Versions
|
||||||
|
id: version
|
||||||
|
run: echo "VERSION=$(cargo metadata --format-version 1 --no-deps | jq .packages[0].version -r | sed 's/^/v/')" >> "$GITHUB_OUTPUT"
|
||||||
|
|
||||||
|
# Publishing actions
|
||||||
|
|
||||||
|
- name: Publish to crates.io
|
||||||
|
if: github.event_name == 'release'
|
||||||
|
run: cargo publish --no-verify --token ${{ secrets.CARGO_REGISTRY_TOKEN }}
|
||||||
|
|
||||||
- name: Release
|
- name: Release
|
||||||
uses: softprops/action-gh-release@v1
|
uses: softprops/action-gh-release@v1
|
||||||
if: github.base_ref != 'master'
|
if: github.base_ref != 'master' && github.event_name == 'release'
|
||||||
with:
|
with:
|
||||||
tag_name: ${{ steps.version.outputs.VERSION }}
|
tag_name: ${{ steps.version.outputs.VERSION }}
|
||||||
name: ${{ steps.version.outputs.VERSION }} - ${{ github.event.head_commit.message }}
|
name: ${{ steps.version.outputs.VERSION }} - ${{ github.event.head_commit.message }}
|
||||||
|
@ -65,6 +84,9 @@ jobs:
|
||||||
target/release/libreddit
|
target/release/libreddit
|
||||||
libreddit.sha512
|
libreddit.sha512
|
||||||
libreddit.sha256
|
libreddit.sha256
|
||||||
|
target/x86_64-unknown-linux-musl/release/libreddit-musl
|
||||||
|
libreddit-musl.sha512
|
||||||
|
libreddit-musl.sha256
|
||||||
body: |
|
body: |
|
||||||
- ${{ github.event.head_commit.message }} ${{ github.sha }}
|
- ${{ github.event.head_commit.message }} ${{ github.sha }}
|
||||||
generate_release_notes: true
|
generate_release_notes: true
|
||||||
|
|
Loading…
Reference in a new issue