mirror of
https://github.com/redlib-org/redlib.git
synced 2025-04-05 22:17:41 +03:00
Container pipeline overhaul (#59)
* Simplified docker image building * minor name fix * Optimize container pipeline * Change config to redlib-org account * Added README push to Quay.io * Fixes
This commit is contained in:
parent
5de171b13a
commit
3f4526debe
5 changed files with 181 additions and 147 deletions
.github/workflows
75
.github/workflows/build-artifacts.yaml
vendored
Normal file
75
.github/workflows/build-artifacts.yaml
vendored
Normal file
|
@ -0,0 +1,75 @@
|
|||
name: Release Build
|
||||
|
||||
on:
|
||||
push:
|
||||
paths-ignore:
|
||||
- "*.md"
|
||||
- "compose.*"
|
||||
branches:
|
||||
- "main"
|
||||
|
||||
env:
|
||||
CARGO_TERM_COLOR: always
|
||||
|
||||
CARGO_TARGET_AARCH64_UNKNOWN_LINUX_MUSL_LINKER: aarch64-linux-gnu-gcc
|
||||
CC_aarch64_unknown_linux_musl: aarch64-linux-gnu-gcc
|
||||
CARGO_TARGET_ARMV7_UNKNOWN_LINUX_MUSLEABIHF_LINKER: arm-linux-gnueabihf-gcc
|
||||
CC_armv7_unknown_linux_musleabihf: arm-linux-gnueabihf-gcc
|
||||
|
||||
jobs:
|
||||
build:
|
||||
name: Rust project - latest
|
||||
runs-on: ubuntu-latest
|
||||
strategy:
|
||||
matrix:
|
||||
target:
|
||||
- x86_64-unknown-linux-musl
|
||||
- aarch64-unknown-linux-musl
|
||||
- armv7-unknown-linux-musleabihf
|
||||
steps:
|
||||
- uses: actions/checkout@v4
|
||||
|
||||
- uses: actions-rust-lang/setup-rust-toolchain@v1
|
||||
with:
|
||||
target: ${{ matrix.target }}
|
||||
|
||||
- if: matrix.target == 'x86_64-unknown-linux-musl'
|
||||
run: |
|
||||
sudo apt-get update
|
||||
sudo apt-get install -y --no-install-recommends musl-tools
|
||||
|
||||
- if: matrix.target == 'armv7-unknown-linux-musleabihf'
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y gcc-arm-linux-gnueabihf musl-tools
|
||||
|
||||
- if: matrix.target == 'aarch64-unknown-linux-musl'
|
||||
run: |
|
||||
sudo apt update
|
||||
sudo apt install -y gcc-aarch64-linux-gnu musl-tools
|
||||
|
||||
- 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: Build
|
||||
run: cargo build --release --target ${{ matrix.target }}
|
||||
|
||||
- name: Package release
|
||||
run: tar czf redlib-${{ matrix.target }}.tar.gz -C target/${{ matrix.target }}/release/ redlib
|
||||
|
||||
- name: Upload release
|
||||
uses: softprops/action-gh-release@v1
|
||||
if: github.base_ref != 'main' && github.event_name == 'release'
|
||||
with:
|
||||
tag_name: ${{ steps.version.outputs.VERSION }}
|
||||
name: ${{ steps.version.outputs.VERSION }} - ${{ github.event.head_commit.message }}
|
||||
draft: true
|
||||
files: |
|
||||
redlib-${{ matrix.target }}.tar.gz
|
||||
body: |
|
||||
- ${{ github.event.head_commit.message }} ${{ github.sha }}
|
||||
generate_release_notes: true
|
||||
|
||||
|
||||
|
Loading…
Add table
Add a link
Reference in a new issue