Skip to content

Commit

Permalink
Add pre-master-kyma-gke* jobs which use new GKE K8s version. (kyma-pr…
Browse files Browse the repository at this point in the history
…oject#2783)

* Add pre-master-kyma-gke* jobs with custom k8s gke release

* edit provision script to provision custom cluster

* uncomment 1.18.6-gke.3504 as we're able to provision this cluster right now

* update gke and add optional flag

* add pjtester

* remove pjtester.yaml

* remove rapid 1.17

* remove rapid 1.17

* variables and more logic in templates

* variables and more logic in templates
  • Loading branch information
Ressetkk committed Oct 2, 2020
1 parent f5a186d commit 84440a7
Show file tree
Hide file tree
Showing 4 changed files with 288 additions and 0 deletions.
147 changes: 147 additions & 0 deletions prow/jobs/kyma/kyma-integration.yaml
Expand Up @@ -60,6 +60,18 @@ presets:
value: kyma-minio-gateway
- name: AZURE_REGION
value: westeurope
- labels:
preset-gke-ver_rapid_default: "true"
env:
- name: RELEASE_CHANNEL
value: rapid
- labels:
preset-gke-ver1_17_9: "true"
env:
- name: CLUSTER_VERSION
value: 1.17.9-gke.1504
- name: RELEASE_CHANNEL
value: regular

gke_job_template: &gke_job_template
decorate: true
Expand Down Expand Up @@ -375,6 +387,19 @@ presubmits: # runs on PRs
repo: test-infra
path_alias: github.com/kyma-project/test-infra
base_ref: release-1.14
- name: pre-master-kyma-gke1_17_9-integration
optional: true
cluster: untrusted-workload
branches:
- ^master$
<<: *gke_job_template
run_if_changed: "^((resources\\S+|installation\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
<<: *gke_job_labels_template
preset-gke-ver1_17_9: "true"
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: pre-master-kyma-gke-upgrade
cluster: untrusted-workload
Expand Down Expand Up @@ -425,6 +450,21 @@ presubmits: # runs on PRs
extra_refs:
- <<: *test_infra_ref
base_ref: release-1.14
- name: pre-master-kyma-gke1_17_9-upgrade
optional: true
cluster: untrusted-workload
branches:
- ^master$
<<: *gke_upgrade_job_template
# following regexp won't start build if only Markdown files were changed
run_if_changed: "^((resources\\S+|installation\\S+|tests/end-to-end/upgrade/chart/upgrade/\\S+|tests/end-to-end/external-solution-integration/chart/external-solution/\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
preset-build-pr: "true"
preset-gke-ver1_17_9: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: pre-master-kyma-gke-central-connector
cluster: untrusted-workload
Expand Down Expand Up @@ -475,6 +515,21 @@ presubmits: # runs on PRs
extra_refs:
- <<: *test_infra_ref
base_ref: release-1.14
- name: pre-master-kyma-gke1_17_9-central-connector
optional: true
cluster: untrusted-workload
branches:
- ^master$
<<: *gke_central_job_template
# following regexp won't start build if only Markdown files were changed
run_if_changed: "^((resources/core/templates/tests\\S+|resources/application-connector\\S+|installation\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
preset-build-pr: "true"
<<: *gke_job_labels_template
preset-gke-ver1_17_9: "true"
extra_refs:
- <<: *test_infra_ref
base_ref: master

postsubmits:
kyma-project/kyma:
Expand Down Expand Up @@ -543,6 +598,98 @@ postsubmits:
extra_refs:
- <<: *test_infra_ref
base_ref: master
- name: post-master-kyma-gke-ver_rapid_default-integration
cluster: trusted-workload
<<: *gke_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver_rapid_default: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver_rapid_default-central-connector
cluster: trusted-workload
<<: *gke_central_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-build-master: "true"
preset-gke-ver_rapid_default: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver_rapid_default-upgrade
cluster: trusted-workload
<<: *gke_upgrade_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver_rapid_default: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master
- name: post-master-kyma-gke-ver1_17_9-integration
cluster: trusted-workload
<<: *gke_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver1_17_9: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver1_17_9-central-connector
cluster: trusted-workload
<<: *gke_central_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-build-master: "true"
preset-gke-ver1_17_9: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver1_17_9-upgrade
cluster: trusted-workload
<<: *gke_upgrade_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver1_17_9: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

periodics:
# kyma-integration-cleaner removes all sshPublic keys stored for service account "sa-vm-kyma-integration". Those keys refers to machines that in most cases were already removed.
Expand Down
Expand Up @@ -50,6 +50,7 @@ CLEANER_LABELS_PARAM="created-at=${CURRENT_TIMESTAMP_PARAM},created-at-readable=

GCLOUD_PARAMS+=("${CLUSTER_NAME}")
if [ "${CLUSTER_VERSION}" ]; then GCLOUD_PARAMS+=("--cluster-version=${CLUSTER_VERSION}"); else GCLOUD_PARAMS+=("${CLUSTER_VERSION_PARAM}"); fi
if [ "${RELEASE_CHANNEL}" ]; then GCLOUD_PARAMS+=("--release-channel=${RELEASE_CHANNEL}"); fi
if [ "${MACHINE_TYPE}" ]; then GCLOUD_PARAMS+=("--machine-type=${MACHINE_TYPE}"); else GCLOUD_PARAMS+=("${MACHINE_TYPE_PARAM}"); fi
if [ "${NUM_NODES}" ]; then GCLOUD_PARAMS+=("--num-nodes=${NUM_NODES}"); else GCLOUD_PARAMS+=("${NUM_NODES_PARAM}"); fi
if [ "${GCLOUD_NETWORK_NAME}" ] && [ "${GCLOUD_SUBNET_NAME}" ]; then GCLOUD_PARAMS+=("--network=${GCLOUD_NETWORK_NAME}" "--subnetwork=${GCLOUD_SUBNET_NAME}"); else GCLOUD_PARAMS+=("${NETWORK_PARAM}"); fi
Expand Down
6 changes: 6 additions & 0 deletions templates/config.yaml
Expand Up @@ -690,6 +690,12 @@ templates:
- to: ../prow/jobs/kyma/kyma-integration.yaml
values:
<<: *cluster_default
gkeVersions:
- channel: rapid
jobs: ["postsubmit"]
- channel: regular
version: 1.17.9-gke.1504
jobs: ["presubmit", "postsubmit"]
- from: templates/kyma-integration-gardener.yaml
render:
- to: ../prow/jobs/kyma/kyma-integration-gardener.yaml
Expand Down
134 changes: 134 additions & 0 deletions templates/templates/kyma-integration.yaml
Expand Up @@ -58,6 +58,20 @@ presets:
value: kyma-minio-gateway
- name: AZURE_REGION
value: westeurope
{{- range .Values.gkeVersions }}
- labels:
{{- $ch := printf "_%v_default" .channel }}
{{- $ver := default $ch .version }}
{{- $preset := regexReplaceAllLiteral "-.*" $ver "" | replace "." "_" }}
preset-gke-ver{{ $preset }}: "true"
env:
{{- if .version }}
- name: CLUSTER_VERSION
value: {{ .version }}
{{- end }}
- name: RELEASE_CHANNEL
value: {{ .channel }}
{{- end }}

gke_job_template: &gke_job_template
decorate: true
Expand Down Expand Up @@ -330,6 +344,27 @@ presubmits: # runs on PRs
base_ref: release-{{ . }}
{{- end }}

{{- range .Values.gkeVersions }}
{{- if has "presubmit" .jobs }}
{{- $ch := printf "_%v_default" .channel }}
{{- $ver := default $ch .version }}
{{- $preset := regexReplaceAllLiteral "-.*" $ver "" | replace "." "_" }}
- name: pre-master-kyma-gke{{ $preset }}-integration
optional: true
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
branches:
- ^master$
<<: *gke_job_template
run_if_changed: "^((resources\\S+|installation\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
<<: *gke_job_labels_template
preset-gke-ver{{ $preset }}: "true"
extra_refs:
- <<: *test_infra_ref
base_ref: master
{{- end }}
{{- end }}

- name: pre-master-kyma-gke-upgrade
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
branches:
Expand Down Expand Up @@ -374,6 +409,29 @@ presubmits: # runs on PRs
base_ref: release-{{ . }}
{{- end }}

{{- range .Values.gkeVersions }}
{{- if has "presubmit" .jobs }}
{{- $ch := printf "_%v_default" .channel }}
{{- $ver := default $ch .version }}
{{- $preset := regexReplaceAllLiteral "-.*" $ver "" | replace "." "_" }}
- name: pre-master-kyma-gke{{ $preset }}-upgrade
optional: true
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
branches:
- ^master$
<<: *gke_upgrade_job_template
# following regexp won't start build if only Markdown files were changed
run_if_changed: "^((resources\\S+|installation\\S+|tests/end-to-end/upgrade/chart/upgrade/\\S+|tests/end-to-end/external-solution-integration/chart/external-solution/\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
preset-build-pr: "true"
preset-gke-ver{{ $preset }}: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master
{{- end }}
{{- end }}

- name: pre-master-kyma-gke-central-connector
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
branches:
Expand Down Expand Up @@ -418,6 +476,29 @@ presubmits: # runs on PRs
base_ref: release-{{ . }}
{{- end }}

{{- range .Values.gkeVersions }}
{{- if has "presubmit" .jobs }}
{{- $ch := printf "_%v_default" .channel }}
{{- $ver := default $ch .version }}
{{- $preset := regexReplaceAllLiteral "-.*" $ver "" | replace "." "_" }}
- name: pre-master-kyma-gke{{ $preset }}-central-connector
optional: true
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
branches:
- ^master$
<<: *gke_central_job_template
# following regexp won't start build if only Markdown files were changed
run_if_changed: "^((resources/core/templates/tests\\S+|resources/application-connector\\S+|installation\\S+|tools/kyma-installer\\S+)(\\.[^.][^.][^.]+$|\\.[^.][^dD]$|\\.[^mM][^.]$|\\.[^.]$|/[^.]+$))"
labels:
preset-build-pr: "true"
<<: *gke_job_labels_template
preset-gke-ver{{ $preset }}: "true"
extra_refs:
- <<: *test_infra_ref
base_ref: master
{{- end }}
{{- end }}

{{- range (matchingReleases .Global.releases "1.11" "1.11") }}
- name: pre-rel{{ . | replace "." "" }}-kyma-gke-backup
cluster: {{if $.Values.cluster.presubmit}}{{ $.Values.cluster.presubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
Expand Down Expand Up @@ -517,6 +598,59 @@ postsubmits:
extra_refs:
- <<: *test_infra_ref
base_ref: master
{{- range .Values.gkeVersions }}
{{- if has "postsubmit" .jobs }}
{{- $ch := printf "_%v_default" .channel }}
{{- $ver := default $ch .version }}
{{- $preset := regexReplaceAllLiteral "-.*" $ver "" | replace "." "_" }}
- name: post-master-kyma-gke-ver{{ $preset }}-integration
cluster: {{if $.Values.cluster.postsubmit}}{{ $.Values.cluster.postsubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
<<: *gke_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver{{ $preset }}: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver{{ $preset }}-central-connector
cluster: {{if $.Values.cluster.postsubmit}}{{ $.Values.cluster.postsubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
<<: *gke_central_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-build-master: "true"
preset-gke-ver{{ $preset }}: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master

- name: post-master-kyma-gke-ver{{ $preset }}-upgrade
cluster: {{if $.Values.cluster.postsubmit}}{{ $.Values.cluster.postsubmit }}{{else}}{{fail "Value for cluster not provided"}}{{end}}
<<: *gke_upgrade_job_template
annotations:
testgrid-create-test-group: "false"
branches:
- ^master$
labels:
preset-log-collector-slack-token: "true"
preset-build-master: "true"
preset-gke-ver{{ $preset }}: "true"
<<: *gke_job_labels_template
extra_refs:
- <<: *test_infra_ref
base_ref: master
{{- end }}
{{- end }}

periodics:
# kyma-integration-cleaner removes all sshPublic keys stored for service account "sa-vm-kyma-integration". Those keys refers to machines that in most cases were already removed.
Expand Down

0 comments on commit 84440a7

Please sign in to comment.