浏览代码

add foundry and forge dep in
ci workflows

nidhi-singh02 3 月之前
父节点
当前提交
b58f29ccb3
共有 3 个文件被更改,包括 24 次插入1 次删除
  1. 7 0
      .github/workflows/ci-turbo-build.yml
  2. 8 0
      .github/workflows/ci-turbo-test.yml
  3. 9 1
      .github/workflows/publish-js.yml

+ 7 - 0
.github/workflows/ci-turbo-build.yml

@@ -26,10 +26,17 @@ jobs:
       # precompiled binary isn't found.
       - name: Install libusb
         run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev libudev-dev
+      # Install Foundry for Ethereum contract builds
+      - name: Install Foundry
+        uses: foundry-rs/foundry-toolchain@v1
+        with:
+          version: v0.3.0
       - uses: pnpm/action-setup@v4
         name: Install pnpm
         with:
           run_install: true
+      - name: Install Forge dependencies
+        run: cd target_chains/ethereum/contracts && pnpm run install-forge-deps
       - name: Cache for Turbo
         uses: rharkor/caching-for-turbo@v1.5
       - name: Build

+ 8 - 0
.github/workflows/ci-turbo-test.yml

@@ -17,6 +17,7 @@ jobs:
     runs-on: ubuntu-latest
     steps:
       - uses: actions/checkout@v4
+      - uses: actions-rust-lang/setup-rust-toolchain@v1
       - uses: actions/setup-node@v4
         with:
           node-version-file: "package.json"
@@ -25,10 +26,17 @@ jobs:
       # precompiled binary isn't found.
       - name: Install libusb
         run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev libudev-dev
+      # Install Foundry for Ethereum contract tests
+      - name: Install Foundry
+        uses: foundry-rs/foundry-toolchain@v1
+        with:
+          version: v0.3.0
       - uses: pnpm/action-setup@v4
         name: Install pnpm
         with:
           run_install: true
+      - name: Install Forge dependencies
+        run: cd target_chains/ethereum/contracts && pnpm run install-forge-deps
       - name: Cache for Turbo
         uses: rharkor/caching-for-turbo@v1.5
       - name: Test

+ 9 - 1
.github/workflows/publish-js.yml

@@ -9,7 +9,8 @@ jobs:
     name: Publish Javascript Packages to NPM
     runs-on: ubuntu-latest
     steps:
-      - uses: actions/checkout@v2
+      - uses: actions/checkout@v4
+      - uses: actions-rust-lang/setup-rust-toolchain@v1
       - uses: actions/setup-node@v4
         with:
           node-version-file: "package.json"
@@ -18,10 +19,17 @@ jobs:
       # precompiled binary isn't found.
       - name: Install libusb
         run: sudo apt-get update && sudo apt-get install -y libusb-1.0-0-dev libudev-dev
+      # Install Foundry for Ethereum contract builds
+      - name: Install Foundry
+        uses: foundry-rs/foundry-toolchain@v1
+        with:
+          version: v0.3.0
       - uses: pnpm/action-setup@v4
         name: Install pnpm
         with:
           run_install: true
+      - name: Install Forge dependencies
+        run: cd target_chains/ethereum/contracts && pnpm run install-forge-deps
       - name: Set publishing config
         run: pnpm config set '//registry.npmjs.org/:_authToken' "${NODE_AUTH_TOKEN}"
         env: