From 17b00aa63de0a5d9bf92164b040096f4fb555fbb Mon Sep 17 00:00:00 2001 From: Prasanthi M Date: Tue, 26 May 2026 07:22:36 +0000 Subject: [PATCH 1/4] DE-1166: Run CircleCI jobs on self-hosted container runners --- .circleci/config.yml | 29 +++++++++++++---------------- 1 file changed, 13 insertions(+), 16 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 69c3f117..566caa40 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -5,16 +5,17 @@ executors: golang-executor: docker: - image: gcr.io/gcr-for-testing/golang:1.25.10 + resource_class: arangodb/medium-amd64 - x86-machine-executor: - machine: - image: ubuntu-2204:current - docker_layer_caching: true + x86-docker-executor: + docker: + - image: gcr.io/gcr-for-testing/golang:1.25.10 + resource_class: arangodb/medium-amd64-privileged - arm-machine-executor: - machine: - image: ubuntu-2204:current - resource_class: arm.medium + arm-docker-executor: + docker: + - image: gcr.io/gcr-for-testing/golang:1.25.10 + resource_class: arangodb/medium-arm64-privileged aliases: - ¬ify_slack_on_fail slack/notify: @@ -78,14 +79,12 @@ jobs: check-code: executor: golang-executor steps: - - setup_remote_docker: - docker_layer_caching: true - checkout - run: make tools - run: make linter run-unit-tests: - executor: x86-machine-executor + executor: x86-docker-executor steps: - checkout - run: make run-unit-tests @@ -93,7 +92,7 @@ jobs: GOIMAGE: << pipeline.parameters.goImage >> download-demo-data: - executor: x86-machine-executor + executor: golang-executor steps: - checkout - run: mkdir -p $HOME/resources @@ -118,7 +117,7 @@ jobs: # UNIFIED INTEGRATION TEST JOB X86 # ---------------------------------------- run-integration-tests: - executor: x86-machine-executor + executor: x86-docker-executor parameters: test-to-run: type: string @@ -160,7 +159,7 @@ jobs: # ARM INTEGRATION TEST JOB # ---------------------------------------- run-integration-tests-arm: - executor: arm-machine-executor + executor: arm-docker-executor parameters: test-to-run: type: string @@ -206,8 +205,6 @@ jobs: vulncheck: executor: golang-executor steps: - - setup_remote_docker: - docker_layer_caching: true - checkout - run: make tools - run: make vulncheck From 9a9002a322c3feaca8f402694d2eee1418e97ebf Mon Sep 17 00:00:00 2001 From: Prasanthi M Date: Tue, 26 May 2026 07:34:54 +0000 Subject: [PATCH 2/4] DE-1166: Run CircleCI jobs on self-hosted container runners --- .circleci/config.yml | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/.circleci/config.yml b/.circleci/config.yml index 566caa40..21c84b39 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -59,6 +59,20 @@ parameters: default: "" commands: + install-docker-client: + description: "Install Docker client in the job container" + steps: + - run: + name: Install Docker client + command: | + if command -v docker >/dev/null 2>&1; then + docker version + exit 0 + fi + apt-get update + apt-get install -y docker.io + docker version + run-test-if-pr: description: "Run a test command only if this is a pull request" parameters: @@ -87,6 +101,7 @@ jobs: executor: x86-docker-executor steps: - checkout + - install-docker-client - run: make run-unit-tests environment: GOIMAGE: << pipeline.parameters.goImage >> @@ -132,6 +147,7 @@ jobs: description: "v1/v2 Foxx tests need itzpapalotl zip from download-demo-data workspace; v3+ does not." steps: - checkout + - install-docker-client - when: condition: equal: [ true, << parameters.needs_foxx_workspace >> ] @@ -174,6 +190,7 @@ jobs: description: "v1/v2 Foxx tests need itzpapalotl zip from download-demo-data workspace; v3+ does not." steps: - checkout + - install-docker-client - when: condition: equal: [ true, << parameters.needs_foxx_workspace >> ] From 512386230e5059f5eea6a8e127f20f6edc97c911 Mon Sep 17 00:00:00 2001 From: Prasanthi M Date: Tue, 26 May 2026 07:59:54 +0000 Subject: [PATCH 3/4] DE-1166: Run CircleCI jobs on self-hosted container runners --- .circleci/config.yml | 30 ++++++++++++++++++------------ 1 file changed, 18 insertions(+), 12 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 21c84b39..75f4bf28 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -59,19 +59,25 @@ parameters: default: "" commands: - install-docker-client: - description: "Install Docker client in the job container" + setup-docker: + description: "Install Docker and start the daemon in the job container" steps: - run: - name: Install Docker client + name: Set up Docker command: | - if command -v docker >/dev/null 2>&1; then - docker version - exit 0 + if ! command -v docker >/dev/null 2>&1; then + export DEBIAN_FRONTEND=noninteractive + apt-get update + apt-get install -y docker.io + fi + if ! docker info >/dev/null 2>&1; then + dockerd >/tmp/dockerd.log 2>&1 & + for i in $(seq 1 30); do + docker info >/dev/null 2>&1 && break + sleep 1 + done fi - apt-get update - apt-get install -y docker.io - docker version + docker info run-test-if-pr: description: "Run a test command only if this is a pull request" @@ -101,7 +107,7 @@ jobs: executor: x86-docker-executor steps: - checkout - - install-docker-client + - setup-docker - run: make run-unit-tests environment: GOIMAGE: << pipeline.parameters.goImage >> @@ -147,7 +153,7 @@ jobs: description: "v1/v2 Foxx tests need itzpapalotl zip from download-demo-data workspace; v3+ does not." steps: - checkout - - install-docker-client + - setup-docker - when: condition: equal: [ true, << parameters.needs_foxx_workspace >> ] @@ -190,7 +196,7 @@ jobs: description: "v1/v2 Foxx tests need itzpapalotl zip from download-demo-data workspace; v3+ does not." steps: - checkout - - install-docker-client + - setup-docker - when: condition: equal: [ true, << parameters.needs_foxx_workspace >> ] From 8cf0faaa008745c08b3e070ed9c27e9c44c1f6b7 Mon Sep 17 00:00:00 2001 From: Prasanthi M Date: Tue, 26 May 2026 08:09:00 +0000 Subject: [PATCH 4/4] DE-1166: Run CircleCI jobs on self-hosted container runners --- .circleci/config.yml | 10 +++++----- 1 file changed, 5 insertions(+), 5 deletions(-) diff --git a/.circleci/config.yml b/.circleci/config.yml index 75f4bf28..210a69f9 100644 --- a/.circleci/config.yml +++ b/.circleci/config.yml @@ -116,7 +116,7 @@ jobs: executor: golang-executor steps: - checkout - - run: mkdir -p $HOME/resources + - run: mkdir -p /home/circleci/resources - run: name: Download itzpapalotl demo foxx service command: | @@ -124,8 +124,8 @@ jobs: echo "This is not a pull request. Skipping download..." exit 0 fi - if ! [ -f "$HOME/resources/itzpapalotl-v1.2.0.zip" ]; then - curl -L0 -o $HOME/resources/itzpapalotl-v1.2.0.zip \ + if ! [ -f "/home/circleci/resources/itzpapalotl-v1.2.0.zip" ]; then + curl -L0 -o /home/circleci/resources/itzpapalotl-v1.2.0.zip \ "https://github.com/arangodb-foxx/demo-itzpapalotl/archive/v1.2.0.zip" fi - persist_to_workspace: @@ -164,7 +164,7 @@ jobs: at: /home/circleci - run: name: Ensure resources directory exists - command: mkdir -p $HOME/resources + command: mkdir -p /home/circleci/resources - run: name: Configure Foxx demo resources mount for Dockerized tests command: | @@ -207,7 +207,7 @@ jobs: at: /home/circleci - run: name: Ensure resources directory exists - command: mkdir -p $HOME/resources + command: mkdir -p /home/circleci/resources - run: name: Configure Foxx demo resources mount for Dockerized tests command: |