Skip to content

make banner more searchable #8

make banner more searchable

make banner more searchable #8

Workflow file for this run

---
name: CI
on:
workflow_dispatch:
push:
branches:
- development
- main
- ci-*
pull_request:
types:
- opened
- reopened
- synchronize
merge_group:
env:
nightly_toolchain: nightly-2023-06-12
stable_toolchain: stable
CARGO_HTTP_MULTIPLEXING: false
CARGO_TERM_COLOR: always
PROTOC: protoc
TERM: unknown
jobs:
fmt:
name: fmt
runs-on: [ self-hosted, ubuntu-high-cpu ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.nightly_toolchain }}
components: rustfmt
override: true
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev \
curl \
wget \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev
- name: wasm target install
run: rustup target add wasm32-unknown-unknown
- name: cargo fmt
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check
clippy:
name: clippy
runs-on: [ self-hosted, ubuntu-high-cpu ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.stable_toolchain }}
components: clippy
override: true
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev \
curl \
wget \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev
- uses: rui314/setup-mold@v1
- name: wasm target install
run: rustup target add wasm32-unknown-unknown
- name: Install cargo-lints
uses: actions-rs/cargo@v1
with:
command: install
args: cargo-lints
- name: Clippy check (with lints)
uses: actions-rs/cargo@v1
with:
command: lints
args: clippy --all-targets --all-features
build:
name: check nightly
runs-on: [ self-hosted, ubuntu-high-cpu ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.nightly_toolchain }}
profile: minimal
override: true
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev \
curl \
wget \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev
- uses: rui314/setup-mold@v1
- name: wasm target install
run: rustup target add wasm32-unknown-unknown
- name: cargo check
uses: actions-rs/cargo@v1
with:
command: check
args: --release --all-features --all-targets
build-stable:
name: check stable
runs-on: [ self-hosted, ubuntu-high-cpu ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true
- uses: Swatinem/rust-cache@v2
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
curl \
wget \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev
- uses: rui314/setup-mold@v1
- name: wasm target install
run: rustup target add wasm32-unknown-unknown
- name: rustup show
run: |
rustup show
- name: cargo check
uses: actions-rs/cargo@v1
with:
command: check
args: --release --all-targets --locked
licenses:
name: file licenses
runs-on: [ ubuntu-20.04 ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: install ripgrep
run: |
wget https://github.com/BurntSushi/ripgrep/releases/download/13.0.0/ripgrep_13.0.0_amd64.deb
sudo dpkg -i ripgrep_13.0.0_amd64.deb
rg --version || exit 1
- name: run the license check
run: ./scripts/file_license_check.sh
test:
name: test
runs-on: [ self-hosted, ubuntu-high-cpu ]
steps:
- name: checkout
uses: actions/checkout@v4
- name: toolchain
uses: actions-rs/toolchain@v1
with:
toolchain: ${{ env.stable_toolchain }}
- name: ubuntu dependencies
run: |
sudo apt-get update && \
sudo apt-get -y install \
build-essential \
libgtk-3-dev \
libwebkit2gtk-4.0-dev \
libsoup2.4-dev \
pkg-config \
libssl-dev \
sqlite3 \
libsqlite3-dev \
curl \
wget \
libappindicator3-dev \
patchelf \
librsvg2-dev \
libprotobuf-dev \
protobuf-compiler
- uses: rui314/setup-mold@v1
- name: wasm target install
run: rustup target add wasm32-unknown-unknown
- name: Install cargo-nextest
run: cargo install cargo-nextest --locked
- name: cargo test compile
uses: actions-rs/cargo@v1
with:
command: test
args: --no-run --locked --all-features --release
- name: cargo test
run: cargo nextest run --all-features --release -E "not package(integration_tests)" --profile ci
- name: upload artifact
uses: actions/upload-artifact@v3 # upload test results as artifact
if: success() || failure()
with:
name: test-results
path: ${{ github.workspace }}/target/nextest/ci/junit.xml
- name: cargo test cucumber
uses: actions-rs/cargo@v1
with:
command: test
args: --all-features --release --package integration_tests
- name: upload test result artifact
uses: actions/upload-artifact@v3 # upload test results as artifact
if: success() || failure()
with:
name: cucumber-test-results
path: ${{ github.workspace }}/integration_tests/cucumber-output-junit.xml
- name: Upload cucumber log artifacts
uses: actions/upload-artifact@v3
if: success() || failure()
with:
name: cucumber-log-artifacts
path: ${{ github.workspace }}/integration_tests/tests/temp/cucumber_*/*.log
# needed for test results
event_file:
runs-on: ubuntu-latest
steps:
- name: Upload
uses: actions/upload-artifact@v3
with:
name: Event File
path: ${{ github.event_path }}