Solana Anchor 테스트를 실행하기 위한 Github 액션 생성
이 기사에서는 Anchor 프로그램 테스트를 실행할 GitHub Action을 생성하는 방법을 다룰 것입니다!
앵커 Github 작업
먼저 다음을 포함하는 프로젝트 루트
action.yml
에 .github/workflows/action.yml
파일을 만듭니다.name: Solana Action name
on:
push:
branches: [main]
env:
SOLANA_VERSION: v1.9.9
ANCHOR_VERSION: 0.24.2
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Use Node.js
- uses: actions/setup-node@v3
with:
node-version: 16.14.2
cache: "npm"
- run: npm install
- run: curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
shell: bash
- run: echo "/home/runner/.cargo/bin" >> $GITHUB_PATH
shell: bash
- run: curl -sSfL https://release.solana.com/$SOLANA_VERSION/install | sh
shell: bash
- run: echo "/home/runner/.local/share/solana/install/active_release/bin" >> $GITHUB_PATH
shell: bash
- run: npm i -g @project-serum/anchor-cli@$ANCHOR_VERSION ts-mocha typescript
- run: anchor test
먼저 mocha로 테스트를 실행할 것을 고려하여 Node.JS 환경에
actions/setup-node@v3
를 사용합니다.그런 다음
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
를 실행하여 Rust를 설치합니다.다음은
curl -sSfL https://release.solana.com/$SOLANA_VERSION/install | sh
가 포함된 Solana CLI입니다.마지막 의존성은 Anchor CLI와 ts-mocha입니다.
테스트를 실행하기 위해
anchor test
를 실행합니다.Anchor.toml
테스트를 실행할 로컬 Solana 유효성 검사기를 생성하도록 Anchor.toml 파일을 올바르게 설정하는 것이 중요합니다. 샘플 Anchor.toml 파일을 살펴보겠습니다.
declare_id!
매크로와 Anchor.toml의 주소가 일치하는지 확인하십시오.[programs.localnet]
sample_program = "3ZALfG4NyQgxy2SWjSiQoUyBPEvXT2xo7rKc5hPYYJ7z"
[registry]
url = "https://anchor.projectserum.com"
[provider]
cluster = "localnet"
wallet = "/home/solana/my_wallet.json"
[scripts]
test = "npx run ts-mocha -p ./tsconfig.json -t 1000000 tests/**/*.ts"
결론
이 기사에서 우리는 Anchor.toml 파일이 어떻게 되어야 하는지 뿐만 아니라 로컬/테스트 Solana 검증자에 대해 Anchor 테스트를 실행할 Github Action을 작성하는 방법을 보았습니다.
그게 다야! 즐거우셨기를 바랍니다. 행복한 코딩하세요!
Reference
이 문제에 관하여(Solana Anchor 테스트를 실행하기 위한 Github 액션 생성), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lazar955/create-a-github-action-to-run-solana-anchor-tests-5f5l텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)