From eeaf7191e6daa8e0b6c2576bdc7285f817f36105 Mon Sep 17 00:00:00 2001
From: Skylar Simoncelli <skylar@skylar.email>
Date: Wed, 18 Sep 2024 11:53:12 +0300
Subject: [PATCH] feat: more modules

---
 .github/workflows/cicd.yml                    | 199 ++----------------
 .../modules/build-and-publish-ecr-image.yml   |  53 +++++
 ...pc-artifact.yml => build-pc-artifacts.yml} |  44 ++--
 .../modules/download-pcsc-artifact.yml        |  20 ++
 .../modules/local-environment-tests.yml       |  12 +-
 .../workflows/modules/release-pc-artifact.yml |  12 +-
 6 files changed, 130 insertions(+), 210 deletions(-)
 create mode 100644 .github/workflows/modules/build-and-publish-ecr-image.yml
 rename .github/workflows/modules/{build-pc-artifact.yml => build-pc-artifacts.yml} (84%)
 create mode 100644 .github/workflows/modules/download-pcsc-artifact.yml

diff --git a/.github/workflows/cicd.yml b/.github/workflows/cicd.yml
index a1a430852..03e691be3 100644
--- a/.github/workflows/cicd.yml
+++ b/.github/workflows/cicd.yml
@@ -3,9 +3,9 @@ name: Build, test, release and deploy
 on:
   workflow_dispatch:
     inputs:
-      partner-chains-sha:
+      sha:
         description: "partner-chains commit SHA or branch to build from"
-      partner-chains-tag:
+      tag:
         description: "partner-chains release tag"
         required: true
 
@@ -14,187 +14,28 @@ env:
   SSH_AUTH_SOCK: /tmp/ssh_agent.sock
 
 jobs:
