chore: algoutils v3 migration #73
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: Validate d-asa | |
on: | |
workflow_call: | |
pull_request: | |
# If not specified, types includes by default [opened, reopened, synchronize] | |
# This next line should be used in conjunction with the if statement that prevents CI jobs to run on draft PRs. | |
# ready_for_review is then added to make sure that a PR with no code change triggers CI if it's no longer a draft PR. | |
types: [ opened, reopened, synchronize, ready_for_review ] | |
permissions: | |
contents: read | |
jobs: | |
validate: | |
name: Validate d-asa | |
# Preventing a job from running on draft PRs. | |
if: '! github.event.pull_request.draft' | |
runs-on: "ubuntu-latest" | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v4 | |
- name: Set up AlgoKit | |
uses: ./.github/actions/algokit-setup | |
- name: Audit python dependencies | |
run: algokit project run audit | |
- name: Lint and format python dependencies | |
run: algokit project run lint | |
- name: Detect changes | |
uses: dorny/paths-filter@v3 | |
id: filter | |
with: | |
filters: | | |
base-d-asa: | |
- 'smart_contracts/_helpers/**' | |
- 'smart_contracts/artifacts/base_d_asa/**' | |
zero-coupon-bond: | |
- 'smart_contracts/_helpers/**' | |
- 'smart_contracts/artifacts/zero_coupon_bond/**' | |
fixed-coupon-bond: | |
- 'smart_contracts/_helpers/**' | |
- 'smart_contracts/artifacts/fixed_coupon_bond/**' | |
perpetual-bond: | |
- 'smart_contracts/_helpers/**' | |
- 'smart_contracts/artifacts/perpetual_bond/**' | |
test-base-d-asa: | |
- 'tests/conftest.py' | |
- 'tests/base_d_asa/**' | |
test-zero-coupon-bond: | |
- 'tests/conftest.py' | |
- 'tests/zero-coupon-bond/**' | |
test-fixed-coupon-bond: | |
- 'tests/conftest.py' | |
- 'tests/fixed_coupon_bond/**' | |
test-perpetual-bond: | |
- 'tests/conftest.py' | |
- 'tests/perpetual_bond/**' | |
- name: Run Base D-ASA tests | |
if: steps.filter.outputs.base-d-asa == 'true' || steps.filter.outputs.test-base-d-asa == 'true' | |
shell: bash | |
run: | | |
set -o pipefail | |
algokit project run test tests/base_d_asa | |
- name: Run Zero Coupon Bond tests | |
if: steps.filter.outputs.zero-coupon-bond == 'true' || steps.filter.outputs.test-zero-coupon-bond == 'true' | |
shell: bash | |
run: | | |
set -o pipefail | |
algokit project run test tests/zero_coupon_bond | |
- name: Run Fixed Coupon Bond tests | |
if: steps.filter.outputs.fixed-coupon-bond == 'true' || steps.filter.outputs.test-fixed-coupon-bond == 'true' | |
shell: bash | |
run: | | |
set -o pipefail | |
algokit project run test tests/fixed_coupon_bond | |
- name: Run Perpetual Bond tests | |
if: steps.filter.outputs.perpetual-bond == 'true' || steps.filter.outputs.test-perpetual-bond == 'true' | |
shell: bash | |
run: | | |
set -o pipefail | |
algokit project run test tests/perpetual_bond | |
- name: Build smart contracts | |
run: algokit project run build | |
- name: Check output stability of the smart contracts | |
run: algokit project run ci-teal-diff | |
- name: Run deployer against LocalNet | |
run: algokit project deploy localnet |