# This file is included as part of the main repository .gitlab-ci.yml file # NOTE: Since this is running from the root of the repository all referenced # files must be relative to the root directory. # Most jobs in this file are only meant to be run when a git tag is created # Prerequisites: # Create TLS certificate secret: # kubectl create -n geosphere secret tls geosphere-tls-certs --cert=geosphere_ssec_wisc_edu.crt --key=geosphere_ssec_wisc_edu.key #gs create geotiff storage: # extends: .helm_based_job # stage: create storage # script: # - ns=$(./helpers/get_namespace.sh) # # copy secret kubeconfig to the mounted (pwd) directory # - cp $kubekorner_k3s_config . # - kubeconfig=$(basename $kubekorner_k3s_config) # - ./helpers/create_pvc.sh "$ns" "ci_geosphere/geotiff-pvc.yaml" "cspp-geo-geo2grid" "$kubeconfig" # # this job doesn't actually need any artifacts from previous jobs # dependencies: [] # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - if: $CREATE_STORAGE # #gs create shapefile storage: # extends: .helm_based_job # stage: create storage # script: # - ns=$(./helpers/get_namespace.sh) # # copy secret kubeconfig to the mounted (pwd) directory # - cp $kubekorner_k3s_config . # - kubeconfig=$(basename $kubekorner_k3s_config) # - ./helpers/create_pvc.sh "$ns" "ci_geosphere/shapefiles-pvc.yaml" "geosphere-tile-gen-shapefiles" "$kubeconfig" # # this job doesn't actually need any artifacts from previous jobs # dependencies: [] # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # # this will always be true for tags # - changes: # - ci_geosphere/shapefiles-pvc.yaml # - if: $CREATE_STORAGE # #gs deploy rabbit: # environment: # name: geosphere # url: http://geosphere.ssec.wisc.edu # extends: .helm_based_job # stage: deploy rabbit # script: # - ./helpers/deploy_rabbitmq.sh ci_geosphere # - cp ${kubekorner_k3s_config} . # - kubeconfig=$(basename ${kubekorner_k3s_config}) # - |- # kubectl get secret --kubeconfig "${kubeconfig}" geosphere-rabbit-rabbitmq --namespace=geosphere -oyaml | grep -v '^\s*namespace:\s' | grep -v "[Hh]elm" | grep -v "[tT]ime" | grep -v "selfLink" | grep -v "uid" | grep -v "resourceVersion" | sed 's/ name: .*/ name: geosphere-rabbit-rabbitmq-production/' | kubectl_stdin apply --kubeconfig "${kubeconfig}" --namespace=geosphere-test -f - # # this job doesn't actually need any artifacts from previous jobs # dependencies: [] # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # # no need to build if another project triggered us # - if: $CI_PIPELINE_SOURCE == "pipeline" # when: never # - changes: # - ci_geosphere/values-geosphere-rabbit.yaml # - if: $DEPLOY_RABBIT # test_basic_grb: # environment: # name: geosphere # url: http://geosphere.ssec.wisc.edu extends: .helm_based_job stage: test script: - ns=$(./helpers/get_namespace.sh) - echo $ns # - cd geosphere-grb/chart # - source cspp-geo-grb/cibuild.env # copy secret kubeconfig to the mounted (pwd) directory # - cp $kubekorner_k3s_config . # - kubeconfig=$(basename $kubekorner_k3s_config) # - echo "Deploying version $docker_tag to cluster namespace $ns" # copy extra values files to the local directory (where helm has access via docker mount) # - cp ../../ci_geosphere/values-grb-g16.yaml . # namespace names are the same as domain names # - helm upgrade -v 2 --install --kubeconfig $kubeconfig --namespace $ns --set persistence.enabled=true --set persistence.storageClass=longhorn -f values-grb-g16.yaml cspp-geo-grb cspp-geo-grb/ dependencies: - get_chart_grb rules: - when: on_success # #gs deploy geo2grid g16 radf: # extends: .deploy_geo2grid # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radf" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy geo2grid g16 radc: # extends: .deploy_geo2grid # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radc" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy geo2grid g16 radm1: # extends: .deploy_geo2grid # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radm1" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy geo2grid g16 radm2: # extends: .deploy_geo2grid # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radm2" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy tile gen g16 radf: # extends: .deploy_tile_gen # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radf" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy tile gen g16 radc: # extends: .deploy_tile_gen # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radc" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy_tile_gen_g16_radm1: # extends: .deploy_tile_gen # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radm1" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy_tile_gen_g16_radm2: # extends: .deploy_tile_gen # variables: # VALUES_DIR: "ci_geosphere" # DEPLOY_SUFFIX: "-g16-radm2" # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy mapserver: # environment: # name: geosphere # url: http://geosphere.ssec.wisc.edu # variables: # VALUES_DIR: "ci_geosphere" # extends: .deploy_mapserver # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy mapcache: # environment: # name: geosphere # url: http://geosphere.ssec.wisc.edu # variables: # VALUES_DIR: "ci_geosphere" # extends: .deploy_mapcache # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success # #gs deploy client: # environment: # name: geosphere # url: http://geosphere.ssec.wisc.edu # extends: .helm_based_job # stage: deploy Client # script: # - ns="geosphere" # - cd geosphere-client/chart # - source geosphere-client/cibuild.env # # copy secret kubeconfig to the mounted (pwd) directory # - cp $kubekorner_k3s_config . # - kubeconfig=$(basename $kubekorner_k3s_config) # - echo "Deploying version $docker_tag to cluster namespace $ns" # # copy extra values files to the local directory (where helm has access via docker mount) # - cp ../../ci_geosphere/values-client.yaml . # # namespace names are the same as domain names # - helm upgrade -v 2 --install --kubeconfig $kubeconfig --namespace $ns -f values-client.yaml geosphere-client geosphere-client/ # dependencies: # - get_chart_client # rules: # - if: $CI_COMMIT_TAG !~ $GEOSPHERE_TAG_REGEX # when: never # - when: on_success