-  partner-chains-linux:
-    runs-on: ubuntu-latest
-    steps:
-      - name: Set filename variables
-        id: set-filenames
-        run: |
-          echo "PARTNER_CHAINS_CLI_X86_64_LINUX=partner-chains-cli-${{ inputs.tag }}-x86_64-linux" >> $GITHUB_ENV
-          echo "PARTNER_CHAINS_NODE_X86_64_LINUX=partner-chains-node-${{ inputs.tag }}-x86_64-linux" >> $GITHUB_ENV
-
-      - name: Checkout code
-        uses: actions/checkout@v4
-        with:
-          ref: ${{ inputs.sha }}
-
-      - name: Acquire AWS credentials
-        uses: aws-actions/configure-aws-credentials@v4
-        with:
-          role-to-assume: ${{ secrets.AWS_ROLE_ARN_SECRET }}
-          aws-region: ${{ env.AWS_REGION }}
-  
-      - name: Login to ECR
-        uses: docker/login-action@v3
-        with:
-          registry: ${{ secrets.ECR_REGISTRY_SECRET }}
-
-      - name: Install dependencies
-        run: |
-          sudo apt-get update
-          sudo apt-get install -y protobuf-compiler
-          curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh -s -- -y
-          source $HOME/.cargo/env
-          rustup target add x86_64-unknown-linux-gnu
-
-      - name: Build partner-chains-node
-        run: |
-          rustup target add x86_64-unknown-linux-gnu
-          cargo build -p partner-chains-node --locked --release --target x86_64-unknown-linux-gnu
-          cp target/x86_64-unknown-linux-gnu/release/partner-chains-node $PARTNER_CHAINS_NODE_X86_64_LINUX
-          chmod +x $PARTNER_CHAINS_NODE_X86_64_LINUX
-
-      - name: Run tests
-        run: cargo test --locked --release --target x86_64-unknown-linux-gnu
-
-      - name: Create and Configure Docker Container
-        id: create-container
-        run: |
-          container_id=$(docker run -d debian:bullseye-slim sleep infinity)
-          echo "container_id=$container_id" >> $GITHUB_ENV
-          docker exec $container_id useradd -m -u 1000 -U -s /bin/sh -d /substrate substrate
-          docker exec $container_id mkdir -p /data /substrate/.local/share/partner-chains-node
-          docker exec $container_id chown -R substrate:substrate /data /substrate
-          docker exec $container_id rm -rf /usr/bin/apt* /usr/bin/dpkg*
-          docker exec $container_id ln -s /data /substrate/.local/share/partner-chains-node
-          docker cp ./partner-chains-node $container_id:/usr/local/bin/partner-chains-node
-          docker commit --change='EXPOSE 30333 9615 9933 9944' --change='ENTRYPOINT ["/usr/local/bin/partner-chains-node"]' $container_id substrate-node:${{ inputs.sha }}
-  
-      - name: Cleanup Docker Container
-        if: always()
-        run: |
-          docker rm -f ${{ env.container_id }}
-
-      - name: Build partner-chains-cli
-        run: |
-          rustup target add x86_64-unknown-linux-gnu
-          cargo build -p partner-chains-cli --locked --release --target x86_64-unknown-linux-gnu
-          cp target/x86_64-unknown-linux-gnu/release/partner-chains-cli $PARTNER_CHAINS_CLI_X86_64_LINUX
-          chmod +x $PARTNER_CHAINS_CLI_X86_64_LINUX
-
-      - name: Push to ECR
-        run: |
-          docker tag substrate-node:${{ inputs.sha }} ${{ secrets.ECR_REGISTRY_SECRET }}/substrate-node:${{ inputs.sha }}
-          docker push ${{ secrets.ECR_REGISTRY_SECRET }}/substrate-node:${{ inputs.sha }}
-
-      - name: Upload partner-chains-cli-x86_64-linux
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }}
-          path: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }}
-
-      - name: Upload partner-chains-node-x86_64-linux
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }}
-          path: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }}
-
-  partner-chains-macos-x86_64:
-    runs-on: macos-latest
-    steps:
-      - name: Set filename variables
-        id: set-filenames
-        run: |
-          echo "PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN=partner-chains-cli-${{ inputs.tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
-          echo "PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN=partner-chains-node-${{ inputs.tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
-
-      - name: Checkout code
-        uses: actions/checkout@v4
-        with:
-          ref: ${{ inputs.sha }}
-
-      - name: Install protoc
-        run: |
-          curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v21.3/protoc-21.3-osx-x86_64.zip
-          unzip protoc-21.3-osx-x86_64.zip -d $HOME/protoc
-          sudo mv $HOME/protoc/bin/protoc /usr/local/bin/protoc
-
-      - name: Build partner-chains-node
-        run: |
-          rustup target add x86_64-apple-darwin
-          cargo build -p partner-chains-node --locked --release --target x86_64-apple-darwin
-          cp target/x86_64-apple-darwin/release/partner-chains-node $PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN
-          chmod +x $PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN
-
-      - name: Build partner-chains-cli
-        run: |
-          rustup target add x86_64-apple-darwin
-          cargo build -p partner-chains-cli --locked --release --target x86_64-apple-darwin
-          cp target/x86_64-apple-darwin/release/partner-chains-cli $PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN
-          chmod +x $PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN
-
-      - name: Upload partner-chains-cli-x86_64-apple-darwin
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN }}
-          path: ${{ env.PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN }}
-
-      - name: Upload partner-chains-node-x86_64-apple-darwin
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN }}
-          path: ${{ env.PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN }}
-
-  partner-chains-macos-arm64:
-    runs-on: macos-latest
-    steps:
-      - name: Set filename variables
-        id: set-filenames
-        run: |
-          echo "PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN=partner-chains-cli-${{ inputs.tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
-          echo "PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN=partner-chains-node-${{ inputs.tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
-
-      - name: Checkout code
-        uses: actions/checkout@v4
-        with:
-          ref: ${{ inputs.sha }}
-
-      - name: Install protoc
-        run: |
-          curl -LO https://github.com/protocolbuffers/protobuf/releases/download/v21.3/protoc-21.3-osx-aarch_64.zip
-          unzip protoc-21.3-osx-aarch_64.zip -d $HOME/protoc
-          sudo mv $HOME/protoc/bin/protoc /usr/local/bin/protoc
-
-      - name: Build partner-chains-node
-        run: |
-          rustup target add aarch64-apple-darwin
-          cargo build -p partner-chains-node --locked --release --target aarch64-apple-darwin
-          cp target/aarch64-apple-darwin/release/partner-chains-node $PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN
-          chmod +x $PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN
-
-      - name: Build partner-chains-cli
-        run: |
-          rustup target add aarch64-apple-darwin
-          cargo build -p partner-chains-cli --locked --release --target aarch64-apple-darwin
-          cp target/aarch64-apple-darwin/release/partner-chains-cli $PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN
-          chmod +x $PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN
-
-      - name: Upload partner-chains-cli-aarch64-apple-darwin
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN }}
-          path: ${{ env.PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN }}
+  build-pc-artifacts:
+    uses: ./.github/workflows/modules/build-pc-artifacts.yml
+    with:
+      sha: ${{ inputs.sha }}
+      tag: ${{ inputs.tag }}
 
