feat(outbox): implement outbox queue on transaction #1684
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Continuous Integration | |
on: | |
pull_request: | |
push: | |
branches: [main] | |
jobs: | |
commitlint: | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: wagoid/commitlint-github-action@v6 | |
fmt: | |
name: Format | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/[email protected] | |
- name: Rust setup | |
# FIXME: Once rustup adds a command to install a toolchain from rust-toolchain.toml, we can remove this. | |
run: rustup toolchain add 1.73.0 --profile minimal | |
- uses: luisnquin/[email protected] | |
- name: Format (rustfmt) | |
run: make fmt-rust-check | |
- name: Format (prettier) | |
run: npx prettier --check . | |
- name: Format (Nix) | |
run: make fmt-nix-check | |
# FIXME(https://linear.app/tezos/issue/JSTZ-49): | |
# Add build and tests for LIGO contracts | |
build-rust: | |
name: Build (Cargo) | |
runs-on: ubuntu-latest | |
needs: [commitlint, fmt] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: Swatinem/[email protected] | |
- name: Rust setup | |
# FIXME: Once rustup adds a command to install a toolchain from rust-toolchain.toml, we can remove this. | |
run: rustup toolchain add 1.73.0 --profile minimal --component llvm-tools-preview | |
- uses: taiki-e/install-action@cargo-llvm-cov | |
- uses: taiki-e/install-action@nextest | |
- name: Lint | |
run: make lint | |
- name: Prevent blst | |
run: sh -c '[ -z "$(cargo tree | grep blst)" ]' | |
- name: Build all packages | |
# PROFILE=dev is used to build the dev profile, which is used for testing | |
# (to avoid building both a release and a debug profile in CI). | |
run: PROFILE=dev make build | |
- name: Run unit tests (and generate coverage) | |
run: make ci-cov | |
- name: Upload coverage to Codecov | |
uses: codecov/[email protected] | |
with: | |
files: codecov.json | |
fail_ci_if_error: true | |
env: | |
CODECOV_TOKEN: ${{ secrets.CODECOV_TOKEN }} | |
build-docs: | |
name: Build Documentation | |
runs-on: ubuntu-latest | |
needs: [commitlint, fmt] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: npm | |
- name: Get npm cache directory | |
id: npm-cache-dir | |
shell: bash | |
run: echo "dir=$(npm config get cache)" >> ${GITHUB_OUTPUT} | |
- name: Configure npm cache | |
uses: actions/cache@v4 | |
id: npm-cache | |
with: | |
path: ${{ steps.npm-cache-dir.outputs.dir }} | |
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- run: npm ci | |
- name: Build with VitePress | |
run: npm run docs:build | |
build-sdk: | |
name: Build TypeScript SDK | |
runs-on: ubuntu-latest | |
needs: [commitlint, fmt] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: actions/setup-node@v4 | |
with: | |
node-version: 18 | |
cache: npm | |
- name: Get npm cache directory | |
id: npm-cache-dir | |
shell: bash | |
run: echo "dir=$(npm config get cache)" >> ${GITHUB_OUTPUT} | |
- name: Configure npm cache | |
uses: actions/cache@v4 | |
id: npm-cache | |
with: | |
path: ${{ steps.npm-cache-dir.outputs.dir }} | |
key: ${{ runner.os }}-node-${{ hashFiles('**/package-lock.json') }} | |
restore-keys: | | |
${{ runner.os }}-node- | |
- run: npm ci | |
- name: Build | |
run: cd packages/jstz && npm run build | |
build-nix: | |
name: Build (Nix) | |
runs-on: ubuntu-latest | |
needs: [build-rust, build-sdk, build-docs] | |
steps: | |
- uses: actions/checkout@v4 | |
- uses: cachix/install-nix-action@V27 | |
with: | |
nix_path: nixpkgs=channel:nixos-unstable | |
- uses: cachix/cachix-action@v15 | |
with: | |
name: trilitech-jstz | |
authToken: "${{ secrets.CACHIX_AUTH_TOKEN }}" | |
- name: Build Shell | |
run: nix develop --command bash -c "echo 'Hello World'" | |
- name: Build | |
run: nix build -j auto |