diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml deleted file mode 100644 index 67f607f3..00000000 --- a/.github/workflows/docker.yml +++ /dev/null @@ -1,74 +0,0 @@ -name: docker - -on: - push: - branches: - - main - pull_request: - branches: - - main - -concurrency: - group: ${{ github.workflow }}-${{ github.event_name == 'push' && github.run_number || github.event.pull_request.number }} - cancel-in-progress: true - -permissions: - contents: read - id-token: write - -jobs: - docker: - name: Build Docker image - runs-on: ubuntu-latest - strategy: - matrix: - app: - - synchronizer - - proxy - fips_mode: - - enabled - - disabled - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Setup QEMU - uses: docker/setup-qemu-action@v3 - with: - platforms: amd64,arm64 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to DockerHub - uses: docker/login-action@v3 - with: - username: ${{ vars.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_RO_TOKEN }} - - - name: Configure AWS credentials - if: ${{ github.event_name == 'push' }} - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: ${{ vars.ECR_TESTING_ROLE_ARN }} - aws-region: us-east-1 - - - name: Login to Amazon ECR - if: ${{ github.event_name == 'push' }} - uses: aws-actions/amazon-ecr-login@v2 - - - name: Get version - run: echo "VERSION=$(awk '/^const Version/{gsub(/"/, "", $4); print $4}' splitio/version.go)" >> $GITHUB_ENV - - - name: Docker Build and Push - uses: docker/build-push-action@v6 - with: - context: . - file: docker/Dockerfile.${{ matrix.app }} - push: ${{ github.event_name == 'push' }} - platforms: linux/amd64,linux/arm64 - tags: | - ${{ vars.ECR_TESTING_URL }}/split-${{ matrix.app }}${{ matrix.fips_mode == 'enabled' && '-fips' || ''}}:${{ env.VERSION }} - ${{ vars.ECR_TESTING_URL }}/split-${{ matrix.app }}${{ matrix.fips_mode == 'enabled' && '-fips' || '' }}:latest - build-args: | - FIPS_MODE=${{ matrix.fips_mode }} diff --git a/.github/workflows/unstable.yml b/.github/workflows/unstable.yml deleted file mode 100644 index 44e513f4..00000000 --- a/.github/workflows/unstable.yml +++ /dev/null @@ -1,66 +0,0 @@ -name: unstable - -on: - push: - branches-ignore: - - main - -permissions: - contents: read - id-token: write - -jobs: - push-docker-image: - name: Build and Push Docker Image - runs-on: ubuntu-latest - strategy: - matrix: - app: - - synchronizer - - proxy - fips_mode: - - enabled - - disabled - steps: - - name: Checkout code - uses: actions/checkout@v4 - - - name: Setup QEMU - uses: docker/setup-qemu-action@v3 - with: - platforms: amd64,arm64 - - - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 - - - name: Login to DockerHub - uses: docker/login-action@v3 - with: - username: ${{ vars.DOCKERHUB_USERNAME }} - password: ${{ secrets.DOCKERHUB_RO_TOKEN }} - - - name: Configure AWS credentials - if: ${{ github.event_name == 'push' }} - uses: aws-actions/configure-aws-credentials@v4 - with: - role-to-assume: ${{ vars.ECR_TESTING_ROLE_ARN }} - aws-region: us-east-1 - - - name: Login to Amazon ECR - if: ${{ github.event_name == 'push' }} - uses: aws-actions/amazon-ecr-login@v2 - - - name: Get short hash - run: echo "SHORT_SHA=$(git rev-parse --short HEAD)" >> $GITHUB_ENV - - - name: Docker Build and Push - uses: docker/build-push-action@v6 - with: - context: . - file: docker/Dockerfile.${{ matrix.app }} - push: true - platforms: linux/amd64,linux/arm64 - tags: | - ${{ vars.ECR_TESTING_URL }}/split-${{ matrix.app }}${{ matrix.fips_mode == 'enabled' && '-fips' || '' }}:${{ env.SHORT_SHA }} - build-args: | - FIPS_MODE=${{ matrix.fips_mode }} diff --git a/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer.yaml b/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer.yaml new file mode 100644 index 00000000..af338437 --- /dev/null +++ b/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer.yaml @@ -0,0 +1,89 @@ +inputSet: + name: split_synchronizer + tags: {} + identifier: split_synchronizer + orgIdentifier: PROD + projectIdentifier: Harness_Split + pipeline: + identifier: deploy_qos_v3 + stages: + - parallel: + - stage: + identifier: CI + type: CI + spec: + execution: + steps: + - step: + identifier: custom_tag + type: Run + spec: + command: VERSION="$(awk '/^const Version/{gsub(/"/, "", $4); print $4}' splitio/version.go)" + when: + condition: "true" + - step: + identifier: BuildAndPush + type: BuildAndPushDockerRegistry + spec: + repo: <+trigger.payload.repository.name>/split-<+matrix.app><+<+matrix.fips_mode>=="enabled"?"-fips":""> + tags: + - <+pipeline.stages.CI<+strategy.identifierPostFix>.spec.execution.steps.custom_tag.output.outputVariables.VERSION> + - latest + dockerfile: docker/Dockerfile.<+matrix.app> + context: "" + buildArgs: + FIPS_MODE: <+matrix.fips_mode> + envVariables: + PLUGIN_NO_PUSH: <+<+trigger.payload.ref>!="refs/heads/main"?"true":"false"> + PLUGIN_PLATFORM: linux/amd64,linux/arm64 + strategy: + matrix: + app: + - synchronizer + - proxy + fips_mode: + - enabled + - disabled + - stage: + identifier: ECR + type: CI + spec: + execution: + steps: + - step: + identifier: custom_tag + type: Run + spec: + command: VERSION="$(awk '/^const Version/{gsub(/"/, "", $4); print $4}' splitio/version.go)" + when: + condition: "true" + - step: + identifier: BuildAndPushECR + type: BuildAndPushECR + spec: + imageName: <+trigger.payload.repository.name>/split-<+matrix.app><+<+matrix.fips_mode>=="enabled"?"-fips":""> + tags: + - <+pipeline.stages.ECR<+strategy.identifierPostFix>.spec.execution.steps.custom_tag.output.outputVariables.VERSION> + - latest + dockerfile: docker/Dockerfile.<+matrix.app> + context: "" + buildArgs: + FIPS_MODE: <+matrix.fips_mode> + envVariables: + PLUGIN_NO_PUSH: <+<+trigger.payload.ref>!="refs/heads/main"?"true":"false"> + PLUGIN_PLATFORM: linux/amd64,linux/arm64 + strategy: + matrix: + app: + - synchronizer + - proxy + fips_mode: + - enabled + - disabled + properties: + ci: + codebase: + build: + type: branch + spec: + branch: <+trigger.branch> diff --git a/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer_unstable.yaml b/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer_unstable.yaml new file mode 100644 index 00000000..0370db36 --- /dev/null +++ b/.harness/orgs/PROD/projects/Harness_Split/pipelines/deploy_qos_v3/input_sets/split_synchronizer_unstable.yaml @@ -0,0 +1,87 @@ +inputSet: + name: split_synchronizer_unstable + tags: {} + identifier: split_synchronizer_unstable + orgIdentifier: PROD + projectIdentifier: Harness_Split + pipeline: + identifier: deploy_qos_v3 + stages: + - parallel: + - stage: + identifier: CI + type: CI + spec: + execution: + steps: + - step: + identifier: custom_tag + type: Run + spec: + command: VERSION="$(git rev-parse --short HEAD)" + when: + condition: "true" + - step: + identifier: BuildAndPush + type: BuildAndPushDockerRegistry + spec: + repo: <+trigger.payload.repository.name>/split-<+matrix.app><+<+matrix.fips_mode>=="enabled"?"-fips":""> + tags: + - <+pipeline.stages.CI<+strategy.identifierPostFix>.spec.execution.steps.custom_tag.output.outputVariables.VERSION> + - latest + dockerfile: docker/Dockerfile.<+matrix.app> + context: "" + buildArgs: + FIPS_MODE: <+matrix.fips_mode> + envVariables: + PLUGIN_PLATFORM: linux/amd64,linux/arm64 + strategy: + matrix: + app: + - synchronizer + - proxy + fips_mode: + - enabled + - disabled + - stage: + identifier: ECR + type: CI + spec: + execution: + steps: + - step: + identifier: custom_tag + type: Run + spec: + command: VERSION="$(git rev-parse --short HEAD)" + when: + condition: "true" + - step: + identifier: BuildAndPushECR + type: BuildAndPushECR + spec: + imageName: <+trigger.payload.repository.name>/split-<+matrix.app><+<+matrix.fips_mode>=="enabled"?"-fips":""> + tags: + - <+pipeline.stages.ECR<+strategy.identifierPostFix>.spec.execution.steps.custom_tag.output.outputVariables.VERSION> + - latest + dockerfile: docker/Dockerfile.<+matrix.app> + context: "" + buildArgs: + FIPS_MODE: <+matrix.fips_mode> + envVariables: + PLUGIN_PLATFORM: linux/amd64,linux/arm64 + strategy: + matrix: + app: + - synchronizer + - proxy + fips_mode: + - enabled + - disabled + properties: + ci: + codebase: + build: + type: branch + spec: + branch: <+trigger.branch>