-      - name: Upload partner-chains-node-aarch64-apple-darwin
-        uses: actions/upload-artifact@v4
-        with:
-          name: ${{ env.PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN }}
-          path: ${{ env.PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN }}
+  publish-ecr-image:
+    needs: build-pc-artifacts
+    uses: ./.github/workflows/modules/build-and-publish-ecr-image.yml
+    with:
+      sha: ${{ inputs.sha }}
+      tag: ${{ inputs.tag }}
 
   partner-chains-smart-contracts:
-    uses: ./.github/workflows/modules/build-pcsc-artifact.yml
+    uses: ./.github/workflows/modules/download-pcsc-artifact.yml
     with:
-      sha: #TODO
+      release: 
+      artifact:
+
+    #uses: ./.github/workflows/modules/build-pcsc-artifact.yml
+    #with:
+    #  sha: #TODO
 
   local-environment-tests:          
     needs: [partner-chains-linux, partner-chains-smart-contracts]
diff --git a/.github/workflows/modules/build-and-publish-ecr-image.yml b/.github/workflows/modules/build-and-publish-ecr-image.yml
new file mode 100644
index 000000000..b21e83f95
--- /dev/null
+++ b/.github/workflows/modules/build-and-publish-ecr-image.yml
@@ -0,0 +1,53 @@
+name: Build and Publish to ECR 
+
+on:
+  workflow_call:
+    inputs:
+      sha:
+        description: "sha"
+      tag:
+        description: "tag"
+        required: true
+
+jobs:
+  build-and-publish:
+    runs-on: ubuntu-latest 
+    steps:
+      - name: Download partner-chains-node-x86_64-linux-artifact
+        uses: actions/download-artifact@v4
+        with:
+          name: partner-chains-node-x86_64-linux-artifact
+
+      - name: Create and Configure Docker Container
+        id: create-container
+        run: |
+          container_id=$(docker run -d debian:bullseye-slim sleep infinity)
+          echo "container_id=$container_id" >> $GITHUB_ENV
+          docker exec $container_id useradd -m -u 1000 -U -s /bin/sh -d /substrate substrate
+          docker exec $container_id mkdir -p /data /substrate/.local/share/partner-chains-node
+          docker exec $container_id chown -R substrate:substrate /data /substrate
+          docker exec $container_id rm -rf /usr/bin/apt* /usr/bin/dpkg*
+          docker exec $container_id ln -s /data /substrate/.local/share/partner-chains-node
+          docker cp ./partner-chains-node-${{ inputs.tag }}-x86_64-linux $container_id:/usr/local/bin/partner-chains-node
+          docker commit --change='EXPOSE 30333 9615 9933 9944' --change='ENTRYPOINT ["/usr/local/bin/partner-chains-node"]' $container_id substrate-node:${{ inputs.sha }}
+  
+      - name: Cleanup Docker Container
+        if: always()
+        run: |
+          docker rm -f ${{ env.container_id }}
+
+      - name: Acquire AWS credentials
+        uses: aws-actions/configure-aws-credentials@v4
+        with:
+          role-to-assume: ${{ secrets.AWS_ROLE_ARN_SECRET }}
+          aws-region: ${{ env.AWS_REGION }}
+  
+      - name: Login to ECR
+        uses: docker/login-action@v3
+        with:
+          registry: ${{ secrets.ECR_REGISTRY_SECRET }}
+
+      - name: Push to ECR
+        run: |
+          docker tag substrate-node:${{ inputs.sha }} ${{ secrets.ECR_REGISTRY_SECRET }}/substrate-node:${{ inputs.sha }}
+          docker push ${{ secrets.ECR_REGISTRY_SECRET }}/substrate-node:${{ inputs.sha }}
diff --git a/.github/workflows/modules/build-pc-artifact.yml b/.github/workflows/modules/build-pc-artifacts.yml
similarity index 84%
rename from .github/workflows/modules/build-pc-artifact.yml
rename to .github/workflows/modules/build-pc-artifacts.yml
index 8bd45308d..e742253a2 100644
--- a/.github/workflows/modules/build-pc-artifact.yml
+++ b/.github/workflows/modules/build-pc-artifacts.yml
@@ -3,15 +3,12 @@ name: Build and Upload PC Artifacts
 on:
   workflow_call:
     inputs:
-      partner_chains_sha:
+      sha:
         description: "partner-chains commit SHA or branch to build from"
