From 27621670a1f94fd594142f47b75a6a9a0f69aaf0 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 10:30:59 -0300 Subject: [PATCH 01/23] add release and artifact upload to ci, separate testing --- .github/workflows/contracts-build.yml | 88 ++++++++++++++++++++++++--- .github/workflows/contracts-test.yml | 27 ++++++++ 2 files changed, 106 insertions(+), 9 deletions(-) create mode 100644 .github/workflows/contracts-test.yml diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index 957c37494..cdbefed12 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -1,33 +1,103 @@ -name: TON - Contracts +name: TON - Contracts - Build & Release + +permissions: + contents: read on: push: - branches: - - main + branches: [ main ] pull_request: + workflow_dispatch: jobs: - build-check: - name: Build & Unit Test + changes: + name: Detect changes + runs-on: ubuntu-latest + outputs: + ton_changes: ${{ steps.changes.outputs.ton_changes }} + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + persist-credentials: false + - name: Detect changes + id: changes + uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 + with: + list-files: "shell" + filters: | + ton_changes: + - 'contracts/**' + - '.github/workflows/ton-contracts-build.yml' + + build: + name: Build contracts + needs: [ changes ] + if: ${{ needs.changes.outputs.ton_changes == 'true' }} runs-on: ubuntu-latest steps: - name: Check out code uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + with: + fetch-depth: 0 + + - name: Get Long and Short SHAs + id: get_sha + run: | + set -euo pipefail + TARGET_SHA="${{ github.event_name == 'workflow_dispatch' && github.event.inputs.sha || github.sha }}" + FULL_SHA="$(git rev-parse "${TARGET_SHA}")" + { + echo "short_sha=${FULL_SHA:0:12}" + echo "full_sha=${FULL_SHA}" + } >> "$GITHUB_OUTPUT" - name: Install Nix uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 with: nix_path: nixpkgs=channel:nixos-unstable - - name: Run build + - name: Build (yarn) run: | + set -euo pipefail pushd contracts nix develop .#contracts -c yarn && yarn build + popd - - name: Run tests + - name: Package build outputs + id: package run: | - pushd contracts - nix develop .#contracts -c yarn test + set -euo pipefail + mkdir -p dist + TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" + # Tar only the contents of contracts/build (keeps clean top-level inside archive) + tar -C contracts -czf "dist/${TAR_NAME}" build + echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" + + # Always upload artifact for PRs / debugging + - name: Upload artifact + uses: actions/upload-artifact@v4 + with: + name: ${{ steps.get_sha.outputs.short_sha }}-ton-contracts-build + path: ${{ steps.package.outputs.tar_path }} + if-no-files-found: error + retention-days: 14 + + # Create a release ONLY for push to main + - name: Publish Release + if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} + uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + tag_name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} + target_commitish: ${{ steps.get_sha.outputs.full_sha }} + name: TON Contracts Build (${{ steps.get_sha.outputs.short_sha }}) + draft: false + prerelease: false + files: | + ${{ steps.package.outputs.tar_path }} + permissions: + contents: write build-nixpkg: name: Build nix package diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml new file mode 100644 index 000000000..f5d913f6d --- /dev/null +++ b/.github/workflows/contracts-test.yml @@ -0,0 +1,27 @@ +name: TON - Contracts - Test + +on: + push: + branches: + - main + pull_request: + +jobs: + test: + name: Build & Unit Test + runs-on: ubuntu-latest + steps: + - name: Check out code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + + - name: Install Nix + uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 + with: + nix_path: nixpkgs=channel:nixos-unstable + + - name: Run tests + run: | + pushd contracts + nix develop .#contracts -c yarn && yarn test + + From aa3a17af2dffdd73e06b214c8dd94b29cac34c45 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 10:44:17 -0300 Subject: [PATCH 02/23] fix workflow path on detect changes --- .github/workflows/contracts-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index cdbefed12..db1cfcd91 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -28,7 +28,7 @@ jobs: filters: | ton_changes: - 'contracts/**' - - '.github/workflows/ton-contracts-build.yml' + - '.github/workflows/contracts-build.yml' build: name: Build contracts From fd5f4bcff6deb27195c6ab37f1479ac3b8a535a5 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 10:44:45 -0300 Subject: [PATCH 03/23] try fix for error on contracts test --- .github/workflows/contracts-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml index f5d913f6d..ad15c869f 100644 --- a/.github/workflows/contracts-test.yml +++ b/.github/workflows/contracts-test.yml @@ -8,7 +8,7 @@ on: jobs: test: - name: Build & Unit Test + name: Contracts Unit Test runs-on: ubuntu-latest steps: - name: Check out code @@ -22,6 +22,6 @@ jobs: - name: Run tests run: | pushd contracts - nix develop .#contracts -c yarn && yarn test + nix develop .#contracts -c yarn test From 03b3d537f3ebfc291b7845ce455cc3c2215400c0 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 10:47:18 -0300 Subject: [PATCH 04/23] revert contracts-test change --- .github/workflows/contracts-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml index ad15c869f..e1c5e2f53 100644 --- a/.github/workflows/contracts-test.yml +++ b/.github/workflows/contracts-test.yml @@ -22,6 +22,6 @@ jobs: - name: Run tests run: | pushd contracts - nix develop .#contracts -c yarn test + nix develop .#contracts -c yarn && yarn test From eba6ce914b8d2ef773afee939db1732b960ce8b3 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 10:59:42 -0300 Subject: [PATCH 05/23] try testing in the build workflow --- .github/workflows/contracts-build.yml | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index db1cfcd91..0b4990c25 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -64,6 +64,13 @@ jobs: nix develop .#contracts -c yarn && yarn build popd + - name: Run tests + run: | + set -euo pipefail + pushd contracts + nix develop .#contracts -c yarn test + popd + - name: Package build outputs id: package run: | From aefcaf74d422fb6e77a33652165a9e0ab0166400 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 11:32:10 -0300 Subject: [PATCH 06/23] delete contracts-test, rename contracts-build-test-release --- ...d.yml => contracts-build-test-release.yml} | 6 ++--- .github/workflows/contracts-test.yml | 27 ------------------- 2 files changed, 3 insertions(+), 30 deletions(-) rename .github/workflows/{contracts-build.yml => contracts-build-test-release.yml} (96%) delete mode 100644 .github/workflows/contracts-test.yml diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build-test-release.yml similarity index 96% rename from .github/workflows/contracts-build.yml rename to .github/workflows/contracts-build-test-release.yml index 0b4990c25..bbff4a45d 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build-test-release.yml @@ -1,4 +1,4 @@ -name: TON - Contracts - Build & Release +name: TON - Contracts permissions: contents: read @@ -28,10 +28,10 @@ jobs: filters: | ton_changes: - 'contracts/**' - - '.github/workflows/contracts-build.yml' + - '.github/workflows/contracts-build-test-release.yml' build: - name: Build contracts + name: Build and test contracts needs: [ changes ] if: ${{ needs.changes.outputs.ton_changes == 'true' }} runs-on: ubuntu-latest diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml deleted file mode 100644 index e1c5e2f53..000000000 --- a/.github/workflows/contracts-test.yml +++ /dev/null @@ -1,27 +0,0 @@ -name: TON - Contracts - Test - -on: - push: - branches: - - main - pull_request: - -jobs: - test: - name: Contracts Unit Test - runs-on: ubuntu-latest - steps: - - name: Check out code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - - - name: Install Nix - uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 - with: - nix_path: nixpkgs=channel:nixos-unstable - - - name: Run tests - run: | - pushd contracts - nix develop .#contracts -c yarn && yarn test - - From 8d0082b7b4c930002766a105effd8a5839da1254 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 13:35:00 -0300 Subject: [PATCH 07/23] add flag to manually create the release on workflow dispatch --- .../contracts-build-test-release.yml | 23 +++++++++++++------ 1 file changed, 16 insertions(+), 7 deletions(-) diff --git a/.github/workflows/contracts-build-test-release.yml b/.github/workflows/contracts-build-test-release.yml index bbff4a45d..4af0ff6c1 100644 --- a/.github/workflows/contracts-build-test-release.yml +++ b/.github/workflows/contracts-build-test-release.yml @@ -1,4 +1,3 @@ -name: TON - Contracts permissions: contents: read @@ -8,6 +7,16 @@ on: branches: [ main ] pull_request: workflow_dispatch: + inputs: + create_release: + description: "Publish a GitHub release on this manual run?" + type: boolean + default: false + required: false + sha: + description: "Commit SHA to build/release (optional)" + type: string + required: false jobs: changes: @@ -33,7 +42,8 @@ jobs: build: name: Build and test contracts needs: [ changes ] - if: ${{ needs.changes.outputs.ton_changes == 'true' }} + # Run if changes are detected OR we're manually dispatching (for testing/release) + if: ${{ needs.changes.outputs.ton_changes == 'true' || github.event_name == 'workflow_dispatch' }} runs-on: ubuntu-latest steps: - name: Check out code @@ -45,7 +55,7 @@ jobs: id: get_sha run: | set -euo pipefail - TARGET_SHA="${{ github.event_name == 'workflow_dispatch' && github.event.inputs.sha || github.sha }}" + TARGET_SHA="${{ github.event_name == 'workflow_dispatch' && github.event.inputs.sha != '' && github.event.inputs.sha || github.sha }}" FULL_SHA="$(git rev-parse "${TARGET_SHA}")" { echo "short_sha=${FULL_SHA:0:12}" @@ -77,11 +87,9 @@ jobs: set -euo pipefail mkdir -p dist TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" - # Tar only the contents of contracts/build (keeps clean top-level inside archive) tar -C contracts -czf "dist/${TAR_NAME}" build echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" - # Always upload artifact for PRs / debugging - name: Upload artifact uses: actions/upload-artifact@v4 with: @@ -90,9 +98,9 @@ jobs: if-no-files-found: error retention-days: 14 - # Create a release ONLY for push to main + # Create a release on push to main OR when manually requested - name: Publish Release - if: ${{ github.event_name == 'push' && github.ref == 'refs/heads/main' }} + if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/main') || (github.event_name == 'workflow_dispatch' && github.event.inputs.create_release == 'true') }} uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1 with: token: ${{ secrets.GITHUB_TOKEN }} @@ -120,3 +128,4 @@ jobs: - name: Run build run: nix build -v .#contracts + From 9aed9378c2aad9035d6220749091dca1b71c776c Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 14:08:23 -0300 Subject: [PATCH 08/23] remove whitespace --- .github/workflows/contracts-build-test-release.yml | 1 - 1 file changed, 1 deletion(-) diff --git a/.github/workflows/contracts-build-test-release.yml b/.github/workflows/contracts-build-test-release.yml index 4af0ff6c1..4a2fc5540 100644 --- a/.github/workflows/contracts-build-test-release.yml +++ b/.github/workflows/contracts-build-test-release.yml @@ -1,4 +1,3 @@ - permissions: contents: read From db259d34a2d185d19d2275a33f3e57b81743bdc6 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 14:09:59 -0300 Subject: [PATCH 09/23] rename to previous name to test workflow_dispatch, fix missing title --- .../{contracts-build-test-release.yml => contracts-build.yml} | 2 ++ 1 file changed, 2 insertions(+) rename .github/workflows/{contracts-build-test-release.yml => contracts-build.yml} (99%) diff --git a/.github/workflows/contracts-build-test-release.yml b/.github/workflows/contracts-build.yml similarity index 99% rename from .github/workflows/contracts-build-test-release.yml rename to .github/workflows/contracts-build.yml index 4a2fc5540..1639e41e7 100644 --- a/.github/workflows/contracts-build-test-release.yml +++ b/.github/workflows/contracts-build.yml @@ -1,3 +1,5 @@ +name: TON - Contracts Build and Test + permissions: contents: read From bd099cbebf32d806a7493e8e1d73bd6129f84503 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 14:11:33 -0300 Subject: [PATCH 10/23] change name on detect changes --- .github/workflows/contracts-build.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index 1639e41e7..1b60e77ac 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -38,7 +38,7 @@ jobs: filters: | ton_changes: - 'contracts/**' - - '.github/workflows/contracts-build-test-release.yml' + - '.github/workflows/contracts-build.yml' build: name: Build and test contracts From 19e59f8b2e949dced50a0c10e10bbd2803ba227d Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 14:14:12 -0300 Subject: [PATCH 11/23] rename back to contracts-build-test.yml --- .../workflows/{contracts-build.yml => contracts-build-test.yml} | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) rename .github/workflows/{contracts-build.yml => contracts-build-test.yml} (98%) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build-test.yml similarity index 98% rename from .github/workflows/contracts-build.yml rename to .github/workflows/contracts-build-test.yml index 1b60e77ac..f6fe33229 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build-test.yml @@ -38,7 +38,7 @@ jobs: filters: | ton_changes: - 'contracts/**' - - '.github/workflows/contracts-build.yml' + - '.github/workflows/contracts-build-test.yml' build: name: Build and test contracts From 3e7567f120be30495018d7cba1b7a4a97f467e32 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 14:24:35 -0300 Subject: [PATCH 12/23] move permissions to the top of the job definition --- .github/workflows/contracts-build-test.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/contracts-build-test.yml b/.github/workflows/contracts-build-test.yml index f6fe33229..d5a7420bb 100644 --- a/.github/workflows/contracts-build-test.yml +++ b/.github/workflows/contracts-build-test.yml @@ -46,6 +46,8 @@ jobs: # Run if changes are detected OR we're manually dispatching (for testing/release) if: ${{ needs.changes.outputs.ton_changes == 'true' || github.event_name == 'workflow_dispatch' }} runs-on: ubuntu-latest + permissions: + contents: write steps: - name: Check out code uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 @@ -112,8 +114,6 @@ jobs: prerelease: false files: | ${{ steps.package.outputs.tar_path }} - permissions: - contents: write build-nixpkg: name: Build nix package From 55c21523dc0f5f4671ffe85befb6dd5a9e9086e3 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 15:01:44 -0300 Subject: [PATCH 13/23] make artifact and release names match --- .github/workflows/contracts-build-test.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/contracts-build-test.yml b/.github/workflows/contracts-build-test.yml index d5a7420bb..8b779207d 100644 --- a/.github/workflows/contracts-build-test.yml +++ b/.github/workflows/contracts-build-test.yml @@ -96,7 +96,7 @@ jobs: - name: Upload artifact uses: actions/upload-artifact@v4 with: - name: ${{ steps.get_sha.outputs.short_sha }}-ton-contracts-build + name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} path: ${{ steps.package.outputs.tar_path }} if-no-files-found: error retention-days: 14 From 53027b0df9e021ddb622b278d94e5de02fa48660 Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 15:54:01 -0300 Subject: [PATCH 14/23] filter out examples from release --- .github/workflows/contracts-build-test.yml | 5 ++++- contracts/tests/ccip/OffRamp.spec.ts | 2 +- contracts/tests/lib/merkle_proof/MerkleMultiProof.spec.ts | 2 +- contracts/tests/libraries/ocr/MultiOCR3Base.spec.ts | 2 +- ...erkleProof.compile.ts => examples.MerkleProof.compile.ts} | 0 .../{OCR3Base.compile.ts => examples.OCR3Base.compile.ts} | 0 .../{Receiver.compile.ts => examples.receiver.compile.ts} | 0 7 files changed, 7 insertions(+), 4 deletions(-) rename contracts/wrappers/{MerkleProof.compile.ts => examples.MerkleProof.compile.ts} (100%) rename contracts/wrappers/{OCR3Base.compile.ts => examples.OCR3Base.compile.ts} (100%) rename contracts/wrappers/{Receiver.compile.ts => examples.receiver.compile.ts} (100%) diff --git a/.github/workflows/contracts-build-test.yml b/.github/workflows/contracts-build-test.yml index 8b779207d..95cf597a0 100644 --- a/.github/workflows/contracts-build-test.yml +++ b/.github/workflows/contracts-build-test.yml @@ -84,13 +84,16 @@ jobs: nix develop .#contracts -c yarn test popd + - name: Package build outputs id: package run: | set -euo pipefail mkdir -p dist TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" - tar -C contracts -czf "dist/${TAR_NAME}" build + tar -C contracts \ + --exclude="build/examples.*" \ + -czf "dist/${TAR_NAME}" build echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" - name: Upload artifact diff --git a/contracts/tests/ccip/OffRamp.spec.ts b/contracts/tests/ccip/OffRamp.spec.ts index ad11cdfb3..6f4a6e282 100644 --- a/contracts/tests/ccip/OffRamp.spec.ts +++ b/contracts/tests/ccip/OffRamp.spec.ts @@ -383,7 +383,7 @@ describe('OffRamp', () => { // Deploy test receiver { - let code = await compile('Receiver') + let code = await compile('examples.Receiver') receiver = blockchain.openContract(ExampleReceiver.create(code, offRamp.address)) const result = await receiver.sendDeploy(deployer.getSender(), toNano('10')) expect(result.transactions).toHaveTransaction({ diff --git a/contracts/tests/lib/merkle_proof/MerkleMultiProof.spec.ts b/contracts/tests/lib/merkle_proof/MerkleMultiProof.spec.ts index f58857b96..dda15327e 100644 --- a/contracts/tests/lib/merkle_proof/MerkleMultiProof.spec.ts +++ b/contracts/tests/lib/merkle_proof/MerkleMultiProof.spec.ts @@ -21,7 +21,7 @@ describe('MerkleMultiProofTests', () => { beforeEach(async () => { blockchain = await Blockchain.create() - let code = await compile('MerkleProof') + let code = await compile('examples.MerkleProof') let data: MerkleMultiProofCalculatorStorage = { id: 1, root: 0n, // Initial root, will be updated on deploy diff --git a/contracts/tests/libraries/ocr/MultiOCR3Base.spec.ts b/contracts/tests/libraries/ocr/MultiOCR3Base.spec.ts index fc13223fc..98f2ae1ca 100644 --- a/contracts/tests/libraries/ocr/MultiOCR3Base.spec.ts +++ b/contracts/tests/libraries/ocr/MultiOCR3Base.spec.ts @@ -41,7 +41,7 @@ describe('OCR3Base Tests', () => { const hashedReport = hashReport(report, { configDigest, padding: 0n, sequenceBytes }) beforeAll(async () => { - code = await compile('OCR3Base') + code = await compile('examples.OCR3Base') blockchain = await Blockchain.create() deployer = await blockchain.treasury('deployer') diff --git a/contracts/wrappers/MerkleProof.compile.ts b/contracts/wrappers/examples.MerkleProof.compile.ts similarity index 100% rename from contracts/wrappers/MerkleProof.compile.ts rename to contracts/wrappers/examples.MerkleProof.compile.ts diff --git a/contracts/wrappers/OCR3Base.compile.ts b/contracts/wrappers/examples.OCR3Base.compile.ts similarity index 100% rename from contracts/wrappers/OCR3Base.compile.ts rename to contracts/wrappers/examples.OCR3Base.compile.ts diff --git a/contracts/wrappers/Receiver.compile.ts b/contracts/wrappers/examples.receiver.compile.ts similarity index 100% rename from contracts/wrappers/Receiver.compile.ts rename to contracts/wrappers/examples.receiver.compile.ts From ea83710750aadba479a55b408c092860ec49868d Mon Sep 17 00:00:00 2001 From: vicente Date: Tue, 2 Sep 2025 16:18:50 -0300 Subject: [PATCH 15/23] fix compile error on offramp test --- contracts/tests/ccip/OffRamp.spec.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/contracts/tests/ccip/OffRamp.spec.ts b/contracts/tests/ccip/OffRamp.spec.ts index 6f4a6e282..27e24fc73 100644 --- a/contracts/tests/ccip/OffRamp.spec.ts +++ b/contracts/tests/ccip/OffRamp.spec.ts @@ -383,7 +383,7 @@ describe('OffRamp', () => { // Deploy test receiver { - let code = await compile('examples.Receiver') + let code = await compile('examples.receiver') receiver = blockchain.openContract(ExampleReceiver.create(code, offRamp.address)) const result = await receiver.sendDeploy(deployer.getSender(), toNano('10')) expect(result.transactions).toHaveTransaction({ From e799078b0702a8d3112ca7c32b5cedd802359cb4 Mon Sep 17 00:00:00 2001 From: vicente Date: Thu, 4 Sep 2025 15:26:39 -0300 Subject: [PATCH 16/23] separate build and test workflows --- ...cts-build-test.yml => contracts-build.yml} | 12 +--- .github/workflows/contracts-test.yml | 59 +++++++++++++++++++ 2 files changed, 61 insertions(+), 10 deletions(-) rename .github/workflows/{contracts-build-test.yml => contracts-build.yml} (94%) create mode 100644 .github/workflows/contracts-test.yml diff --git a/.github/workflows/contracts-build-test.yml b/.github/workflows/contracts-build.yml similarity index 94% rename from .github/workflows/contracts-build-test.yml rename to .github/workflows/contracts-build.yml index 95cf597a0..063533329 100644 --- a/.github/workflows/contracts-build-test.yml +++ b/.github/workflows/contracts-build.yml @@ -1,4 +1,4 @@ -name: TON - Contracts Build and Test +name: TON - Contracts - Build and Publish permissions: contents: read @@ -38,7 +38,7 @@ jobs: filters: | ton_changes: - 'contracts/**' - - '.github/workflows/contracts-build-test.yml' + - '.github/workflows/contracts-build.yml' build: name: Build and test contracts @@ -77,14 +77,6 @@ jobs: nix develop .#contracts -c yarn && yarn build popd - - name: Run tests - run: | - set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn test - popd - - - name: Package build outputs id: package run: | diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml new file mode 100644 index 000000000..cd0bbd80f --- /dev/null +++ b/.github/workflows/contracts-test.yml @@ -0,0 +1,59 @@ +name: TON - Contracts - Test + +on: + pull_request: + +jobs: + changes: + name: Detect changes + runs-on: ubuntu-latest + outputs: + ton_changes: ${{ steps.changes.outputs.ton_changes }} + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + persist-credentials: false + - name: Detect changes + id: changes + uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 + with: + list-files: "shell" + filters: | + ton_changes: + - 'contracts/**' + - '.github/workflows/contracts-test.yml' + + test: + name: Test contracts + needs: [ changes ] + if: ${{ needs.changes.outputs.ton_changes == 'true' }} + runs-on: ubuntu-latest + + steps: + - name: Check out code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + with: + fetch-depth: 0 + + - name: Install Nix + uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 + with: + nix_path: nixpkgs=channel:nixos-unstable + + - name: Build (yarn) + run: | + set -euo pipefail + pushd contracts + nix develop .#contracts -c yarn && yarn build + popd + + - name: Run tests + run: | + set -euo pipefail + pushd contracts + nix develop .#contracts -c yarn test + popd + + + From ee7ebd37e43277802a2db09ac50e1f5b27d6c5a4 Mon Sep 17 00:00:00 2001 From: vicente Date: Thu, 4 Sep 2025 16:23:43 -0300 Subject: [PATCH 17/23] build tarball from the nix pkg output --- .github/workflows/contracts-build.yml | 39 +++++++++------------------ 1 file changed, 13 insertions(+), 26 deletions(-) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index 063533329..bb7334c20 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -41,9 +41,8 @@ jobs: - '.github/workflows/contracts-build.yml' build: - name: Build and test contracts + name: Build Nix pkg and publish tarball needs: [ changes ] - # Run if changes are detected OR we're manually dispatching (for testing/release) if: ${{ needs.changes.outputs.ton_changes == 'true' || github.event_name == 'workflow_dispatch' }} runs-on: ubuntu-latest permissions: @@ -70,22 +69,26 @@ jobs: with: nix_path: nixpkgs=channel:nixos-unstable - - name: Build (yarn) + - name: Build contracts (Nix) and capture out path + id: nix_build run: | set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn && yarn build - popd + OUT_PATH="$(nix build --print-out-paths .#contracts)" + echo "out_path=${OUT_PATH}" >> "$GITHUB_OUTPUT" + echo "Nix out path: ${OUT_PATH}" - - name: Package build outputs + - name: Package from Nix build directory id: package run: | set -euo pipefail mkdir -p dist TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" - tar -C contracts \ - --exclude="build/examples.*" \ - -czf "dist/${TAR_NAME}" build + BUILD_DIR="${{ steps.nix_build.outputs.out_path }}/lib/node_modules/@chainlink/contracts-ton/build" + test -d "${BUILD_DIR}" # hard fail if layout changes + # Tar the *contents* of build/ into the archive root + tar -C "${BUILD_DIR}" \ + --exclude="examples.*" \ + -czf "dist/${TAR_NAME}" . echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" - name: Upload artifact @@ -96,7 +99,6 @@ jobs: if-no-files-found: error retention-days: 14 - # Create a release on push to main OR when manually requested - name: Publish Release if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/main') || (github.event_name == 'workflow_dispatch' && github.event.inputs.create_release == 'true') }} uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1 @@ -110,18 +112,3 @@ jobs: files: | ${{ steps.package.outputs.tar_path }} - build-nixpkg: - name: Build nix package - runs-on: ubuntu-latest - steps: - - name: Check out code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - - - name: Install Nix - uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 - with: - nix_path: nixpkgs=channel:nixos-unstable - - - name: Run build - run: nix build -v .#contracts - From 8bb17c2e4b88c766dc20933857581e8b393febbc Mon Sep 17 00:00:00 2001 From: vicente Date: Thu, 4 Sep 2025 16:38:04 -0300 Subject: [PATCH 18/23] add permissions on test workflow --- .github/workflows/contracts-build.yml | 1 - .github/workflows/contracts-test.yml | 3 +++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index bb7334c20..04e963c19 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -85,7 +85,6 @@ jobs: TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" BUILD_DIR="${{ steps.nix_build.outputs.out_path }}/lib/node_modules/@chainlink/contracts-ton/build" test -d "${BUILD_DIR}" # hard fail if layout changes - # Tar the *contents* of build/ into the archive root tar -C "${BUILD_DIR}" \ --exclude="examples.*" \ -czf "dist/${TAR_NAME}" . diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml index cd0bbd80f..4374b0ca9 100644 --- a/.github/workflows/contracts-test.yml +++ b/.github/workflows/contracts-test.yml @@ -3,6 +3,9 @@ name: TON - Contracts - Test on: pull_request: +permissions: + contents: read + jobs: changes: name: Detect changes From 4c62b88f188b1d90e4e5c53bdbc42fb6f0009ed1 Mon Sep 17 00:00:00 2001 From: vicente Date: Fri, 5 Sep 2025 16:31:07 -0300 Subject: [PATCH 19/23] join workflows back onto only one file --- .github/workflows/contracts-build.yml | 35 ++++++++++++++- .github/workflows/contracts-test.yml | 62 --------------------------- 2 files changed, 34 insertions(+), 63 deletions(-) delete mode 100644 .github/workflows/contracts-test.yml diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index 04e963c19..f98aba11f 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -1,4 +1,4 @@ -name: TON - Contracts - Build and Publish +name: TON - Contracts permissions: contents: read @@ -40,6 +40,39 @@ jobs: - 'contracts/**' - '.github/workflows/contracts-build.yml' + + test: + name: Test contracts + needs: [ changes ] + if: ${{ needs.changes.outputs.ton_changes == 'true' && github.event_name == 'pull_request' }} + runs-on: ubuntu-latest + + steps: + - name: Check out code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + with: + fetch-depth: 0 + + - name: Install Nix + uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 + with: + nix_path: nixpkgs=channel:nixos-unstable + + - name: Build (yarn) + run: | + set -euo pipefail + pushd contracts + nix develop .#contracts -c yarn && yarn build + popd + + - name: Run tests + run: | + set -euo pipefail + pushd contracts + nix develop .#contracts -c yarn test + popd + + build: name: Build Nix pkg and publish tarball needs: [ changes ] diff --git a/.github/workflows/contracts-test.yml b/.github/workflows/contracts-test.yml deleted file mode 100644 index 4374b0ca9..000000000 --- a/.github/workflows/contracts-test.yml +++ /dev/null @@ -1,62 +0,0 @@ -name: TON - Contracts - Test - -on: - pull_request: - -permissions: - contents: read - -jobs: - changes: - name: Detect changes - runs-on: ubuntu-latest - outputs: - ton_changes: ${{ steps.changes.outputs.ton_changes }} - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - persist-credentials: false - - name: Detect changes - id: changes - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 - with: - list-files: "shell" - filters: | - ton_changes: - - 'contracts/**' - - '.github/workflows/contracts-test.yml' - - test: - name: Test contracts - needs: [ changes ] - if: ${{ needs.changes.outputs.ton_changes == 'true' }} - runs-on: ubuntu-latest - - steps: - - name: Check out code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - with: - fetch-depth: 0 - - - name: Install Nix - uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 - with: - nix_path: nixpkgs=channel:nixos-unstable - - - name: Build (yarn) - run: | - set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn && yarn build - popd - - - name: Run tests - run: | - set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn test - popd - - - From 4049efef5058a7122946d8a5d1cd1de8947daeba Mon Sep 17 00:00:00 2001 From: vicente Date: Mon, 8 Sep 2025 10:02:22 -0300 Subject: [PATCH 20/23] leave original workflow untouched, add custom workflow only for this purpose --- .github/workflows/contracts-build.yml | 146 +++--------------- .../contracts-publish-compiled-artifacts.yml | 111 +++++++++++++ 2 files changed, 132 insertions(+), 125 deletions(-) create mode 100644 .github/workflows/contracts-publish-compiled-artifacts.yml diff --git a/.github/workflows/contracts-build.yml b/.github/workflows/contracts-build.yml index f98aba11f..3ff50126e 100644 --- a/.github/workflows/contracts-build.yml +++ b/.github/workflows/contracts-build.yml @@ -1,146 +1,42 @@ name: TON - Contracts -permissions: - contents: read - on: push: - branches: [ main ] + branches: + - main pull_request: - workflow_dispatch: - inputs: - create_release: - description: "Publish a GitHub release on this manual run?" - type: boolean - default: false - required: false - sha: - description: "Commit SHA to build/release (optional)" - type: string - required: false jobs: - changes: - name: Detect changes - runs-on: ubuntu-latest - outputs: - ton_changes: ${{ steps.changes.outputs.ton_changes }} - steps: - - name: Checkout - uses: actions/checkout@v4 - with: - persist-credentials: false - - name: Detect changes - id: changes - uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 - with: - list-files: "shell" - filters: | - ton_changes: - - 'contracts/**' - - '.github/workflows/contracts-build.yml' - - - test: - name: Test contracts - needs: [ changes ] - if: ${{ needs.changes.outputs.ton_changes == 'true' && github.event_name == 'pull_request' }} - runs-on: ubuntu-latest - - steps: - - name: Check out code - uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - with: - fetch-depth: 0 - - - name: Install Nix - uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 - with: - nix_path: nixpkgs=channel:nixos-unstable - - - name: Build (yarn) - run: | - set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn && yarn build - popd - - - name: Run tests - run: | - set -euo pipefail - pushd contracts - nix develop .#contracts -c yarn test - popd - - - build: - name: Build Nix pkg and publish tarball - needs: [ changes ] - if: ${{ needs.changes.outputs.ton_changes == 'true' || github.event_name == 'workflow_dispatch' }} + build-check: + name: Build & Unit Test runs-on: ubuntu-latest - permissions: - contents: write steps: - name: Check out code uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - with: - fetch-depth: 0 - - - name: Get Long and Short SHAs - id: get_sha - run: | - set -euo pipefail - TARGET_SHA="${{ github.event_name == 'workflow_dispatch' && github.event.inputs.sha != '' && github.event.inputs.sha || github.sha }}" - FULL_SHA="$(git rev-parse "${TARGET_SHA}")" - { - echo "short_sha=${FULL_SHA:0:12}" - echo "full_sha=${FULL_SHA}" - } >> "$GITHUB_OUTPUT" - - name: Install Nix uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 with: nix_path: nixpkgs=channel:nixos-unstable - - name: Build contracts (Nix) and capture out path - id: nix_build + - name: Run build run: | - set -euo pipefail - OUT_PATH="$(nix build --print-out-paths .#contracts)" - echo "out_path=${OUT_PATH}" >> "$GITHUB_OUTPUT" - echo "Nix out path: ${OUT_PATH}" - - - name: Package from Nix build directory - id: package + pushd contracts + nix develop .#contracts -c yarn && yarn build + - name: Run tests run: | - set -euo pipefail - mkdir -p dist - TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" - BUILD_DIR="${{ steps.nix_build.outputs.out_path }}/lib/node_modules/@chainlink/contracts-ton/build" - test -d "${BUILD_DIR}" # hard fail if layout changes - tar -C "${BUILD_DIR}" \ - --exclude="examples.*" \ - -czf "dist/${TAR_NAME}" . - echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" + pushd contracts + nix develop .#contracts -c yarn test - - name: Upload artifact - uses: actions/upload-artifact@v4 - with: - name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} - path: ${{ steps.package.outputs.tar_path }} - if-no-files-found: error - retention-days: 14 + build-nixpkg: + name: Build nix package + runs-on: ubuntu-latest + steps: + - name: Check out code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 - - name: Publish Release - if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/main') || (github.event_name == 'workflow_dispatch' && github.event.inputs.create_release == 'true') }} - uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1 + - name: Install Nix + uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 with: - token: ${{ secrets.GITHUB_TOKEN }} - tag_name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} - target_commitish: ${{ steps.get_sha.outputs.full_sha }} - name: TON Contracts Build (${{ steps.get_sha.outputs.short_sha }}) - draft: false - prerelease: false - files: | - ${{ steps.package.outputs.tar_path }} - + nix_path: nixpkgs=channel:nixos-unstable + - name: Run build + run: nix build -v .#contracts diff --git a/.github/workflows/contracts-publish-compiled-artifacts.yml b/.github/workflows/contracts-publish-compiled-artifacts.yml new file mode 100644 index 000000000..486ee81bc --- /dev/null +++ b/.github/workflows/contracts-publish-compiled-artifacts.yml @@ -0,0 +1,111 @@ +name: TON - Publish contract artifacts release + +# This is a custom temporary solution to get the contract build artifacts on other repos and workflows + +permissions: + contents: read + +on: + push: + branches: [ main ] create_release: + description: "Publish a GitHub release on this manual run?" + type: boolean + default: false + required: false + sha: + description: "Commit SHA to build/release (optional)" + type: string + required: false + +jobs: + changes: + name: Detect changes + runs-on: ubuntu-latest + outputs: + ton_changes: ${{ steps.changes.outputs.ton_changes }} + steps: + - name: Checkout + uses: actions/checkout@v4 + with: + persist-credentials: false + - name: Detect changes + id: changes + uses: dorny/paths-filter@de90cc6fb38fc0963ad72b210f1f284cd68cea36 # v3.0.2 + with: + list-files: "shell" + filters: | + ton_changes: + - 'contracts/**' + - '.github/workflows/contracts-build.yml' + + publish: + name: Build Nix pkg and publish tarball + needs: [ changes ] + if: ${{ needs.changes.outputs.ton_changes == 'true' || github.event_name == 'workflow_dispatch' }} + runs-on: ubuntu-latest + permissions: + contents: write + steps: + - name: Check out code + uses: actions/checkout@0ad4b8fadaa221de15dcec353f45205ec38ea70b # v4.1.4 + with: + fetch-depth: 0 + + - name: Get Long and Short SHAs + id: get_sha + run: | + set -euo pipefail + TARGET_SHA="${{ github.event_name == 'workflow_dispatch' && github.event.inputs.sha != '' && github.event.inputs.sha || github.sha }}" + FULL_SHA="$(git rev-parse "${TARGET_SHA}")" + { + echo "short_sha=${FULL_SHA:0:12}" + echo "full_sha=${FULL_SHA}" + } >> "$GITHUB_OUTPUT" + + - name: Install Nix + uses: cachix/install-nix-action@02a151ada4993995686f9ed4f1be7cfbb229e56f # v31 + with: + nix_path: nixpkgs=channel:nixos-unstable + + - name: Build contracts (Nix) and capture out path + id: nix_build + run: | + set -euo pipefail + OUT_PATH="$(nix build --print-out-paths .#contracts)" + echo "out_path=${OUT_PATH}" >> "$GITHUB_OUTPUT" + echo "Nix out path: ${OUT_PATH}" + + - name: Package from Nix build directory + id: package + run: | + set -euo pipefail + mkdir -p dist + TAR_NAME="ton-contracts-build-${{ steps.get_sha.outputs.short_sha }}.tar.gz" + BUILD_DIR="${{ steps.nix_build.outputs.out_path }}/lib/node_modules/@chainlink/contracts-ton/build" + test -d "${BUILD_DIR}" # hard fail if layout changes + tar -C "${BUILD_DIR}" \ + --exclude="examples.*" \ + -czf "dist/${TAR_NAME}" . + echo "tar_path=dist/${TAR_NAME}" >> "$GITHUB_OUTPUT" + + - name: Upload artifact + uses: actions/upload-artifact@v4 + with: + name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} + path: ${{ steps.package.outputs.tar_path }} + if-no-files-found: error + retention-days: 14 + + - name: Publish Release + if: ${{ (github.event_name == 'push' && github.ref == 'refs/heads/main') || (github.event_name == 'workflow_dispatch' && github.event.inputs.create_release == 'true') }} + uses: softprops/action-gh-release@c95fe1489396fe8a9eb87c0abf8aa5b2ef267fda # v2.2.1 + with: + token: ${{ secrets.GITHUB_TOKEN }} + tag_name: ton-contracts-build-${{ steps.get_sha.outputs.short_sha }} + target_commitish: ${{ steps.get_sha.outputs.full_sha }} + name: TON Contracts Build (${{ steps.get_sha.outputs.short_sha }}) + draft: false + prerelease: false + files: | + ${{ steps.package.outputs.tar_path }} + From 2ff1dfef4a63cf8923a724830eda49e3894f3eab Mon Sep 17 00:00:00 2001 From: vicente Date: Mon, 8 Sep 2025 10:11:11 -0300 Subject: [PATCH 21/23] fix incorrect triggers for workflow --- .github/workflows/contracts-publish-compiled-artifacts.yml | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/contracts-publish-compiled-artifacts.yml b/.github/workflows/contracts-publish-compiled-artifacts.yml index 486ee81bc..fb6b7fcd7 100644 --- a/.github/workflows/contracts-publish-compiled-artifacts.yml +++ b/.github/workflows/contracts-publish-compiled-artifacts.yml @@ -7,8 +7,11 @@ permissions: on: push: - branches: [ main ] create_release: - description: "Publish a GitHub release on this manual run?" + branches: [ main ] + pull_request: + workflow_dispatch: + inputs: + create_release: description: "Publish a GitHub release on this manual run?" type: boolean default: false required: false From 02c031c92740e4717e67cb95ec620bed570a46d7 Mon Sep 17 00:00:00 2001 From: vicente Date: Mon, 8 Sep 2025 10:13:31 -0300 Subject: [PATCH 22/23] fix wrong indentation on workflow --- .github/workflows/contracts-publish-compiled-artifacts.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/contracts-publish-compiled-artifacts.yml b/.github/workflows/contracts-publish-compiled-artifacts.yml index fb6b7fcd7..ebe21e7db 100644 --- a/.github/workflows/contracts-publish-compiled-artifacts.yml +++ b/.github/workflows/contracts-publish-compiled-artifacts.yml @@ -11,7 +11,8 @@ on: pull_request: workflow_dispatch: inputs: - create_release: description: "Publish a GitHub release on this manual run?" + create_release: + description: "Publish a GitHub release on this manual run?" type: boolean default: false required: false From c34d87c6bf866a3a37f213cd843a1f95988772f7 Mon Sep 17 00:00:00 2001 From: vicente Date: Mon, 8 Sep 2025 10:20:46 -0300 Subject: [PATCH 23/23] fix yml format --- .github/workflows/contracts-publish-compiled-artifacts.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/contracts-publish-compiled-artifacts.yml b/.github/workflows/contracts-publish-compiled-artifacts.yml index ebe21e7db..0fdebc6ff 100644 --- a/.github/workflows/contracts-publish-compiled-artifacts.yml +++ b/.github/workflows/contracts-publish-compiled-artifacts.yml @@ -12,7 +12,7 @@ on: workflow_dispatch: inputs: create_release: - description: "Publish a GitHub release on this manual run?" + description: "Publish a GitHub release on this manual run?" type: boolean default: false required: false