Skip to content

Slashng improvements #134

Slashng improvements

Slashng improvements #134

Workflow file for this run

# .github/workflows/workflow_musl.yaml
name: Rust CI - MUSL
on:
push:
branches: [ "listener-refined", "symbotic-bindings" ]
pull_request:
branches: [ "listener-refined", "symbotic-bindings" ]
jobs:
check:
name: Check (MUSL)
runs-on: ubuntu-latest
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true
- name: Install musl target
run: rustup target add x86_64-unknown-linux-musl
- name: Install musl-tools
run: sudo apt-get update && sudo apt-get install -y musl-tools
- name: Cache Cargo registry
uses: actions/cache@v3
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-registry-
- name: Cache Cargo git index
uses: actions/cache@v3
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-git-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-git-
- name: Cache Cargo build
uses: actions/cache@v3
with:
path: target
key: ${{ runner.os }}-cargo-build-musl-${{ hashFiles('**/Cargo.lock') }}-v2
restore-keys: |
${{ runner.os }}-cargo-build-musl-
${{ runner.os }}-cargo-build-
- name: Remove .cargo/config.toml if exists
run: rm -f .cargo/config.toml
- name: Update dependencies
run: cargo update
test:
name: Test Suite (MUSL)
runs-on: ubuntu-latest
needs: check
steps:
- name: Checkout sources
uses: actions/checkout@v3
- name: Install stable toolchain
uses: actions-rs/toolchain@v1
with:
profile: minimal
toolchain: stable
override: true
- name: Install musl target
run: rustup target add x86_64-unknown-linux-musl
- name: Install musl-tools
run: sudo apt-get update && sudo apt-get install -y musl-tools
- name: Cache Cargo registry
uses: actions/cache@v3
with:
path: ~/.cargo/registry
key: ${{ runner.os }}-cargo-registry-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-registry-
- name: Cache Cargo git index
uses: actions/cache@v3
with:
path: ~/.cargo/git
key: ${{ runner.os }}-cargo-git-${{ hashFiles('**/Cargo.lock') }}
restore-keys: |
${{ runner.os }}-cargo-git-
- name: Cache Cargo build
uses: actions/cache@v3
with:
path: target
key: ${{ runner.os }}-cargo-build-musl-${{ hashFiles('**/Cargo.lock') }}-v2
restore-keys: |
${{ runner.os }}-cargo-build-musl-
${{ runner.os }}-cargo-build-
- name: Remove .cargo/config.toml if exists
run: rm -f .cargo/config.toml
- name: Update dependencies
run: cargo update
- name: Verify Installed Targets
run: rustup target list --installed
- name: Run cargo test
env:
RUST_BACKTRACE: 1
run: cargo test --target x86_64-unknown-linux-musl
- name: Build Release
run: cargo build --release --target x86_64-unknown-linux-musl
- name: upx
run: |
wget https://github.com/upx/upx/releases/download/v4.2.4/upx-4.2.4-amd64_linux.tar.xz -O upx.txz
mkdir -p upx && tar -xvf upx.txz --strip-components=1 -C upx
sudo mv upx/upx /usr/local/bin/
- name: upload kalypso-cli
run: |
sudo upx kalypso-unified/target/x86_64-unknown-linux-musl/release/kalypso-cli
AWS_ACCESS_KEY_ID=${{secrets.AWS_ACCESS_KEY_ID}} AWS_SECRET_ACCESS_KEY=${{secrets.AWS_SECRET_ACCESS_KEY}} aws s3 cp --endpoint-url ${{secrets.AWS_S3_ENDPOINT}} kalypso-cli/target/x86_64-unknown-linux-musl/release/kalypso-cli s3://artifacts/kalypso/binaries/kalypso-cli-musl