-      partner-chains-tag:
+        required: true
+      tag:
         description: "partner-chains release tag to append to artifact name"
         required: true
-      create_draft_release_page:
-        description: "Create a draft release page"
-        required: false
-        default: "false"
   workflow_dispatch:
     inputs:
       partner_chains_sha:
@@ -49,6 +46,9 @@ jobs:
           cp target/x86_64-unknown-linux-gnu/release/partner-chains-node $PARTNER_CHAINS_NODE_X86_64_LINUX
           chmod +x $PARTNER_CHAINS_NODE_X86_64_LINUX
 
+      - name: Test partner-chains-node
+        run: cargo test --locked --release --target x86_64-unknown-linux-gnu
+
       - name: Build partner-chains-cli
         run: |
           rustup target add x86_64-unknown-linux-gnu
@@ -59,13 +59,13 @@ jobs:
       - name: Upload partner-chains-cli-x86_64-linux
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }}
+          name: partner-chains-cli-x86_64-linux-artifact
           path: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }}
 
       - name: Upload partner-chains-node-x86_64-linux
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }}
+          name: partner-chains-node-x86_64-linux-artifact
           path: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }}
 
   partner-chains-macos-x86_64:
@@ -74,13 +74,13 @@ jobs:
       - name: Set filename variables
         id: set-filenames
         run: |
-          echo "PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN=partner-chains-cli-${{ github.event.inputs.partner-chains-tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
-          echo "PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN=partner-chains-node-${{ github.event.inputs.partner-chains-tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
+          echo "PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN=partner-chains-cli-${{ inputs.tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
+          echo "PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN=partner-chains-node-${{ inputs.tag }}-x86_64-apple-darwin" >> $GITHUB_ENV
 
       - name: Checkout code
         uses: actions/checkout@v4
         with:
-          ref: ${{ github.event.inputs.partner_chains_sha }}
+          ref: ${{ inputs.sha }}
 
       - name: Install protoc
         run: |
@@ -95,6 +95,9 @@ jobs:
           cp target/x86_64-apple-darwin/release/partner-chains-node $PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN
           chmod +x $PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN
 
+      - name: Test partner-chains-node
+        run: cargo test --locked --release --target x86_64-apple-darwin
+
       - name: Build partner-chains-cli
         run: |
           rustup target add x86_64-apple-darwin
@@ -105,28 +108,28 @@ jobs:
       - name: Upload partner-chains-cli-x86_64-apple-darwin
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN }}
+          name: partner-chains-cli-x86_64-apple-darwin-artifact
           path: ${{ env.PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN }}
 
       - name: Upload partner-chains-node-x86_64-apple-darwin
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN }}
+          name: partner-chains-node-x86_64-apple-darwin-artifact
           path: ${{ env.PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN }}
-
+        
   partner-chains-macos-arm64:
     runs-on: macos-latest
     steps:
       - name: Set filename variables
         id: set-filenames
         run: |
-          echo "PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN=partner-chains-cli-${{ github.event.inputs.partner-chains-tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
-          echo "PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN=partner-chains-node-${{ github.event.inputs.partner-chains-tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
+          echo "PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN=partner-chains-cli-${{ inputs.tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
+          echo "PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN=partner-chains-node-${{ inputs.tag }}-aarch64-apple-darwin" >> $GITHUB_ENV
 
       - name: Checkout code
         uses: actions/checkout@v4
         with:
-          ref: ${{ github.event.inputs.partner_chains_sha }}
+          ref: ${{ inputs.sha }}
 
       - name: Install protoc
         run: |
@@ -141,6 +144,9 @@ jobs:
           cp target/aarch64-apple-darwin/release/partner-chains-node $PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN
           chmod +x $PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN
 
+      - name: Test partner-chains-node
+        run: cargo test --locked --release --target aarch64-apple-darwin
+
       - name: Build partner-chains-cli
         run: |
           rustup target add aarch64-apple-darwin
@@ -151,12 +157,12 @@ jobs:
       - name: Upload partner-chains-cli-aarch64-apple-darwin
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN }}
+          name: partner-chains-cli-aarch64-apple-darwin-artifact
           path: ${{ env.PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN }}
 
       - name: Upload partner-chains-node-aarch64-apple-darwin
         uses: actions/upload-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN }}
+          name: partner-chains-node-aarch64-apple-darwin-artifact
           path: ${{ env.PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN }}
   
