anchor.yml 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. name: Anchor Build
  2. on:
  3. pull_request:
  4. branches:
  5. - main
  6. jobs:
  7. build:
  8. runs-on: ubuntu-latest
  9. steps:
  10. - uses: actions/checkout@v2
  11. - name: Setup Node.js environment
  12. uses: actions/setup-node@v2.4.1
  13. with:
  14. node-version: '14.x'
  15. - name: Cache Node.js modules
  16. uses: actions/cache@v2
  17. with:
  18. path: ~/.npm
  19. key: ${{ runner.OS }}-node-${{ hashFiles('**/package-lock.json') }}
  20. restore-keys: |
  21. ${{ runner.OS }}-node-
  22. - name: Install dependencies
  23. run: |
  24. npm ci
  25. npm install -g @project-serum/anchor
  26. - name: Build Solana Programs
  27. run: |
  28. declare -a StringArray=(
  29. "basics/account-data/anchor"
  30. "basics/checking-accounts/anchor"
  31. "basics/close-account/anchor"
  32. "basics/counter/anchor"
  33. "basics/create-account/anchor"
  34. "basics/cross-program-invocation/anchor"
  35. "basics/hello-solana/anchor"
  36. "basics/pda-rent-payer/anchor"
  37. "basics/processing-instructions/anchor"
  38. "basics/program-derived-addresses/anchor"
  39. "basics/realloc/anchor"
  40. "basics/rent/anchor"
  41. "basics/repository-layout/anchor"
  42. "basics/transfer-sol/anchor"
  43. "compression/cnft-vault/anchor"
  44. "oracles/pyth/anchor"
  45. "tokens/create-token/anchor"
  46. "tokens/nft-minter/anchor"
  47. "tokens/pda-mint-authority/anchor"
  48. "tokens/spl-token-minter/anchor"
  49. "tokens/token-2022/basics/anchor"
  50. "tokens/transfer-tokens/anchor"
  51. )
  52. for val in "${StringArray[@]}"; do
  53. echo "Building $val..."
  54. cd $val
  55. anchor build
  56. cd - > /dev/null
  57. done