MPL Core new plugins support (#196) #179
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: Build das api components | |
# This workflow uses github runners. | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.ref }} | |
cancel-in-progress: true | |
# This may be adjusted to whatever suits best your runners config. | |
# Current config will build on manual trigger or pull-request (each push) | |
on: | |
# pull_request can be removed, to save minutes on github runners | |
pull_request: | |
workflow_dispatch: | |
push: | |
branches: | |
- 'main' | |
env: | |
CARGO_TERM_COLOR: always | |
jobs: | |
build-api: | |
strategy: | |
matrix: | |
os: [ubuntu-20.04, ubuntu-22.04] | |
# This can be also be runned on self-hosted github runners | |
runs-on: ["${{ matrix.os }}"] | |
steps: | |
- name: checkout repo | |
uses: actions/checkout@v3 | |
# This step can be omited, to save storage space on the organization account | |
# Build process will take longer | |
- name: set build cache | |
uses: actions/cache@v3 | |
with: | |
path: | | |
~/.cargo/bin/ | |
~/.cargo/registry/index/ | |
~/.cargo/registry/cache/ | |
~/.cargo/git/db/ | |
digital-asset-rpc-infrastructure/target/ | |
key: ${{ matrix.os }}_digital-asset-rpc-infrastructure_${{ hashFiles('digital-asset-rpc-infrastructure/Cargo.lock') }} | |
restore-keys: | | |
${{ matrix.os }}_digital-asset-rpc-infrastructure | |
- name: build digital asset rpc infra | |
run: cargo build --verbose --release | |
- name: rename binaries for ubuntu22 release | |
if: matrix.os == 'ubuntu-22.04' | |
run: | | |
mv target/release/nft_ingester target/release/nft_ingester22 | |
mv target/release/fetch_trees target/release/fetch_trees22 | |
mv target/release/migration target/release/migration22 | |
mv target/release/das_api target/release/das_api22 | |
# This steps can be omited to save space, are mostly in place to validate binaries (manually) and path to them | |
# Omiting this will save on storage consumption on the account | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-22.04' | |
uses: actions/[email protected] | |
with: | |
name: nft_ingester22 | |
path: target/release/nft_ingester22 | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-22.04' | |
uses: actions/[email protected] | |
with: | |
name: das_api22 | |
path: target/release/das_api22 | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-22.04' | |
uses: actions/[email protected] | |
with: | |
name: migration22 | |
path: target/release/migration22 | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-22.04' | |
uses: actions/[email protected] | |
with: | |
name: fetch-trees22 | |
path: target/release/fetch_trees22 | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-20.04' | |
uses: actions/[email protected] | |
with: | |
name: nft_ingester | |
path: target/release/nft_ingester | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-20.04' | |
uses: actions/[email protected] | |
with: | |
name: das_api | |
path: target/release/das_api | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-20.04' | |
uses: actions/[email protected] | |
with: | |
name: migration | |
path: target/release/migration | |
- name: Publish artifact | |
if: matrix.os == 'ubuntu-20.04' | |
uses: actions/[email protected] | |
with: | |
name: fetch-trees | |
path: target/release/fetch_trees |