|
39 | 39 | - apk --no-cache add openjdk17-jdk git zip curl zip py-pip |
40 | 40 | - pip install --upgrade pip && pip install awscli |
41 | 41 |
|
42 | | -#control_service_build_image: |
43 | | -# extends: |
44 | | -# - .control_service_base_build |
45 | | -# - .images:dind |
46 | | -# stage: build |
47 | | -# script: |
48 | | -# - apk --no-cache add git openjdk17-jdk |
49 | | -# - export TAG=$(git rev-parse --short HEAD) |
50 | | -# - cd projects/control-service/projects |
51 | | -# - ./gradlew -p ./model build publishToMavenLocal --info --stacktrace |
52 | | -# - ./gradlew build jacocoTestReport -x integrationTest --info --stacktrace |
53 | | -## - ./gradlew :pipelines_control_service:docker --info --stacktrace -Pversion=$TAG |
54 | | -# retry: !reference [.control_service_retry, retry_options] |
55 | | -# coverage: "/ - Line Coverage: ([0-9.]+)%/" |
56 | | -# artifacts: |
57 | | -# when: always |
58 | | -# paths: |
59 | | -# - ./projects/control-service/projects/*/build/reports/** |
60 | | -# expire_in: 1 week |
61 | | -# reports: |
62 | | -# junit: ./projects/control-service/projects/**/build/test-results/test/TEST-*.xml |
63 | | -# only: |
64 | | -# refs: |
65 | | -# - external_pull_requests |
66 | | -# changes: *control_service_code_change_locations |
| 42 | +control_service_build_image: |
| 43 | + extends: |
| 44 | + - .control_service_base_build |
| 45 | + - .images:dind |
| 46 | + stage: build |
| 47 | + script: |
| 48 | + - apk --no-cache add git openjdk17-jdk |
| 49 | + - export TAG=$(git rev-parse --short HEAD) |
| 50 | + - cd projects/control-service/projects |
| 51 | + - ./gradlew -p ./model build publishToMavenLocal --info --stacktrace |
| 52 | + - ./gradlew build jacocoTestReport -x integrationTest --info --stacktrace |
| 53 | +# - ./gradlew :pipelines_control_service:docker --info --stacktrace -Pversion=$TAG |
| 54 | + retry: !reference [.control_service_retry, retry_options] |
| 55 | + coverage: "/ - Line Coverage: ([0-9.]+)%/" |
| 56 | + artifacts: |
| 57 | + when: always |
| 58 | + paths: |
| 59 | + - ./projects/control-service/projects/*/build/reports/** |
| 60 | + expire_in: 1 week |
| 61 | + reports: |
| 62 | + junit: ./projects/control-service/projects/**/build/test-results/test/TEST-*.xml |
| 63 | + only: |
| 64 | + refs: |
| 65 | + - external_pull_requests |
| 66 | + changes: *control_service_code_change_locations |
67 | 67 |
|
68 | | -#control_service_integration_test: |
69 | | -# extends: |
70 | | -# - .control_service_base_build |
71 | | -# - .images:dind |
72 | | -# stage: build |
73 | | -# variables: |
74 | | -# DEPLOYMENT_K8S_KUBECONFIG: "~/.kube/config" |
75 | | -# DEPLOYMENT_K8S_NAMESPACE: cicd-deployment |
76 | | -# CONTROL_K8S_KUBECONFIG: "~/.kube/config" |
77 | | -# CONTROL_K8S_NAMESPACE: cicd-control |
78 | | -# DOCKER_REGISTRY_URL: $CICD_CONTAINER_REGISTRY_URI |
79 | | -# DOCKER_REGISTRY_USERNAME: $CICD_CONTAINER_REGISTRY_USER_NAME |
80 | | -# DOCKER_REGISTRY_PASSWORD: $CICD_CONTAINER_REGISTRY_USER_PASSWORD |
81 | | -# GIT_URL: $CICD_GIT_URI |
82 | | -# GIT_USERNAME: $CICD_GIT_USER |
83 | | -# GIT_PASSWORD: $CICD_GIT_PASSWORD |
84 | | -# GIT_USERNAME_READ_WRITE: $CICD_GIT_USER |
85 | | -# GIT_PASSWORD_READ_WRITE: $CICD_GIT_PASSWORD |
86 | | -# DATAJOBS_AWS_SERVICE_ACCOUNT_ACCESS_KEY_ID: $DATAJOBS_AWS_SERVICE_ACCOUNT_ACCESS_KEY_ID |
87 | | -# DATAJOBS_AWS_SERVICE_ACCOUNT_SECRET_ACCESS_KEY: $DATAJOBS_AWS_SERVICE_ACCOUNT_SECRET_ACCESS_KEY |
88 | | -# script: |
89 | | -# - cd projects/control-service/projects |
90 | | -# - ./gradlew -p ./model build publishToMavenLocal |
91 | | -# - mkdir -p ~/.kube |
92 | | -# - cp $KUBECONFIG ~/.kube/config |
93 | | -# - ./gradlew -v |
94 | | -# - ./gradlew projects --info |
95 | | -# - ./gradlew -Djdk.tls.client.protocols=TLSv1.2 :pipelines_control_service:integrationTest --info --stacktrace --fail-fast |
96 | | -# retry: !reference [.control_service_retry, retry_options] |
97 | | -# artifacts: |
98 | | -# when: always |
99 | | -# paths: |
100 | | -# - ./projects/control-service/projects/*/build/reports/** |
101 | | -# expire_in: 1 week |
102 | | -# reports: |
103 | | -# junit: ./projects/control-service/projects/**/build/test-results/integrationTest/TEST-*.xml |
104 | | -# only: |
105 | | -# refs: |
106 | | -# - external_pull_requests |
107 | | -# changes: *control_service_code_change_locations |
108 | | -# except: |
109 | | -# changes: |
110 | | -# - projects/control-service/projects/helm_charts/pipelines-control-service/version.txt |
111 | | -# - projects/control-service/projects/model/CONTRIBUTING.MD |
112 | | -# - projects/control-service/projects/**/README.md |
113 | | -# - projects/control-service/projects/model/apidefs/datajob-api/config-python.json |
| 68 | +control_service_integration_test: |
| 69 | + extends: |
| 70 | + - .control_service_base_build |
| 71 | + - .images:dind |
| 72 | + stage: build |
| 73 | + variables: |
| 74 | + DEPLOYMENT_K8S_KUBECONFIG: "~/.kube/config" |
| 75 | + DEPLOYMENT_K8S_NAMESPACE: cicd-deployment |
| 76 | + CONTROL_K8S_KUBECONFIG: "~/.kube/config" |
| 77 | + CONTROL_K8S_NAMESPACE: cicd-control |
| 78 | + DOCKER_REGISTRY_URL: $CICD_CONTAINER_REGISTRY_URI |
| 79 | + DOCKER_REGISTRY_USERNAME: $CICD_CONTAINER_REGISTRY_USER_NAME |
| 80 | + DOCKER_REGISTRY_PASSWORD: $CICD_CONTAINER_REGISTRY_USER_PASSWORD |
| 81 | + GIT_URL: $CICD_GIT_URI |
| 82 | + GIT_USERNAME: $CICD_GIT_USER |
| 83 | + GIT_PASSWORD: $CICD_GIT_PASSWORD |
| 84 | + GIT_USERNAME_READ_WRITE: $CICD_GIT_USER |
| 85 | + GIT_PASSWORD_READ_WRITE: $CICD_GIT_PASSWORD |
| 86 | + DATAJOBS_AWS_SERVICE_ACCOUNT_ACCESS_KEY_ID: $DATAJOBS_AWS_SERVICE_ACCOUNT_ACCESS_KEY_ID |
| 87 | + DATAJOBS_AWS_SERVICE_ACCOUNT_SECRET_ACCESS_KEY: $DATAJOBS_AWS_SERVICE_ACCOUNT_SECRET_ACCESS_KEY |
| 88 | + script: |
| 89 | + - cd projects/control-service/projects |
| 90 | + - ./gradlew -p ./model build publishToMavenLocal |
| 91 | + - mkdir -p ~/.kube |
| 92 | + - cp $KUBECONFIG ~/.kube/config |
| 93 | + - ./gradlew -v |
| 94 | + - ./gradlew projects --info |
| 95 | + - ./gradlew -Djdk.tls.client.protocols=TLSv1.2 :pipelines_control_service:integrationTest --info --stacktrace --fail-fast |
| 96 | + retry: !reference [.control_service_retry, retry_options] |
| 97 | + artifacts: |
| 98 | + when: always |
| 99 | + paths: |
| 100 | + - ./projects/control-service/projects/*/build/reports/** |
| 101 | + expire_in: 1 week |
| 102 | + reports: |
| 103 | + junit: ./projects/control-service/projects/**/build/test-results/integrationTest/TEST-*.xml |
| 104 | + only: |
| 105 | + refs: |
| 106 | + - external_pull_requests |
| 107 | + changes: *control_service_code_change_locations |
| 108 | + except: |
| 109 | + changes: |
| 110 | + - projects/control-service/projects/helm_charts/pipelines-control-service/version.txt |
| 111 | + - projects/control-service/projects/model/CONTRIBUTING.MD |
| 112 | + - projects/control-service/projects/**/README.md |
| 113 | + - projects/control-service/projects/model/apidefs/datajob-api/config-python.json |
114 | 114 |
|
115 | 115 | control_service_test_helm_chart: |
116 | 116 | stage: build |
@@ -243,17 +243,24 @@ control_service_publish_image: |
243 | 243 | - cd projects/control-service/projects |
244 | 244 | - ./gradlew -p ./model build publishToMavenLocal --info --stacktrace |
245 | 245 | - ./gradlew build -x test --info --stacktrace |
246 | | - - ./gradlew :pipelines_control_service:dockerTag --info --stacktrace -Pversion=paul_test |
247 | | - - docker_push_vdk.sh "versatiledatakit/pipelines-control-service:paul_test" |
| 246 | + - ./gradlew :pipelines_control_service:dockerTag --info --stacktrace -Pversion=$TAG |
| 247 | + - docker_push_vdk.sh "versatiledatakit/pipelines-control-service:$TAG" |
| 248 | + - docker_push_vdk.sh "versatiledatakit/pipelines-control-service:latest" |
248 | 249 | retry: !reference [.control_service_retry, retry_options] |
249 | 250 | artifacts: |
250 | 251 | when: always |
251 | 252 | reports: |
252 | 253 | junit: ./projects/control-serviceprojects/**/build/test-results/test/TEST-*.xml |
253 | | - only: |
254 | | - refs: |
255 | | - - external_pull_requests |
256 | | - changes: *control_service_code_change_locations |
| 254 | + rules: |
| 255 | + - if: '$CI_PIPELINE_SOURCE == "schedule"' |
| 256 | + when: never |
| 257 | + - if: '$CI_COMMIT_BRANCH == "main"' |
| 258 | + changes: [ projects/control-service/projects/helm_charts/pipelines-control-service/version.txt ] |
| 259 | + when: never |
| 260 | + - if: '$CI_COMMIT_BRANCH == "main"' |
| 261 | + changes: *control_service_code_change_locations |
| 262 | + - if: '$CI_COMMIT_BRANCH == "main"' |
| 263 | + changes: *control_service_helm_change_locations |
257 | 264 |
|
258 | 265 | control_service_publish_api_client: |
259 | 266 | image: docker:23.0.1 |
|
0 commit comments