From c4a47c67e8867b9d2ab823103bc117edf8947cc1 Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Thu, 28 Sep 2023 13:59:03 -0700 Subject: [PATCH 01/10] cancel previous running workflows Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 4534271f..26c808cf 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -13,6 +13,11 @@ jobs: deploy-test: runs-on: ubuntu-latest steps: + - name: Cancel Previous Runs + uses: styfle/cancel-workflow-action@0.6.0 + with: + access_token: ${{ secrets.GITHUB_TOKEN }} + - name: Login to Artifact Registry/GCR uses: docker/login-action@v2 with: From 37e893639f7bee6150509e2da2c4b72209923a0d Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Wed, 27 Sep 2023 17:58:59 -0700 Subject: [PATCH 02/10] add coveralls for rudder test coverage Signed-off-by: Pranay Valson --- docker-compose-ci.yml | 6 +++++- mix.exs | 10 +++++++++- mix.lock | 1 + 3 files changed, 15 insertions(+), 2 deletions(-) diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index f94d4e0a..bf3df980 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -87,6 +87,7 @@ services: echo "hardhat-node-address:" $NODE_ETHEREUM_MAINNET; echo "brp-op-pk:" $BLOCK_RESULT_OPERATOR_PRIVATE_KEY; echo "evm-server-address:" $EVM_SERVER_URL; + echo "code-test-coverage:" $CODECOV_TOKEN; echo Waiting for proof-chain to be deployed...; while ! nc -v -l -k -p 8008; do @@ -98,7 +99,10 @@ services: curl -F "filedata=@/app/test-data/codec-0.35/encoded/1-17090960-replica-0xc95d44182ee006e79f1352ef32664210f383baa016988d5ab2fd950b52bf22ff" http://ipfs-pinner:3001/upload; echo Test bsp files uploaded!; cd /app; - MIX_ENV=docker mix test --trace --slowest 10; + MIX_ENV=docker mix coveralls.json; + curl -Os https://uploader.codecov.io/latest/linux/codecov; + chmod +x codecov; + ./codecov -t ${CODECOV_TOKEN}; exit $?;" environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} diff --git a/mix.exs b/mix.exs index 71740afb..b357f931 100644 --- a/mix.exs +++ b/mix.exs @@ -7,7 +7,14 @@ defmodule Rudder.MixProject do version: "0.2.15", elixir: "~> 1.14.3", start_permanent: Mix.env() == :prod, - deps: deps() + deps: deps(), + test_coverage: [tool: ExCoveralls], + preferred_cli_env: [ + coveralls: :docker, + "coveralls.detail": :docker, + "coveralls.post": :docker, + "coveralls.html": :docker + ] ] end @@ -64,6 +71,7 @@ defmodule Rudder.MixProject do # static code analysis {:dialyxir, "~> 1.0", only: [:dev], runtime: false}, {:credo, "~> 1.6", only: [:dev, :test], runtime: false}, + {:excoveralls, "~> 0.10", only: [:test, :docker], runtime: false}, # avro tools {:avrora, "~> 0.21"}, diff --git a/mix.lock b/mix.lock index 74556deb..c86f9a55 100644 --- a/mix.lock +++ b/mix.lock @@ -23,6 +23,7 @@ "ex_keccak": {:hex, :ex_keccak, "0.7.3", "33298f97159f6b0acd28f6e96ce5ea975a0f4a19f85fe615b4f4579b88b24d06", [:mix], [{:rustler, ">= 0.0.0", [hex: :rustler, repo: "hexpm", optional: true]}, {:rustler_precompiled, "~> 0.6.1", [hex: :rustler_precompiled, repo: "hexpm", optional: false]}], "hexpm", "4c5e6d9d5f77b64ab48769a0166a9814180d40ced68ed74ce60a5174ab55b3fc"}, "ex_rlp": {:hex, :ex_rlp, "0.6.0", "985391d2356a7cb8712a4a9a2deb93f19f2fbca0323f5c1203fcaf64d077e31e", [:mix], [], "hexpm", "7135db93b861d9e76821039b60b00a6a22d2c4e751bf8c444bffe7a042f1abaf"}, "ex_secp256k1": {:hex, :ex_secp256k1, "0.7.2", "33398c172813b90fab9ab75c12b98d16cfab472c6dcbde832b13c45ce1c01947", [:mix], [{:rustler, ">= 0.0.0", [hex: :rustler, repo: "hexpm", optional: true]}, {:rustler_precompiled, "~> 0.6", [hex: :rustler_precompiled, repo: "hexpm", optional: false]}], "hexpm", "f3b1bf56e6992e28b9d86e3bf741a4aca3e641052eb47d13ae4f5f4d4944bdaf"}, + "excoveralls": {:hex, :excoveralls, "0.16.1", "0bd42ed05c7d2f4d180331a20113ec537be509da31fed5c8f7047ce59ee5a7c5", [:mix], [{:hackney, "~> 1.16", [hex: :hackney, repo: "hexpm", optional: false]}, {:jason, "~> 1.0", [hex: :jason, repo: "hexpm", optional: false]}], "hexpm", "dae763468e2008cf7075a64cb1249c97cb4bc71e236c5c2b5e5cdf1cfa2bf138"}, "expo": {:hex, :expo, "0.4.1", "1c61d18a5df197dfda38861673d392e642649a9cef7694d2f97a587b2cfb319b", [:mix], [], "hexpm", "2ff7ba7a798c8c543c12550fa0e2cbc81b95d4974c65855d8d15ba7b37a1ce47"}, "file_system": {:hex, :file_system, "0.2.10", "fb082005a9cd1711c05b5248710f8826b02d7d1784e7c3451f9c1231d4fc162d", [:mix], [], "hexpm", "41195edbfb562a593726eda3b3e8b103a309b733ad25f3d642ba49696bf715dc"}, "finch": {:hex, :finch, "0.16.0", "40733f02c89f94a112518071c0a91fe86069560f5dbdb39f9150042f44dcfb1a", [:mix], [{:castore, "~> 0.1 or ~> 1.0", [hex: :castore, repo: "hexpm", optional: false]}, {:mime, "~> 1.0 or ~> 2.0", [hex: :mime, repo: "hexpm", optional: false]}, {:mint, "~> 1.3", [hex: :mint, repo: "hexpm", optional: false]}, {:nimble_options, "~> 0.4 or ~> 1.0", [hex: :nimble_options, repo: "hexpm", optional: false]}, {:nimble_pool, "~> 0.2.6 or ~> 1.0", [hex: :nimble_pool, repo: "hexpm", optional: false]}, {:telemetry, "~> 0.4 or ~> 1.0", [hex: :telemetry, repo: "hexpm", optional: false]}], "hexpm", "f660174c4d519e5fec629016054d60edd822cdfe2b7270836739ac2f97735ec5"}, From 4c21026bf234b0073b982e9e81650d619a377d66 Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Thu, 28 Sep 2023 15:04:17 -0700 Subject: [PATCH 03/10] update dockerfile and ci run Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 13 ++++++++++--- Dockerfile | 24 ++++++++++++------------ docker-compose-ci.yml | 18 +++++++++++------- mix.exs | 2 +- 4 files changed, 34 insertions(+), 23 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 26c808cf..9d1f0e45 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -29,12 +29,15 @@ jobs: # - uses: satackey/action-docker-layer-caching@v0.0.10 # # Ignore the failure of a step and avoid terminating the job. # continue-on-error: true - - name: Build & Publish the Docker image - run: | - docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push + # - name: Build & Publish the Docker image + # run: | + # docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push - name: Create .env file run: | + curl -s https://codecov.io/env > codecov.sh + chmod +x codecov.sh + ./codecov.sh touch .env echo WEB3_JWT=${{ secrets.WEB3_JWT }} >> .env echo IPFS_PINNER_URL=${{ secrets.IPFS_PINNER_URL }} >> .env @@ -42,6 +45,10 @@ jobs: echo NODE_ETHEREUM_MAINNET=${{ secrets.NODE_ETHEREUM_MAINNET }} >> .env echo BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${{ secrets.BLOCK_RESULT_OPERATOR_PRIVATE_KEY }} >> .env echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env + echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env + echo CODECOV_SLUG=$CODECOV_SLUG >> .env + echo GITHUB_SHA=$GITHUB_SHA >> .env + echo CI=${{ secrets.CI }} >> .env cat .env - name: Load .env file diff --git a/Dockerfile b/Dockerfile index 6569de57..ece656a3 100644 --- a/Dockerfile +++ b/Dockerfile @@ -29,27 +29,27 @@ FROM elixir:1.14.3-otp-24 as deployer RUN apt-get update && apt-get install -y git bash curl netcat-traditional && apt-get clean && rm -rf /var/lib/apt/lists/* -RUN mkdir -p /app/_build /app/config /app/deps /app/lib /app/priv node/test /app/test-data +RUN mkdir -p /mix/_build /mix/config /mix/deps /mix/lib /mix/priv node/test /mix/test-data # used in case alpine image are used # RUN apk update && apk add --no-cache git=2.36.3-r0 bash=5.1.16-r2 curl=7.83.1-r4 go=1.18.7-r0 make=4.3-r0 gcc=11.2.1_git20220219-r2 WORKDIR /app RUN mix local.hex --force RUN mix local.rebar --force -COPY --from=builder-elixir /mix/_build /app/_build -COPY --from=builder-elixir /mix/config /app/config -COPY --from=builder-elixir /mix/deps /app/deps -COPY --from=builder-elixir /mix/lib /app/lib -COPY --from=builder-elixir /mix/priv /app/priv -COPY --from=builder-elixir /mix/mix.exs /app/ -COPY --from=builder-elixir /mix/mix.lock /app/ -# COPY --from=builder-elixir /mix/_build/dev/rel/rudder/ /app/prod/ -COPY --from=builder-elixir /mix/test/ /app/test -COPY --from=builder-elixir /mix/test-data/ /app/test-data +COPY --from=builder-elixir /mix/_build /mix/_build +COPY --from=builder-elixir /mix/config /mix/config +COPY --from=builder-elixir /mix/deps /mix/deps +COPY --from=builder-elixir /mix/lib /mix/lib +COPY --from=builder-elixir /mix/priv /mix/priv +COPY --from=builder-elixir /mix/mix.exs /mix/ +COPY --from=builder-elixir /mix/mix.lock /mix/ +# COPY --from=builder-elixir /mix/_build/dev/rel/rudder/ /mix/prod/ +COPY --from=builder-elixir /mix/test/ /mix/test +COPY --from=builder-elixir /mix/test-data/ /mix/test-data # Used only for testing in compose # CMD [ "mix", "test", "./test/block_specimen_decoder_test.exs", "./test/block_result_uploader_test.exs"] -CMD ["/app/prod/bin/rudder", "start"] +CMD ["/mix/prod/bin/rudder", "start"] EXPOSE 9568 \ No newline at end of file diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index bf3df980..d900875a 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -68,13 +68,14 @@ services: - "3002:3002" rudder: - image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" + # image: "gcr.io/covalent-project/rudder:test" + # image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" container_name: rudder links: - "ipfs-pinner:ipfs-pinner" - # build: - # context: . - # dockerfile: Dockerfile + build: + context: . + dockerfile: Dockerfile restart: on-failure depends_on: ipfs-pinner: @@ -88,6 +89,7 @@ services: echo "brp-op-pk:" $BLOCK_RESULT_OPERATOR_PRIVATE_KEY; echo "evm-server-address:" $EVM_SERVER_URL; echo "code-test-coverage:" $CODECOV_TOKEN; + echo "ci-run:" $CI; echo Waiting for proof-chain to be deployed...; while ! nc -v -l -k -p 8008; do @@ -98,17 +100,19 @@ services: curl -F "filedata=@/app/test-data/codec-0.35/encoded/1-17090940-replica-0x7b8e1d463a0fbc6fce05b31c5c30e605aa13efaca14a1f3ba991d33ea979b12b" http://ipfs-pinner:3001/upload; curl -F "filedata=@/app/test-data/codec-0.35/encoded/1-17090960-replica-0xc95d44182ee006e79f1352ef32664210f383baa016988d5ab2fd950b52bf22ff" http://ipfs-pinner:3001/upload; echo Test bsp files uploaded!; - cd /app; + cd /mix; MIX_ENV=docker mix coveralls.json; curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; - ./codecov -t ${CODECOV_TOKEN}; - exit $?;" + ./codecov -t $CODECOV_TOKEN;" + # exit $?;" environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} - BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${BLOCK_RESULT_OPERATOR_PRIVATE_KEY} - EVM_SERVER_URL=${EVM_SERVER_URL} - IPFS_PINNER_URL=${IPFS_PINNER_URL} + - CODECOV_TOKEN=${CODECOV_TOKEN} + - CI=${CI} networks: - cqt-net diff --git a/mix.exs b/mix.exs index b357f931..a8906684 100644 --- a/mix.exs +++ b/mix.exs @@ -8,7 +8,7 @@ defmodule Rudder.MixProject do elixir: "~> 1.14.3", start_permanent: Mix.env() == :prod, deps: deps(), - test_coverage: [tool: ExCoveralls], + test_coverage: [tool: ExCoveralls, export: "cov"], preferred_cli_env: [ coveralls: :docker, "coveralls.detail": :docker, From 8fc3cfe3158d656aa307b5b255849d3a152a19eb Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Thu, 28 Sep 2023 15:14:18 -0700 Subject: [PATCH 04/10] pass all required env to codecov uploader Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 2 +- docker-compose-ci.yml | 5 ++++- 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 9d1f0e45..2531d1d5 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -46,7 +46,7 @@ jobs: echo BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${{ secrets.BLOCK_RESULT_OPERATOR_PRIVATE_KEY }} >> .env echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env - echo CODECOV_SLUG=$CODECOV_SLUG >> .env + echo CODECOV_SLUG=covalenthq/rudder >> .env echo GITHUB_SHA=$GITHUB_SHA >> .env echo CI=${{ secrets.CI }} >> .env cat .env diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index d900875a..18c36192 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -89,7 +89,9 @@ services: echo "brp-op-pk:" $BLOCK_RESULT_OPERATOR_PRIVATE_KEY; echo "evm-server-address:" $EVM_SERVER_URL; echo "code-test-coverage:" $CODECOV_TOKEN; + echo "github-sha:" $GITHUB_SHA; echo "ci-run:" $CI; + echo "slug:" $CODECOV_SLUG; echo Waiting for proof-chain to be deployed...; while ! nc -v -l -k -p 8008; do @@ -102,9 +104,10 @@ services: echo Test bsp files uploaded!; cd /mix; MIX_ENV=docker mix coveralls.json; + # ci_env='bash <(curl -s https://codecov.io/env)' curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; - ./codecov -t $CODECOV_TOKEN;" + ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -e CODECOV_SLUG=$CODECOV_SLUG; " # exit $?;" environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} From 9dc8ec125a23783a40eff7cd6a28bd79298b4d9d Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Thu, 28 Sep 2023 16:15:27 -0700 Subject: [PATCH 05/10] bring back full dockerx build with test coverage upload Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 11 ++++------- docker-compose-ci.yml | 14 ++++---------- docker-compose-mbase.yml | 10 +++++----- docker-compose-mbeam.yml | 6 +++--- 4 files changed, 16 insertions(+), 25 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 2531d1d5..7a626e99 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -29,15 +29,12 @@ jobs: # - uses: satackey/action-docker-layer-caching@v0.0.10 # # Ignore the failure of a step and avoid terminating the job. # continue-on-error: true - # - name: Build & Publish the Docker image - # run: | - # docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push + - name: Build & Publish the Docker image + run: | + docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push - name: Create .env file run: | - curl -s https://codecov.io/env > codecov.sh - chmod +x codecov.sh - ./codecov.sh touch .env echo WEB3_JWT=${{ secrets.WEB3_JWT }} >> .env echo IPFS_PINNER_URL=${{ secrets.IPFS_PINNER_URL }} >> .env @@ -45,10 +42,10 @@ jobs: echo NODE_ETHEREUM_MAINNET=${{ secrets.NODE_ETHEREUM_MAINNET }} >> .env echo BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${{ secrets.BLOCK_RESULT_OPERATOR_PRIVATE_KEY }} >> .env echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env + echo CI=${{ secrets.CI }} >> .env echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env echo CODECOV_SLUG=covalenthq/rudder >> .env echo GITHUB_SHA=$GITHUB_SHA >> .env - echo CI=${{ secrets.CI }} >> .env cat .env - name: Load .env file diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index 18c36192..c56532bf 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -68,14 +68,13 @@ services: - "3002:3002" rudder: - # image: "gcr.io/covalent-project/rudder:test" - # image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" + image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" container_name: rudder links: - "ipfs-pinner:ipfs-pinner" - build: - context: . - dockerfile: Dockerfile + # build: + # context: . + # dockerfile: Dockerfile restart: on-failure depends_on: ipfs-pinner: @@ -89,9 +88,6 @@ services: echo "brp-op-pk:" $BLOCK_RESULT_OPERATOR_PRIVATE_KEY; echo "evm-server-address:" $EVM_SERVER_URL; echo "code-test-coverage:" $CODECOV_TOKEN; - echo "github-sha:" $GITHUB_SHA; - echo "ci-run:" $CI; - echo "slug:" $CODECOV_SLUG; echo Waiting for proof-chain to be deployed...; while ! nc -v -l -k -p 8008; do @@ -104,11 +100,9 @@ services: echo Test bsp files uploaded!; cd /mix; MIX_ENV=docker mix coveralls.json; - # ci_env='bash <(curl -s https://codecov.io/env)' curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -e CODECOV_SLUG=$CODECOV_SLUG; " - # exit $?;" environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} - BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${BLOCK_RESULT_OPERATOR_PRIVATE_KEY} diff --git a/docker-compose-mbase.yml b/docker-compose-mbase.yml index 21776ccd..9738e072 100644 --- a/docker-compose-mbase.yml +++ b/docker-compose-mbase.yml @@ -1,4 +1,4 @@ -version: '3' +version: "3" # runs the entire rudder pipeline with all supporting services (including rudder) in docker # set .env such that all services in docker are talking to each other only @@ -53,7 +53,7 @@ services: echo "moonbase-node:" $NODE_ETHEREUM_MAINNET; echo "evm-server:" $EVM_SERVER_URL; echo "ipfs-node:" $IPFS_PINNER_URL; - cd /app; + cd /mix; MIX_ENV=dev mix release --overwrite; MIX_ENV=dev mix run --no-halt --eval 'Rudder.ProofChain.BlockSpecimenEventListener.start()';" environment: @@ -64,16 +64,16 @@ services: networks: - cqt-net ports: - - "9568:9568" # prometheus metrics will be exported at http://localhost:9568/metrics etc. + - "9568:9568" # prometheus metrics will be exported at http://localhost:9568/metrics etc. autoheal: image: willfarrell/autoheal container_name: autoheal volumes: - - '/var/run/docker.sock:/var/run/docker.sock' + - "/var/run/docker.sock:/var/run/docker.sock" environment: - AUTOHEAL_INTERVAL=10 - CURL_TIMEOUT=30 networks: - cqt-net: \ No newline at end of file + cqt-net: diff --git a/docker-compose-mbeam.yml b/docker-compose-mbeam.yml index d5aa1d75..c15a0bf8 100644 --- a/docker-compose-mbeam.yml +++ b/docker-compose-mbeam.yml @@ -1,4 +1,4 @@ -version: '3' +version: "3" # runs the entire rudder pipeline with all supporting services (including rudder) in docker # set .env such that all services in docker are talking to each other only services: @@ -54,7 +54,7 @@ services: echo "moonbeam-node:" $NODE_ETHEREUM_MAINNET; echo "evm-server:" $EVM_SERVER_URL; echo "ipfs-node:" $IPFS_PINNER_URL; - cd /app; + cd /mix; MIX_ENV=prod mix release --overwrite; MIX_ENV=prod mix run --no-halt --eval 'Rudder.ProofChain.BlockSpecimenEventListener.start()';" environment: @@ -71,7 +71,7 @@ services: image: willfarrell/autoheal container_name: autoheal volumes: - - '/var/run/docker.sock:/var/run/docker.sock' + - "/var/run/docker.sock:/var/run/docker.sock" environment: - AUTOHEAL_INTERVAL=10 - CURL_TIMEOUT=30 From d79856bb545ff730bee8e346e4be125f9dea8aba Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Fri, 29 Sep 2023 09:44:05 -0700 Subject: [PATCH 06/10] check for correct path for github ref Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 9 +++++---- docker-compose-ci.yml | 8 ++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 7a626e99..45390ad0 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -29,9 +29,9 @@ jobs: # - uses: satackey/action-docker-layer-caching@v0.0.10 # # Ignore the failure of a step and avoid terminating the job. # continue-on-error: true - - name: Build & Publish the Docker image - run: | - docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push + # - name: Build & Publish the Docker image + # run: | + # docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push - name: Create .env file run: | @@ -44,7 +44,8 @@ jobs: echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env echo CI=${{ secrets.CI }} >> .env echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env - echo CODECOV_SLUG=covalenthq/rudder >> .env + echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT + echo CODECOV_SLUG=$GITHUB_OUTPUT >> .env echo GITHUB_SHA=$GITHUB_SHA >> .env cat .env diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index c56532bf..45badf67 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -68,13 +68,13 @@ services: - "3002:3002" rudder: - image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" + # image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" container_name: rudder links: - "ipfs-pinner:ipfs-pinner" - # build: - # context: . - # dockerfile: Dockerfile + build: + context: . + dockerfile: Dockerfile restart: on-failure depends_on: ipfs-pinner: From ace352389ccf23700ea68ab8643ebef0cd4b6111 Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Fri, 29 Sep 2023 10:04:23 -0700 Subject: [PATCH 07/10] add few more env vars Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 5 +++-- docker-compose-ci.yml | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 45390ad0..5adbc216 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -44,9 +44,10 @@ jobs: echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env echo CI=${{ secrets.CI }} >> .env echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env - echo "branch=${GITHUB_HEAD_REF:-${GITHUB_REF#refs/heads/}}" >> $GITHUB_OUTPUT - echo CODECOV_SLUG=$GITHUB_OUTPUT >> .env + echo CODECOV_SLUG=covalenthq/rudder >> .env echo GITHUB_SHA=$GITHUB_SHA >> .env + echo GITHUB_BRANCH=$GITHUB_REF_NAME >> .env + echo cat .env - name: Load .env file diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index 45badf67..cbcd5dc1 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -102,7 +102,7 @@ services: MIX_ENV=docker mix coveralls.json; curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; - ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -e CODECOV_SLUG=$CODECOV_SLUG; " + ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -r $CODECOV_SLUG -B GITHUB_BRANCH; " environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} - BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${BLOCK_RESULT_OPERATOR_PRIVATE_KEY} From 680d96576b461bf8905fcd133157d96580aec5b5 Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Fri, 29 Sep 2023 10:19:38 -0700 Subject: [PATCH 08/10] use another method to extract branch name Signed-off-by: Pranay Valson --- .github/workflows/docker-ci-test.yaml | 13 ++++++++----- docker-compose-ci.yml | 10 +++++----- 2 files changed, 13 insertions(+), 10 deletions(-) diff --git a/.github/workflows/docker-ci-test.yaml b/.github/workflows/docker-ci-test.yaml index 5adbc216..3de75f3e 100644 --- a/.github/workflows/docker-ci-test.yaml +++ b/.github/workflows/docker-ci-test.yaml @@ -29,12 +29,14 @@ jobs: # - uses: satackey/action-docker-layer-caching@v0.0.10 # # Ignore the failure of a step and avoid terminating the job. # continue-on-error: true - # - name: Build & Publish the Docker image - # run: | - # docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push + - name: Build & Publish the Docker image + run: | + docker buildx create --name builder --use --platform=linux/amd64,linux/arm64 && docker buildx build --platform=linux/amd64,linux/arm64 . -t us-docker.pkg.dev/covalent-project/network/rudder:latest --push - name: Create .env file run: | + GIT_BRANCH=${GITHUB_BASE_REF:-${GITHUB_REF#refs/heads/}} + echo "GIT_BRANCH=$GIT_BRANCH" >> $GITHUB_ENV touch .env echo WEB3_JWT=${{ secrets.WEB3_JWT }} >> .env echo IPFS_PINNER_URL=${{ secrets.IPFS_PINNER_URL }} >> .env @@ -44,10 +46,11 @@ jobs: echo EVM_SERVER_URL=${{ secrets.EVM_SERVER_URL }} >> .env echo CI=${{ secrets.CI }} >> .env echo CODECOV_TOKEN=${{ secrets.CODECOV_TOKEN }} >> .env + echo GITHUB_REF=${{ github.ref_name }} >> .env echo CODECOV_SLUG=covalenthq/rudder >> .env echo GITHUB_SHA=$GITHUB_SHA >> .env - echo GITHUB_BRANCH=$GITHUB_REF_NAME >> .env - echo + echo GITHUB_HEAD_REF=$GITHUB_HEAD_REF >> .env + echo GITHUB_ENV=$GITHUB_ENV >> .env cat .env - name: Load .env file diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index cbcd5dc1..9b07c1b4 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -68,13 +68,13 @@ services: - "3002:3002" rudder: - # image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" + image: "us-docker.pkg.dev/covalent-project/network/rudder:latest" container_name: rudder links: - "ipfs-pinner:ipfs-pinner" - build: - context: . - dockerfile: Dockerfile + # build: + # context: . + # dockerfile: Dockerfile restart: on-failure depends_on: ipfs-pinner: @@ -102,7 +102,7 @@ services: MIX_ENV=docker mix coveralls.json; curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; - ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -r $CODECOV_SLUG -B GITHUB_BRANCH; " + ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -r $CODECOV_SLUG -B $GITHUB_HEAD_REF; " environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} - BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${BLOCK_RESULT_OPERATOR_PRIVATE_KEY} From 41a45846b48cdf3b2ae85d0562239973b52c575e Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Fri, 29 Sep 2023 12:43:46 -0700 Subject: [PATCH 09/10] add space for improvement Signed-off-by: Pranay Valson --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index c02b3cc7..2461c71b 100644 --- a/README.md +++ b/README.md @@ -24,6 +24,9 @@ Docker Lint Status + + + Twitter Follow Covalent From 557a7ca8bdb78baf2284272ad60e694771495c37 Mon Sep 17 00:00:00 2001 From: Pranay Valson Date: Fri, 29 Sep 2023 13:33:39 -0700 Subject: [PATCH 10/10] explicitly exit docker run Signed-off-by: Pranay Valson --- docker-compose-ci.yml | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/docker-compose-ci.yml b/docker-compose-ci.yml index 9b07c1b4..bcf713a1 100644 --- a/docker-compose-ci.yml +++ b/docker-compose-ci.yml @@ -102,7 +102,8 @@ services: MIX_ENV=docker mix coveralls.json; curl -Os https://uploader.codecov.io/latest/linux/codecov; chmod +x codecov; - ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -r $CODECOV_SLUG -B $GITHUB_HEAD_REF; " + ./codecov -t $CODECOV_TOKEN -C $GITHUB_SHA -r $CODECOV_SLUG -B $GITHUB_HEAD_REF; + exit 0; " environment: - NODE_ETHEREUM_MAINNET=${NODE_ETHEREUM_MAINNET} - BLOCK_RESULT_OPERATOR_PRIVATE_KEY=${BLOCK_RESULT_OPERATOR_PRIVATE_KEY}