From d79023c64c89cc76e02b599e73f47b41417e9359 Mon Sep 17 00:00:00 2001 From: Renan Santos Date: Tue, 27 Aug 2024 14:13:06 -0300 Subject: [PATCH] feat(advancer): add the advancer's repository --- .github/workflows/build.yml | 94 +++++----- build/Dockerfile | 36 ++++ internal/node/advancer/advancer.go | 16 +- internal/node/advancer/advancer_test.go | 43 ++--- internal/repository/advancer.go | 221 ++++++++++++++++++++++++ internal/repository/advancer_test.go | 163 +++++++++++++++++ internal/repository/base.go | 17 +- internal/repository/base_test.go | 29 +--- test/advancer/advancer_test.go | 206 ++++++++++++++++++++++ test/tooling/db/db.go | 77 +++++++++ 10 files changed, 789 insertions(+), 113 deletions(-) create mode 100644 internal/repository/advancer.go create mode 100644 internal/repository/advancer_test.go create mode 100644 test/advancer/advancer_test.go create mode 100644 test/tooling/db/db.go diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index a92963a60..013e94ea3 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -19,8 +19,57 @@ permissions: contents: write jobs: + build-ci-base: + runs-on: ubuntu-22.04 + outputs: + output: ${{ steps.export_tag.outputs.image_tag }} + steps: + - uses: actions/checkout@v4 + with: + submodules: recursive + + - name: Docker meta + id: docker_meta + uses: docker/metadata-action@v5 + with: + images: | + name=ghcr.io/cartesi/rollups-node-ci + tags: | + type=semver,pattern={{version}} + type=ref,event=branch + type=ref,event=pr + + - name: Login to GitHub Container Registry + uses: docker/login-action@v3 + with: + registry: ghcr.io + username: ${{ github.actor }} + password: ${{ secrets.GITHUB_TOKEN }} + + - uses: depot/setup-action@v1 + - name: Build and push docker image + id: docker_build + uses: depot/bake-action@v1 + with: + files: | + ./docker-bake.hcl + ${{ steps.docker_meta.outputs.bake-file }} + ./docker-bake.platforms.hcl + targets: rollups-node-ci + push: true + project: ${{ vars.DEPOT_PROJECT }} + workdir: build + + - name: Export Image Tag + id : export_tag + run : echo "image_tag=${{steps.docker_meta.outputs.version}}" >> "$GITHUB_OUTPUT" + do-basic-checks: runs-on: ubuntu-22.04 + container: + image: ghcr.io/cartesi/rollups-node-ci:${{needs.build-ci-base.outputs.output}} + needs: + - build-ci-base steps: - uses: actions/checkout@v4 with: @@ -126,51 +175,6 @@ jobs: - name: Run tests run: cargo test - build-ci-base: - runs-on: ubuntu-22.04 - outputs: - output: ${{ steps.export_tag.outputs.image_tag }} - steps: - - uses: actions/checkout@v4 - with: - submodules: recursive - - - name: Docker meta - id: docker_meta - uses: docker/metadata-action@v5 - with: - images: | - name=ghcr.io/cartesi/rollups-node-ci - tags: | - type=semver,pattern={{version}} - type=ref,event=branch - type=ref,event=pr - - - name: Login to GitHub Container Registry - uses: docker/login-action@v3 - with: - registry: ghcr.io - username: ${{ github.actor }} - password: ${{ secrets.GITHUB_TOKEN }} - - - uses: depot/setup-action@v1 - - name: Build and push docker image - id: docker_build - uses: depot/bake-action@v1 - with: - files: | - ./docker-bake.hcl - ${{ steps.docker_meta.outputs.bake-file }} - ./docker-bake.platforms.hcl - targets: rollups-node-ci - push: true - project: ${{ vars.DEPOT_PROJECT }} - workdir: build - - - name: Export Image Tag - id : export_tag - run : echo "image_tag=${{steps.docker_meta.outputs.version}}" >> "$GITHUB_OUTPUT" - test-go: runs-on: ubuntu-22.04 container: diff --git a/build/Dockerfile b/build/Dockerfile index 1187e8c3a..6afa92081 100644 --- a/build/Dockerfile +++ b/build/Dockerfile @@ -375,6 +375,42 @@ ARG GO_BUILD_PATH ARG ROLLUPS_NODE_VERSION WORKDIR ${GO_BUILD_PATH} +ARG MACHINE_EMULATOR_VERSION +ARG DEBIAN_FRONTEND=noninteractive + +# Install ca-certificates and curl (setup). +RUN <