summaryrefslogtreecommitdiff
path: root/lib/gitlab/ci/templates/Jobs/DAST-Default-Branch-Deploy.gitlab-ci.yml
blob: 7ad5a9e2bbafcbbfb553ef0a0a2edd905ee8e47a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
.dast-auto-deploy:
  image: "registry.gitlab.com/gitlab-org/cluster-integration/auto-deploy-image:v1.0.7"

dast_environment_deploy:
  extends: .dast-auto-deploy
  stage: review
  script:
    - auto-deploy check_kube_domain
    - auto-deploy download_chart
    - auto-deploy ensure_namespace
    - auto-deploy initialize_tiller
    - auto-deploy create_secret
    - auto-deploy deploy
    - auto-deploy persist_environment_url
  environment:
    name: dast-default
    url: http://dast-$CI_PROJECT_ID-$CI_ENVIRONMENT_SLUG.$KUBE_INGRESS_BASE_DOMAIN
    on_stop: stop_dast_environment
  artifacts:
    paths: [environment_url.txt]
  rules:
    - if: $CI_DEFAULT_BRANCH != $CI_COMMIT_REF_NAME
      when: never
    - if: $DAST_DISABLED || $DAST_DISABLED_FOR_DEFAULT_BRANCH
      when: never
    - if: $DAST_WEBSITE  # we don't need to create a review app if a URL is already given
      when: never
    - if: $CI_COMMIT_BRANCH &&
          $CI_KUBERNETES_ACTIVE &&
          $GITLAB_FEATURES =~ /\bdast\b/

stop_dast_environment:
  extends: .dast-auto-deploy
  stage: cleanup
  variables:
    GIT_STRATEGY: none
  script:
    - auto-deploy initialize_tiller
    - auto-deploy delete
  environment:
    name: dast-default
    action: stop
  needs: ["dast"]
  rules:
    - if: $CI_DEFAULT_BRANCH != $CI_COMMIT_REF_NAME
      when: never
    - if: $DAST_DISABLED || $DAST_DISABLED_FOR_DEFAULT_BRANCH
      when: never
    - if: $DAST_WEBSITE  # we don't need to create a review app if a URL is already given
      when: never
    - if: $CI_COMMIT_BRANCH &&
          $CI_KUBERNETES_ACTIVE &&
          $GITLAB_FEATURES =~ /\bdast\b/
      when: always