From 28e713f6b357a7c41273761685c1d2fbe403c8af Mon Sep 17 00:00:00 2001 From: Mandy Chen Date: Tue, 29 Jul 2025 10:27:21 -0700 Subject: [PATCH 1/2] Remove all buildkite references --- .buildkite/pipeline.yml | 137 ------------------ .buildkite/scripts/fossa.sh | 15 -- .buildkite/scripts/gen_coverage_metadata.sh | 33 ----- README.md | 2 +- docker/buildkite/Dockerfile | 22 --- docker/buildkite/docker-compose-local.yml | 151 -------------------- docker/buildkite/docker-compose.yml | 124 ---------------- 7 files changed, 1 insertion(+), 483 deletions(-) delete mode 100644 .buildkite/pipeline.yml delete mode 100755 .buildkite/scripts/fossa.sh delete mode 100755 .buildkite/scripts/gen_coverage_metadata.sh delete mode 100644 docker/buildkite/Dockerfile delete mode 100644 docker/buildkite/docker-compose-local.yml delete mode 100644 docker/buildkite/docker-compose.yml diff --git a/.buildkite/pipeline.yml b/.buildkite/pipeline.yml deleted file mode 100644 index 599a52f7a..000000000 --- a/.buildkite/pipeline.yml +++ /dev/null @@ -1,137 +0,0 @@ -# `yq 'explode(.)' .buildkite/pipeline.yml` to view expanded anchors/aliases -container: - kubernetes: &kubernetes - gitEnvFrom: - - secretRef: - name: oss-github-ssh-credentials - sidecars: - - image: us-west1-docker.pkg.dev/ci-compute/buildkite-images/buildkite-dind:v1 - volumeMounts: - - mountPath: /var/run/ - name: docker-sock - securityContext: - privileged: true - allowPrivilegeEscalation: true - mirrorVolumeMounts: true # CRITICAL: this must be at the same indentation level as sidecars - podSpec: &podSpec - containers: - - &commandContainer - image: us-west1-docker.pkg.dev/ci-compute/buildkite-images/buildkite-command-container:v2 - command: - - |- - echo "Command step was not overridden." - exit 1 - volumeMounts: - - mountPath: /var/run/ - name: docker-sock - resources: - requests: - cpu: 7500m - memory: 28G - volumes: - - name: docker-sock - emptyDir: {} - -agents: - queue: "buildkite-gcp" -steps: - - label: ":golang: unit-test" - artifact_paths: - - ".build/*/coverage/*.out" - - ".build/cover.out" - - ".build/metadata.txt" - plugins: - - kubernetes: - <<: *kubernetes - podSpec: - <<: *podSpec - containers: - - <<: *commandContainer - command: - - |- - make unit_test - .buildkite/scripts/gen_coverage_metadata.sh .build/metadata.txt - - docker-compose#v3.0.0: - run: unit-test - config: docker/buildkite/docker-compose.yml - - - label: ":golangci-lint: validate code is clean" - artifact_paths: [ ] - retry: - automatic: - limit: 2 - plugins: - - kubernetes: - <<: *kubernetes - podSpec: - <<: *podSpec - containers: - - <<: *commandContainer - command: - - |- - ./scripts/golint.sh - - docker-compose#v3.0.0: - run: unit-test - config: docker/buildkite/docker-compose.yml - - - label: ":golang: integration-test-sticky-off" - artifact_paths: - - ".build/*/coverage/*.out" - retry: - automatic: - limit: 2 - plugins: - - kubernetes: - <<: *kubernetes - podSpec: - <<: *podSpec - containers: - - <<: *commandContainer - command: - - |- - make integ_test_sticky_off - - docker-compose#v3.0.0: - run: integ-test - config: docker/buildkite/docker-compose.yml - - - label: ":golang: integration-test-sticky-on" - artifact_paths: - - ".build/*/coverage/*.out" - retry: - automatic: - limit: 2 - plugins: - - kubernetes: - <<: *kubernetes - podSpec: - <<: *podSpec - containers: - - <<: *commandContainer - command: - - |- - make integ_test_sticky_on - - docker-compose#v3.0.0: - run: integ-test - config: docker/buildkite/docker-compose.yml - - - label: ":golang: integration-test-grpc-adapter" - artifact_paths: - - ".build/*/coverage/*.out" - retry: - automatic: - limit: 2 - plugins: - - kubernetes: - <<: *kubernetes - podSpec: - <<: *podSpec - containers: - - <<: *commandContainer - command: - - |- - make integ_test_grpc - - docker-compose#v3.0.0: - run: integ-test-grpc - config: docker/buildkite/docker-compose.yml - -# TODO: delete this file after migration to github actions \ No newline at end of file diff --git a/.buildkite/scripts/fossa.sh b/.buildkite/scripts/fossa.sh deleted file mode 100755 index e158a71f5..000000000 --- a/.buildkite/scripts/fossa.sh +++ /dev/null @@ -1,15 +0,0 @@ -#!/bin/bash - -set -exo pipefail - -curl -H 'Cache-Control: no-cache' https://raw.githubusercontent.com/fossas/fossa-cli/master/install-latest.sh | bash -s -- -b ~/ - -~/fossa analyze - -# Capture the exit status -EXIT_STATUS=$? - -echo "fossa script exits with status $EXIT_STATUS" -exit $EXIT_STATUS - -# TODO: delete this file after migration to github actions \ No newline at end of file diff --git a/.buildkite/scripts/gen_coverage_metadata.sh b/.buildkite/scripts/gen_coverage_metadata.sh deleted file mode 100755 index 55407b627..000000000 --- a/.buildkite/scripts/gen_coverage_metadata.sh +++ /dev/null @@ -1,33 +0,0 @@ -#!/bin/sh - -set -ex - -# This script generates coverage metadata for the coverage report. -# Output is used by SonarQube integration in Uber and not used by OS repo coverage tool itself. - -# Example output: -# commit-sha: 6953daa563e8e44512bc349c9608484cfd4ec4ff -# timestamp: 2024-03-04T19:29:16Z - -# Required env variables: -# - BUILDKITE_BRANCH -# - BUILDKITE_COMMIT - -output_path="$1" - -if [ "$BUILDKITE_BRANCH" != "master" ] && [ "$BUILDKITE_BRANCH" != "origin/master" ]; then - echo "Coverage metadata is only generated for master branch. Current branch: $BUILDKITE_BRANCH" - exit 0 -fi - -if [ -z "$BUILDKITE_COMMIT" ]; then - echo "BUILDKITE_COMMIT is not set" - exit 1 -fi - -echo "commit-sha: $BUILDKITE_COMMIT" > "$output_path" -echo "timestamp: $(date -u +%Y-%m-%dT%H:%M:%SZ)" >> "$output_path" - -echo "Coverage metadata written to $output_path" - -# TODO: delete this file after migration to github actions \ No newline at end of file diff --git a/README.md b/README.md index 239c6012e..84d84e341 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ # Go framework for Cadence -[![Build Status](https://badge.buildkite.com/e7241785444519bdfd1defc68839fd19a89c15adb3477c73f7.svg?theme=github&branch=master)](https://buildkite.com/uberopensource/cadence-go-client) +[![CI Checks](https://github.com/cadence-workflow/cadence-go-client/actions/workflows/ci-checks.yml/badge.svg)](https://github.com/cadence-workflow/cadence-go-client/actions/workflows/ci-checks.yml) [![Coverage](https://codecov.io/gh/uber-go/cadence-client/graph/badge.svg?token=iEpqo5HbDe)](https://codecov.io/gh/uber-go/cadence-client) [![GoDoc](https://godoc.org/go.uber.org/cadence?status.svg)](https://godoc.org/go.uber.org/cadence) diff --git a/docker/buildkite/Dockerfile b/docker/buildkite/Dockerfile deleted file mode 100644 index 49e8521c2..000000000 --- a/docker/buildkite/Dockerfile +++ /dev/null @@ -1,22 +0,0 @@ -FROM golang:1.24 - -RUN mkdir -p /go/src/go.uber.org/cadence -WORKDIR /go/src/go.uber.org/cadence - -ADD go.mod go.sum /go/src/go.uber.org/cadence/ - -# allow git-status and similar to work -RUN git config --global --add safe.directory /go/src/go.uber.org/cadence -RUN GO111MODULE=on go mod download - -# Install Buildkite agent -# https://buildkite.com/docs/agent/v3/ubuntu -RUN apt-get install -y apt-transport-https dirmngr curl -RUN curl -fsSL https://keys.openpgp.org/vks/v1/by-fingerprint/32A37959C2FA5C3C99EFBC32A79206696452D198 | \ - gpg --dearmor -o /usr/share/keyrings/buildkite-agent-archive-keyring.gpg -RUN echo \ - "deb [signed-by=/usr/share/keyrings/buildkite-agent-archive-keyring.gpg] https://apt.buildkite.com/buildkite-agent stable main" | \ - tee /etc/apt/sources.list.d/buildkite-agent.list -RUN apt-get update && apt-get install -yy --no-install-recommends buildkite-agent - -# TODO: delete this file after migration to github actions \ No newline at end of file diff --git a/docker/buildkite/docker-compose-local.yml b/docker/buildkite/docker-compose-local.yml deleted file mode 100644 index 3f64919f2..000000000 --- a/docker/buildkite/docker-compose-local.yml +++ /dev/null @@ -1,151 +0,0 @@ -version: "3.5" - -services: - cassandra: - image: cassandra:4.1.3 - ports: - - "9042:9042" - networks: - services-network: - aliases: - - cassandra - - statsd: - image: hopsoft/graphite-statsd - ports: - - "8080:80" - - "2003:2003" - - "8125:8125" - - "8126:8126" - networks: - services-network: - aliases: - - statsd - - cadence: - image: ubercadence/server:master-auto-setup - ports: - - "7933:7933" - - "7833:7833" - - "7934:7934" - - "7935:7935" - - "7939:7939" - environment: - - "CASSANDRA_SEEDS=cassandra" - - "STATSD_ENDPOINT=statsd:8125" - - "DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development.yaml" - depends_on: - - cassandra - - statsd - networks: - services-network: - aliases: - - cadence - - integ-test-sticky-off: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - command: - - /bin/sh - - -e - - -c - - | - make integ_test_sticky_off - environment: - - "SERVICE_ADDR=cadence:7933" - - "GO111MODULE=on" - depends_on: - - cadence - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - integ-test-sticky-off - - integ-test-sticky-on: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - command: - - /bin/sh - - -e - - -c - - | - make integ_test_sticky_on - environment: - - "SERVICE_ADDR=cadence:7933" - - "GO111MODULE=on" - depends_on: - - cadence - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - integ-test-sticky-on - - integ-test-grpc: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - command: - - /bin/sh - - -e - - -c - - | - make integ_test_grpc - environment: - - "SERVICE_ADDR=cadence:7833" - - "ENABLE_GRPC_ADAPTER=true" - - "GO111MODULE=on" - depends_on: - - cadence - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - integ-test-grpc - - unit-test: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - command: - - /bin/sh - - -e - - -c - - | - make unit_test - environment: - - "GO111MODULE=on" - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - unit-test - - coverage-report: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - command: - - /bin/sh - - -e - - -c - - | - make coverage_report - environment: - - "GO111MODULE=on" - volumes: - - ../../:/go/src/go.uber.org/cadence - -networks: - services-network: - name: services-network - driver: bridge - -# TODO: delete this file after migration to github actions \ No newline at end of file diff --git a/docker/buildkite/docker-compose.yml b/docker/buildkite/docker-compose.yml deleted file mode 100644 index 5abdb524e..000000000 --- a/docker/buildkite/docker-compose.yml +++ /dev/null @@ -1,124 +0,0 @@ -version: "3.5" - -services: - cassandra: - image: cassandra:4.1.3 - ports: - - "9042:9042" - networks: - services-network: - aliases: - - cassandra - - statsd: - image: hopsoft/graphite-statsd - ports: - - "8080:80" - - "2003:2003" - - "8125:8125" - - "8126:8126" - networks: - services-network: - aliases: - - statsd - - cadence: - image: ubercadence/server:master-auto-setup - ports: - - "7933:7933" - - "7833:7833" - - "7934:7934" - - "7935:7935" - - "7939:7939" - environment: - - "CASSANDRA_SEEDS=cassandra" - - "STATSD_ENDPOINT=statsd:8125" - - "DYNAMIC_CONFIG_FILE_PATH=config/dynamicconfig/development.yaml" - depends_on: - - cassandra - - statsd - networks: - services-network: - aliases: - - cadence - - integ-test: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - environment: - - "SERVICE_ADDR=cadence:7933" - - "GO111MODULE=on" - depends_on: - - cadence - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - integ-test - - integ-test-grpc: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - environment: - - "SERVICE_ADDR=cadence:7833" - - "ENABLE_GRPC_ADAPTER=true" - - "GO111MODULE=on" - depends_on: - - cadence - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - integ-test - - unit-test: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - environment: - - "GO111MODULE=on" - - BUILDKITE_BRANCH - - BUILDKITE_COMMIT - volumes: - - ../../:/go/src/go.uber.org/cadence - networks: - services-network: - aliases: - - unit-test - - coverage-report: - build: - context: ../../ - dockerfile: ./docker/buildkite/Dockerfile - environment: - - CI - - BUILDKITE - - BUILDKITE_AGENT_ACCESS_TOKEN - - BUILDKITE_JOB_ID - - BUILDKITE_BUILD_ID - - BUILDKITE_BUILD_NUMBER - - BUILDKITE_BRANCH - - BUILDKITE_BUILD_URL - - BUILDKITE_PROJECT_SLUG - - BUILDKITE_COMMIT - - BUILDKITE_PULL_REQUEST - - BUILDKITE_TAG - - BUILDKITE_REPO - - BUILDKITE_BUILD_CREATOR - - BUILDKITE_BUILD_CREATOR_EMAIL - - BUILDKITE_BUILD_CREATOR_TEAMS - - BUILDKITE_PULL_REQUEST_REPO - - "GO111MODULE=on" - volumes: - - ../../:/go/src/go.uber.org/cadence - -networks: - services-network: - name: services-network - driver: bridge - -# TODO: delete this file after migration to github actions \ No newline at end of file From c73549dba8d1bc760ad642d5ad19fa1c848c0278 Mon Sep 17 00:00:00 2001 From: Mandy Chen Date: Tue, 29 Jul 2025 10:41:06 -0700 Subject: [PATCH 2/2] Rerun unit test automatically --- .github/workflows/ci-checks.yml | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/.github/workflows/ci-checks.yml b/.github/workflows/ci-checks.yml index a83297452..959f2630a 100644 --- a/.github/workflows/ci-checks.yml +++ b/.github/workflows/ci-checks.yml @@ -21,7 +21,12 @@ jobs: go-version: '1.23.4' - name: Run unit test - run: docker compose -f docker/github_actions/docker-compose.yml run unit-test bash -c "make unit_test && ./scripts/gen_coverage_metadata.sh .build/metadata.txt" + uses: nick-fields/retry@v3 + with: + max_attempts: 2 + timeout_minutes: 30 + command: | + docker compose -f docker/github_actions/docker-compose.yml run unit-test bash -c "make unit_test && ./scripts/gen_coverage_metadata.sh .build/metadata.txt" - name: Upload coverage artifacts uses: actions/upload-artifact@v4