Skip to content

refactor: remove redundant db write #5

refactor: remove redundant db write

refactor: remove redundant db write #5

Workflow file for this run

name: Release on Tag
on:
push:
tags:
- "n42-v*.*.*"
workflow_dispatch:
env:
CARGO_TERM_COLOR: always
permissions:
contents: write # required for creating releases
jobs:
module-test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
with:
shared-key: "rust-build-cache"
cache-targets: true
#- name: Run cargo check
#run: cargo check --verbose
- name: Run tests
run: cargo test -p n42-testing
release:
name: Build and create release
runs-on: ubuntu-latest
needs: module-test # only run if the test job passes
steps:
- uses: actions/checkout@v4
- name: Install Rust toolchain
uses: dtolnay/rust-toolchain@master
with:
toolchain: stable
- name: Cache dependencies
uses: Swatinem/rust-cache@v2
with:
shared-key: "rust-build-cache"
cache-targets: true
- name: Build release binary
run: |
cargo build --release
cargo build --release -p mobile-sdk --example mobile-sdk-test
- uses: actions/upload-artifact@v4
with:
name: build-artifact
path: |
target/release/n42
target/release/examples/mobile-sdk-test
tests/
- name: Compress artifacts (tar.xz)
run: |
tar -cJf ${{ github.ref_name }}.tar.xz target/release/n42
- name: Upload binary via SCP
uses: appleboy/scp-action@v0.1.5
with:
host: ${{ secrets.SERVER_HOST }}
username: ${{ secrets.SERVER_USER }}
key: ${{ secrets.SERVER_SSH_KEY }}
port: 22
source: ${{ github.ref_name }}.tar.xz
target: "n42-releases/${{ github.ref_name }}/"
- name: Create GitHub Release
uses: softprops/action-gh-release@v2
with:
name: ${{ github.ref_name }}
tag_name: ${{ github.ref_name }}
files: |
${{ github.ref_name }}.tar.xz
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
e2e-test:
runs-on: ubuntu-latest
needs: release
steps:
- uses: actions/download-artifact@v4
with:
name: build-artifact
- run: |
chmod +x target/release/n42 target/release/examples/mobile-sdk-test
bash tests/e2e.sh