From 7cba23e339332b96e69c3b8798d4fea54f34764e Mon Sep 17 00:00:00 2001 From: Edouard Schweisguth Date: Fri, 13 Feb 2026 10:05:14 +0100 Subject: [PATCH] Remove circle ci --- .circleci/config.yml | 299 ------------------------------------------- 1 file changed, 299 deletions(-) delete mode 100644 .circleci/config.yml diff --git a/.circleci/config.yml b/.circleci/config.yml deleted file mode 100644 index 1423604c3..000000000 --- a/.circleci/config.yml +++ /dev/null @@ -1,299 +0,0 @@ -# Unless explicitly stated otherwise all files in this repository are licensed -# under the Apache License Version 2.0. -# This product includes software developed at Datadog (https://www.datadoghq.com/). -# Copyright 2026 Datadog, Inc. - -version: 2.1 - -commands: - go_save_cache: - description: Save $GOPATH directory as workspace - steps: - # circleci workspace are meant to be used to share data between jobs - # https://circleci.com/docs/workspaces/ - - persist_to_workspace: - # Must be an absolute path, or relative path from working_directory. This is a directory on the container which is - # taken to be the root directory of the workspace. - root: /home/circleci/go - # Must be relative path from root - paths: - - . - go_restore_cache: - description: Restore golang cache - steps: - - attach_workspace: - # Must be absolute path or relative path from working_directory - at: /home/circleci/go - python_install_requirements: - description: Install requirements in requirements.txt using pip - steps: - - run: - name: Install Python requirements - command: pip3 install -r tasks/requirements.txt - ubuntu_install_python: - description: Install python3.12 - steps: - - run: - name: Install python 3.12 - command: sudo apt update && sudo apt install python3.12 python3.12-venv - alpine_install_git: - description: Install required dependencies - steps: - - run: - name: Install git - command: apk add --no-cache git openssh - setup_github_ssh: - description: Add GitHub to SSH known hosts - steps: - - run: - name: Add github.com to known hosts - command: mkdir -p ~/.ssh && touch ~/.ssh/known_hosts && ssh-keyscan github.com >> ~/.ssh/known_hosts - -templates: - # sets the working directory to the project path - working_directory: &working_directory - working_directory: /home/circleci/go/src/github.com/DataDog/chaos-controller - -executors: - golang: - <<: *working_directory - docker: - # This is circle ci images, provides default tool installed (like docker) to ease step definition and avoid apt-get/update things - # https://circleci.com/docs/circleci-images/#next-gen-language-images - - image: cimg/go:1.25.6 - resource_class: 2xlarge - python: - <<: *working_directory - docker: - - image: python:3.8.1-alpine3.10 - bash: - <<: *working_directory - docker: - - image: bash:5.0 - ubuntu: - <<: *working_directory - machine: - image: ubuntu-2404:2025.09.1 - resource_class: xlarge # if you change the resource_class here, please adapt Makefile/minikube start cpu/memory accordingly -jobs: - # prepares the CI environment by checking out the code, - # installing a bunch of tools and downloading modules dependencies - # into the Go home path so we don't have to do it again in other - # CI jobs - # we store binaries in go/bin to ease their usage as it's already in PATH - prepare-env: - executor: golang - steps: - - checkout - - run: - name: Install binaries - command: make -j6 install-golangci-lint install-kubebuilder install-helm install-controller-gen install-datadog-ci install-yamlfmt install-mockery - - run: - name: Install protoc - command: make install-protobuf PROTOC_OS=linux - - go_save_cache - # docker build image - docker-build: - executor: golang - parameters: - target: - description: "which target to build" - type: string - steps: - - go_restore_cache - - setup_github_ssh - - setup_remote_docker: - docker_layer_caching: true - - run: - name: Build docker image for <> - command: make docker-build-<> - - persist_to_workspace: - # Must be an absolute path, or relative path from working_directory. This is a directory on the container which is - # taken to be the root directory of the workspace. - root: /home/circleci/go - # Must be relative path from root - paths: - - src/github.com/DataDog/chaos-controller/bin/<< parameters.target >>/<< parameters.target >>.tar.gz - go-make: - executor: <> - parameters: - target: - description: "which make target to call" - type: string - diff-fails: - description: "should git diff exit code be checked following ran command" - type: boolean - default: false - executor: - type: string - default: golang - with-python: - type: boolean - default: false - steps: - - go_restore_cache - - setup_github_ssh - - when: - condition: <> # if the job needs python, we install it - steps: - - ubuntu_install_python - - run: - name: run make <> - command: make <> - - when: - condition: << parameters.diff-fails >> - steps: - - run: - name: Check diffs following generate - command: git diff --exit-code - # runs the tests - test: - executor: golang - steps: - - go_restore_cache - - setup_github_ssh - - run: make test - - store_test_results: - path: report-test.xml - # run e2e tests - e2e-test: - executor: ubuntu - steps: - - go_restore_cache - - setup_github_ssh - - run: - name: Wait for Docker Daemon to be up and running - command: timeout 3m /bin/sh -c 'until docker version; do sleep 5; done' - - run: - name: Configure Minikube - command: make ci-install-minikube - - run: - name: Install requirements - command: make lima-install-cert-manager KUBECTL="minikube kubectl --" - - run: - name: Build and load images - command: make minikube-load-all - - run: - name: Run e2e tests - command: | - export PATH="/home/circleci/go/bin:${PATH}" - make e2e-test GOBIN=/home/circleci/go/bin KUBECTL="minikube kubectl --" E2E_TEST_CLUSTER_NAME="minikube" E2E_TEST_KUBECTL_CONTEXT="minikube" - no_output_timeout: 15m - max_auto_reruns: 3 - - run: - name: Save logs - when: on_fail - command: mkdir -p /tmp/logs && minikube kubectl -- -n chaos-engineering logs -lapp=chaos-controller -c manager --tail=-1 > /tmp/logs/e2e.txt - - store_test_results: - path: report-e2e-test.xml - - store_artifacts: - path: /tmp/logs - python-check: - executor: python - parameters: - target: - description: "which check to run" - type: string - steps: - - alpine_install_git - - checkout - - python_install_requirements - - run: - name: Ensure <> are up-to-date - command: inv <> - - run: - name: Check diffs following generate - command: git diff --exit-code - protobuf: - executor: golang - parameters: - target: - description: "which grpc protobuf to generate" - type: string - steps: - - go_restore_cache - - run: - name: ensures that the grpc protobuf files genereated by dogfood/<>/<>.proto are up to date - command: make generate-<>-protobuf - - run: - name: Check diffs following generate - command: git diff --exit-code ':!go.*' - # runs a spellcheck job on documentation for - doc-spellcheck: - docker: - - image: tmaier/markdown-spellcheck:latest - steps: - - checkout - - run: - name: Spell check - command: | - mdspell --report --en-us --ignore-numbers --ignore-acronyms $(find . -name vendor -prune -o -name '*.md' -print) || echo "please run 'make spellcheck' for local testing" - -workflows: - test_and_build: - jobs: - - prepare-env - - docker-build: - name: docker-build-injector - target: injector - requires: [prepare-env] - - docker-build: - name: docker-build-manager - target: manager - requires: [prepare-env] - - docker-build: - name: docker-build-handler - target: handler - requires: [prepare-env] - - go-make: - name: dependencies - target: godeps - diff-fails: true - requires: [prepare-env] - - go-make: - name: manifests - target: manifests - diff-fails: true - requires: [prepare-env] - - go-make: - name: verify-mocks - target: generate-mocks - diff-fails: true - with-python: true - requires: [prepare-env] - - go-make: - name: vet - target: vet - requires: [prepare-env] - - go-make: - name: fmt - target: fmt - requires: [prepare-env] - - go-make: - name: lint - target: lint - requires: [prepare-env] - - test: - name: test - requires: [prepare-env] - - e2e-test: - name: e2e-test - requires: - - docker-build-injector - - docker-build-manager - - docker-build-handler - - python-check: - name: third-party-licenses - target: license-check - - python-check: - name: license-header - target: header-check - - protobuf: - name: generate-disruptionlistener-protos - target: disruptionlistener - requires: [prepare-env] - - protobuf: - name: generate-chaosdogfood-protos - target: chaosdogfood - requires: [prepare-env] - - doc-spellcheck