From fdb5906a85970bc97c2c8496291aa6a41a2c2d68 Mon Sep 17 00:00:00 2001 From: Dobromir Palushev <dobromir@peaksandpies.com> Date: Sat, 3 Sep 2022 12:54:25 +0200 Subject: [PATCH] fixing static_ip_adresses for staging and production --- .gitlab-ci.yml | 5 ++++- k8s-manifests/{ingress.yaml => ingress.yaml.tmpl} | 2 +- 2 files changed, 5 insertions(+), 2 deletions(-) rename k8s-manifests/{ingress.yaml => ingress.yaml.tmpl} (86%) diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml index f5b1fbd..325816e 100644 --- a/.gitlab-ci.yml +++ b/.gitlab-ci.yml @@ -120,10 +120,12 @@ deploy-image: when: 'always' variables: ENVIRONMENT_NAME: 'staging' + STATIC_IP: 'staging-todoapp-ip' - if: $CI_COMMIT_REF_NAME !~ /main/ when: 'always' variables: ENVIRONMENT_NAME: 'production' + STATIC_IP: 'todoapp-ip' tags: - docker image: google/cloud-sdk:${GOOGLE_CLOUD_SDK_IMAGE_VERSION} @@ -137,7 +139,8 @@ deploy-image: - DEPLOYMENT_MANIFEST=$(sed -e "s,{{image}},${IMAGE},g" ./deployment.yaml.tmpl) - echo "${DEPLOYMENT_MANIFEST}" | kubectl apply --namespace "${ENVIRONMENT_NAME}-${K8S_NAMESPACE}" --filename - - kubectl apply -f service.yaml --namespace "${ENVIRONMENT_NAME}-${K8S_NAMESPACE}" - - kubectl apply -f ingress.yaml --namespace "${ENVIRONMENT_NAME}-${K8S_NAMESPACE}" + - INGRESS_MANIFEST=$(sed -e "s,{{static-ip-name}},${STATIC_IP},g" ./ingress.yaml.tmpl) + - echo "${INGRESS_MANIFEST}" | kubectl apply --namespace "${ENVIRONMENT_NAME}-${K8S_NAMESPACE}" --filename - diff --git a/k8s-manifests/ingress.yaml b/k8s-manifests/ingress.yaml.tmpl similarity index 86% rename from k8s-manifests/ingress.yaml rename to k8s-manifests/ingress.yaml.tmpl index 6757622..7635067 100644 --- a/k8s-manifests/ingress.yaml +++ b/k8s-manifests/ingress.yaml.tmpl @@ -5,7 +5,7 @@ metadata: annotations: kubernetes.io/ingress.class: "gce" # an external load-balancer kubernetes.io/ingress.allow-http: "false" # disabling HTTP - kubernetes.io/ingress.global-static-ip-name: todoapp-ip # staging-todoapp-ip for staging + kubernetes.io/ingress.global-static-ip-name: {{static-ip-name}} # staging-todoapp-ip for staging networking.gke.io/managed-certificates: todoapp-managed-cert # defined in the infrastructure repository spec: # rules: -- GitLab