Standardize example documentation across all READMEs #7
This file contains hidden or 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: CI | |
| on: | |
| push: | |
| branches: [main] | |
| pull_request: | |
| branches: [main] | |
| jobs: | |
| compile: | |
| name: Compile Examples | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install Aptos CLI | |
| run: | | |
| curl -fsSL "https://aptos.dev/scripts/install_cli.py" | python3 | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - name: Compile all examples | |
| run: | | |
| packages=( | |
| "snippets/composable-nfts" | |
| "snippets/controlled-mint" | |
| "snippets/data-structures/heap" | |
| "snippets/design-patterns/autonomous-objects" | |
| "snippets/error-codes" | |
| "snippets/fa-lockup-example" | |
| "snippets/liquid-nfts" | |
| "snippets/lootbox" | |
| "snippets/modifying-nfts" | |
| "snippets/objects" | |
| "snippets/parallel-nfts" | |
| "snippets/private-vs-public/dice_roll" | |
| "snippets/private-vs-public/cheater" | |
| "snippets/prover" | |
| "snippets/storage" | |
| "snippets/struct-capabilities" | |
| ) | |
| failed=0 | |
| for pkg in "${packages[@]}"; do | |
| echo "::group::Compile $pkg" | |
| if (cd "$pkg" && aptos move compile --dev); then | |
| echo "::endgroup::" | |
| else | |
| echo "::endgroup::" | |
| echo "::error::Failed to compile $pkg" | |
| failed=1 | |
| fi | |
| done | |
| # fractional-token uses --named-addresses instead of --dev | |
| # due to broken TokenMinter dev-dependency | |
| echo "::group::Compile snippets/fractional-token" | |
| if (cd snippets/fractional-token && aptos move compile --named-addresses fraction_addr=0x1337,minter=0x2337); then | |
| echo "::endgroup::" | |
| else | |
| echo "::endgroup::" | |
| echo "::error::Failed to compile snippets/fractional-token" | |
| failed=1 | |
| fi | |
| exit $failed | |
| test: | |
| name: Test Examples | |
| runs-on: ubuntu-latest | |
| steps: | |
| - name: Checkout repository | |
| uses: actions/checkout@v4 | |
| - name: Install Aptos CLI | |
| run: | | |
| curl -fsSL "https://aptos.dev/scripts/install_cli.py" | python3 | |
| echo "$HOME/.local/bin" >> "$GITHUB_PATH" | |
| - name: Run tests | |
| run: | | |
| packages=( | |
| "snippets/data-structures/heap" | |
| "snippets/error-codes" | |
| "snippets/fa-lockup-example" | |
| "snippets/controlled-mint" | |
| ) | |
| failed=0 | |
| for pkg in "${packages[@]}"; do | |
| echo "::group::Test $pkg" | |
| if (cd "$pkg" && aptos move test --dev); then | |
| echo "::endgroup::" | |
| else | |
| echo "::endgroup::" | |
| echo "::error::Tests failed in $pkg" | |
| failed=1 | |
| fi | |
| done | |
| exit $failed |