|
@@ -1,39 +1,38 @@
|
|
|
-name: Seahorse Programs
|
|
|
+name: Seahorse Build
|
|
|
|
|
|
on:
|
|
|
- push:
|
|
|
- branches: ["main"]
|
|
|
pull_request:
|
|
|
- branches: ["main"]
|
|
|
-
|
|
|
-env:
|
|
|
- CARGO_TERM_COLOR: always
|
|
|
+ branches:
|
|
|
+ - main
|
|
|
|
|
|
jobs:
|
|
|
build:
|
|
|
- name: Build
|
|
|
runs-on: ubuntu-latest
|
|
|
- container:
|
|
|
- image: docker.io/solanadevelopers/solana-workshop-image-seahorse
|
|
|
- credentials:
|
|
|
- username: solanadevelopers
|
|
|
- password: ${{ secrets.DOCKER_CONTAINER_REGISTRY_TOKEN }}
|
|
|
- strategy:
|
|
|
- matrix:
|
|
|
- {
|
|
|
- dir:
|
|
|
- [
|
|
|
- "basics/counter/seahorse",
|
|
|
- "basics/hello-solana/seahorse",
|
|
|
- "basics/transfer-sol/seahorse",
|
|
|
- "oracles/pyth/seahorse",
|
|
|
- ],
|
|
|
- }
|
|
|
|
|
|
steps:
|
|
|
- - name: Checkout code
|
|
|
- uses: actions/checkout@v3
|
|
|
-
|
|
|
- - name: Build program
|
|
|
- working-directory: ${{ matrix.dir }}
|
|
|
- run: cargo build-sbf --verbose
|
|
|
+ - uses: actions/checkout@v2
|
|
|
+
|
|
|
+ - name: Install dependencies
|
|
|
+ run: |
|
|
|
+ sh -c "$(curl -sSfL https://release.solana.com/stable/install)"
|
|
|
+ export PATH="/home/runner/.local/share/solana/install/active_release/bin:$PATH"
|
|
|
+ solana -V
|
|
|
+ rustc -V
|
|
|
+ sudo apt-get update && sudo apt-get upgrade && sudo apt-get install -y pkg-config build-essential libudev-dev libssl-dev
|
|
|
+ cargo install --git https://github.com/coral-xyz/anchor avm --locked --force
|
|
|
+ avm install 0.27.0
|
|
|
+ avm use 0.27.0
|
|
|
+ cargo install seahorse-lang
|
|
|
+ declare -a StringArray=(
|
|
|
+ "basics/counter/seahorse"
|
|
|
+ "basics/hello-solana/seahorse"
|
|
|
+ "basics/transfer-sol/seahorse"
|
|
|
+ "oracles/pyth/seahorse"
|
|
|
+ )
|
|
|
+ for val in "${StringArray[@]}"; do
|
|
|
+ echo "Building $val..."
|
|
|
+ cd $val
|
|
|
+ seahorse build
|
|
|
+ cd - > /dev/null
|
|
|
+ done
|
|
|
+ shell: bash
|