-
Notifications
You must be signed in to change notification settings - Fork 39
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
* Updating test workflow * Adding some annotations * Fixing path issue. * Fixing fetch_trees name * Adding push condition * Main (#104) * Fix raw name build (#122) * Added fetch trees tool (#123) Fetches a list of trees from an RPC endpoint. --------- Co-authored-by: Linus Kendall <[email protected]> --------- Co-authored-by: Linus Kendall <[email protected]>
- Loading branch information
1 parent
f3ad34b
commit 53c3257
Showing
1 changed file
with
109 additions
and
19 deletions.
There are no files selected for viewing
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
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,31 +1,121 @@ | ||
name: Build & Test | ||
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: | ||
push: | ||
# pull_request can be removed, to save minutes on github runners | ||
pull_request: | ||
workflow_dispatch: | ||
push: | ||
branches: | ||
- main | ||
- 'main' | ||
|
||
env: | ||
RUST_TOOLCHAIN: stable | ||
CARGO_TERM_COLOR: always | ||
|
||
jobs: | ||
build-api: | ||
runs-on: buildjet-4vcpu-ubuntu-2204 | ||
steps: | ||
- uses: actions/checkout@v3 | ||
- name: Build | ||
run: | | ||
cd das_api | ||
cargo build | ||
shell: bash | ||
build-ingest: | ||
runs-on: buildjet-8vcpu-ubuntu-2204 | ||
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: | ||
- uses: actions/checkout@v3 | ||
- name: Build | ||
- 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: build das_api | ||
working-directory: das_api | ||
run: cargo build --verbose --release | ||
|
||
- name: build migration | ||
working-directory: migration | ||
run: cargo build --verbose --release | ||
|
||
- name: rename binaries for ubuntu22 release | ||
if: matrix.os == 'ubuntu-22.04' | ||
run: | | ||
cd nft_ingester | ||
cargo build | ||
shell: bash | ||
mv target/release/nft_ingester target/release/nft_ingester22 | ||
mv target/release/fetch_trees target/release/fetch_trees22 | ||
mv das_api/target/release/das_api das_api/target/release/das_api22 | ||
mv migration/target/release/migration migration/target/release/migration22 | ||
# 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: das_api/target/release/das_api22 | ||
|
||
- name: Publish artifact | ||
if: matrix.os == 'ubuntu-22.04' | ||
uses: actions/[email protected] | ||
with: | ||
name: migration22 | ||
path: migration/target/release/migration22 | ||
|
||
- name: Publish artifact | ||
if: matrix.os == 'ubuntu-22.04' | ||
uses: actions/[email protected] | ||
with: | ||
name: fetch-trees22 | ||
path: migration/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: das_api/target/release/das_api | ||
|
||
- name: Publish artifact | ||
if: matrix.os == 'ubuntu-20.04' | ||
uses: actions/[email protected] | ||
with: | ||
name: migration | ||
path: migration/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 |