summaryrefslogtreecommitdiffstats
path: root/jjb/integration/integration-macros.yaml
blob: 89e83c26864c03a176f0cd3ae3f0ff64524435d9 (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
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
---
- parameter:
    name: integration-test-plan
    parameters:
      - string:
          name: TESTPLAN
          default: '{test-plan}'
          description: 'General test plan we will run unless stream-specific one is found'

- parameter:
    name: integration-test-options
    parameters:
      - string:
          name: TESTOPTIONS
          default: '{test-options}'
          description: 'Robot command options'

- parameter:
    name: html-publisher-dir
    parameters:
      - string:
          name: HTMLDIR
          default: '{html-dir}'
          description: 'Directory location to be used by HTML publisher plugin'

- parameter:
    name: html-publisher-files
    parameters:
      - string:
          name: HTMLFILES
          default: '{html-files}'
          description: 'File name to be used by HTML publisher plugin to produce the report'

- parameter:
    name: integration-terraform-version
    parameters:
      - string:
          name: TERRAFORM_VERSION
          default: '{terraform-version}'
          description: 'Terraform version to install on minion'

- builder:
    name: integration-install-robotframework
    builders:
      - shell:
          !include-raw:
          - include-raw-integration-install-robotframework.sh

- builder:
    name: integration-run-test
    builders:
      - shell: "${WORKSPACE}/run-csit.sh ${TESTPLAN} ${TESTOPTIONS}"

- builder:
    name: integration-autorelease-fix-relativepaths
    builders:
      - shell: "${WORKSPACE}/autorelease/scripts/fix-relativepaths.sh"

- builder:
    name: integration-autorelease-set-version
    builders:
      - shell: "${WORKSPACE}/autorelease/scripts/set-version.sh"

- builder:
    name: integration-install-vagrant
    builders:
      - shell: |
          #!/bin/bash
          set -ex # Fail build if any setup step fails
          sudo add-apt-repository --yes ppa:tiagohillebrandt/vagrant
          sudo apt update
          sudo apt --yes install libxslt-dev libxml2-dev libvirt-dev zlib1g-dev ruby-dev vagrant
          vagrant plugin install vagrant-libvirt
          vagrant plugin install vagrant-disksize
          vagrant plugin install vagrant-sshfs
          vagrant plugin install vagrant-reload
          mkdir -p ~/.ssh

- builder:
   name: integration-install-terraform
   builders:
     - shell: |
         #!/bin/bash
         set -ex
         cd /tmp
         wget -q https://releases.hashicorp.com/terraform/${TERRAFORM_VERSION}/terraform_${TERRAFORM_VERSION}_linux_amd64.zip
         unzip terraform_${TERRAFORM_VERSION}_linux_amd64.zip
         sudo mv terraform /usr/local/bin/
         terraform version

- builder:
    name: integration-docker-compose-logs
    builders:
      - shell: !include-raw: shell/docker-compose-logs.sh

- publisher:
    name: integration-robot
    publishers:
      - robot:
          output-path: 'archives'
          other-files: ''
          unstable-threshold: '{unstable-if}'
          pass-threshold: '{pass-if}'
          only-critical: false

- publisher:
    name: integration-docker-compose-logs
    publishers:
      - postbuildscript:
          builders:
            - role: BOTH
              build-on:
                - FAILURE
                - SUCCESS
                - UNSTABLE
              build-steps:
                - integration-docker-compose-logs