\ No newline at end of file
diff --git a/.github/workflows/modules/download-pcsc-artifact.yml b/.github/workflows/modules/download-pcsc-artifact.yml
new file mode 100644
index 000000000..2f588397f
--- /dev/null
+++ b/.github/workflows/modules/download-pcsc-artifact.yml
@@ -0,0 +1,20 @@
+name: Download PCSC Artifact
+
+on:
+  workflow_call:
+    inputs:
+      release:
+        description: "release name"
+      artifact:
+        description: "artifact name"
+
+jobs:
+  - name: Download Artifact from GitHub Release
+    run: |
+      wget "https://github.com/input-output-hk/partner-chains-smart-contracts/releases/download/${{ inputs.release }}/${{ inputs.artifact }}"
+
+  - name: Upload Artifact
+    uses: actions/upload-artifact@v4
+    with:
+      name: partner-chains-smart-contracts-artifact
+      path: ${{ inputs.artifact }} 
\ No newline at end of file
diff --git a/.github/workflows/modules/local-environment-tests.yml b/.github/workflows/modules/local-environment-tests.yml
index 0cdcb60b2..a5eddcf47 100644
--- a/.github/workflows/modules/local-environment-tests.yml
+++ b/.github/workflows/modules/local-environment-tests.yml
@@ -36,26 +36,26 @@ jobs:
       with:
         registry: ${{ secrets.ECR_REGISTRY_SECRET }}
 
-    - name: Download partner-chains-node 
+    - name: Download partner-chains-cli
       uses: actions/download-artifact@v4
       with:
-        name: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }} 
+        name: partner-chains-cli-x86_64-linux-artifact-artifact
 
-    - name: Download partner-chains-cli
+    - name: Download partner-chains-node 
       uses: actions/download-artifact@v4
       with:
-        name: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }} 
+        name: partner-chains-node-x86_64-linux-artifact-artifact
 
     - name: Download partner-chains-smart-contracts
       uses: actions/download-artifact@v4
       with:
-        name: partner-chains-smart-contracts-x86_64-linux
+        name: partner-chains-smart-contracts-artifact
 
     - name: Deploy local environment with overrides
       run: |
         cp -r ./partner-chains-cli-* ./partner-chains-master/dev/local-environment/configurations/partner-chains-cli/overrides/partner-chains-cli
         cp -r ./partner-chains-node-* ./partner-chains-master/dev/local-environment/configurations/partner-chains-cli/overrides/partner-chains-node
-        cp -r ./partner-chains-smart-contracts-x86_64-linux/* ./partner-chains-master/dev/local-environment/configurations/sidechain-release-bundle/overrides/
+        cp -r ./partner-chains-smart-contracts*/* ./partner-chains-master/dev/local-environment/configurations/sidechain-release-bundle/overrides/
         cd ./partner-chains-master/dev/local-environment
         bash setup.sh --non-interactive --overrides --postgres-password=postgres --node-image=${{ inputs.image }}
         docker compose up -d
diff --git a/.github/workflows/modules/release-pc-artifact.yml b/.github/workflows/modules/release-pc-artifact.yml
index 4255ff75e..3dea972db 100644
--- a/.github/workflows/modules/release-pc-artifact.yml
+++ b/.github/workflows/modules/release-pc-artifact.yml
@@ -43,37 +43,37 @@ jobs:
       - name: Download Linux CLI artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_LINUX }}
+          name: partner-chains-cli-x86_64-linux-artifact-artifact
           path: artifact-linux/
   
       - name: Download Linux NODE artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_LINUX }}
+          name: partner-chains-node-x86_64-linux-artifact-artifact
           path: artifact-linux/
   
       - name: Download macOS x86_64 CLI artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_X86_64_APPLE_DARWIN }}
+          name: partner-chains-cli-x86_64-apple-darwin-artifact
           path: artifact-macos-x86_64/
   
       - name: Download macOS x86_64 NODE artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_X86_64_APPLE_DARWIN }}
+          name: partner-chains-node-x86_64-apple-darwin-artifact
           path: artifact-macos-x86_64/
   
       - name: Download macOS ARM64 CLI artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_CLI_AARCH64_APPLE_DARWIN }}
+          name: partner-chains-cli-aarch64-apple-darwin-artifact
           path: artifact-macos-arm64/
   
       - name: Download macOS ARM64 NODE artifact
         uses: actions/download-artifact@v4
         with:
-          name: ${{ env.PARTNER_CHAINS_NODE_AARCH64_APPLE_DARWIN }}
+          name: partner-chains-node-aarch64-apple-darwin-artifact
           path: artifact-macos-arm64/
   
       - name: Check if release already exists