summaryrefslogtreecommitdiff
path: root/zuul.d/ironic-python-agent-jobs.yaml
blob: 3e06c8c062cf649d2cb386be693e72655d8106ce (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
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
# disabling dstat because of
# https://bugs.launchpad.net/ubuntu/+source/dstat/+bug/1866619
- job:
    name: ironic-ipa-base
    parent: ironic-base
    irrelevant-files:
      - ^examples/.*$
      - ^test-requirements.txt$
      - ^.*\.rst$
      - ^doc/.*$
      - ^ironic_python_agent/tests/.*$
      - ^releasenotes/.*$
      - ^setup.cfg$
      - ^tools/.*$
      - ^tox.ini$
    required-projects:
      - openstack/ironic-lib
    vars:
      # The default is 1GB, we need a little more to prevent OOMs killing the jobs
      configure_swap_size: 8192
      devstack_localrc:
        IRONIC_BUILD_DEPLOY_RAMDISK: True
        IRONIC_VM_COUNT: 2
        IRONIC_VM_SPECS_RAM: 2750
        # This matches the default in ironic-base, specifying for clarity
        IRONIC_RAMDISK_TYPE: dib
      devstack_services:
        dstat: false

# used by diskimage-builder and IPA-builder
- job:
    name: ipa-tempest-bios-ipmi-direct-src
    parent: ironic-ipa-base
    vars:
      devstack_services:
        s-account: True
        s-container: True
        s-object: True
        s-proxy: True
      devstack_localrc:
        IRONIC_BOOT_MODE: bios
        IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
        SWIFT_ENABLE_TEMPURLS: True
        SWIFT_TEMPURL_KEY: secretkey

- job:
    name: ipa-tempest-uefi-redfish-vmedia-src
    parent: ironic-ipa-base
    required-projects:
      - opendev.org/openstack/sushy-tools
    vars:
      devstack_services:
        s-account: True
        s-container: True
        s-object: True
        s-proxy: True
      devstack_localrc:
        IRONIC_BOOT_MODE: uefi
        IRONIC_DEPLOY_DRIVER: redfish
        IRONIC_ENABLED_BOOT_INTERFACES: redfish-virtual-media
        IRONIC_ENABLED_HARDWARE_TYPES: redfish
        IRONIC_ENABLED_POWER_INTERFACES: redfish
        IRONIC_ENABLED_MANAGEMENT_INTERFACES: redfish
        IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
        IRONIC_VM_EPHEMERAL_DISK: 0
        # Ironic has to master a new image, and this CAN take longer as a
        # result and makes this job VERY sensitive to heavy disk IO of the
        # underlying hypervisor/cloud.
        IRONIC_CALLBACK_TIMEOUT: 800
        SWIFT_ENABLE_TEMPURLS: True
        SWIFT_TEMPURL_KEY: secretkey

# used by ironic-python-agent-builder
- job:
    name: ipa-tempest-ironic-inspector-src
    parent: ironic-ipa-base
    required-projects:
      # These are in addition to what is in ironic-ipa-base
      - openstack/ironic-inspector
      - openstack/python-ironic-inspector-client
    vars:
      devstack_localrc:
        DEVSTACK_GATE_TEMPEST_REGEX: InspectorBasicTest
        DEVSTACK_GATE_IRONIC_INSPECTOR: 1
        IRONIC_VM_EPHEMERAL_DISK: 0
        IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
        IRONIC_INSPECTOR_BUILD_RAMDISK: True
        SWIFT_ENABLE_TEMPURLS: True
        SWIFT_TEMPURL_KEY: secretkey
      devstack_plugins:
        ironic-inspector: https://opendev.org/openstack/ironic-inspector

- job:
    # Security testing for known issues
    name: ipa-tox-bandit
    parent: openstack-tox
    timeout: 2400
    vars:
      tox_envlist: bandit
    irrelevant-files:
      - ^examples/.*$
      - ^test-requirements.txt$
      - ^.*\.rst$
      - ^doc/.*$
      - ^ironic_python_agent/tests/.*$
      - ^releasenotes/.*$
      - ^setup.cfg$
      - ^tools/(?!bandit.yml).*$
      - ^tox.ini$

- job:
    name: ipa-tox-examples
    parent: openstack-tox
    timeout: 600
    vars:
      tox_envlist: examples
    irrelevant-files:
      - ^test-requirements.txt$
      - ^.*\.rst$
      - ^doc/.*$
      - ^ironic_python_agent/tests/.*$
      - ^releasenotes/.*$
      - ^setup.cfg$
      - ^tools/(?!bandit.yml).*$
      - ^tox.ini$

# used by ironic-python-agent-builder
- job:
    name: ironic-standalone-ipa-src
    parent: ironic-standalone
    description: Test ironic standalone with IPA from source
    vars:
      devstack_localrc:
        IRONIC_BUILD_DEPLOY_RAMDISK: True
        # NOTE(dtantsur): the ansible deploy doesn't depend on IPA code,
        # excluding it from the enabled list to save gate time.
        IRONIC_ENABLED_DEPLOY_INTERFACES: "direct"

- job:
    name: metalsmith-integration-ipa-src-uefi
    parent: metalsmith-integration-glance-centos8-uefi
    required-projects:
      - openstack/ironic-python-agent
      - openstack/ironic-python-agent-builder
      - openstack/ironic-lib
    vars:
      devstack_localrc:
        # Don't waste time on cleaning, it's checked everywhere else
        IRONIC_AUTOMATED_CLEAN_ENABLED: False
        IRONIC_BUILD_DEPLOY_RAMDISK: True

- job:
    name: metalsmith-integration-ipa-src-legacy
    parent: metalsmith-integration-glance-centos8-legacy
    required-projects:
      - openstack/ironic-python-agent
      - openstack/ironic-python-agent-builder
      - openstack/ironic-lib
    vars:
      devstack_localrc:
        # Don't waste time on cleaning, it's checked everywhere else
        IRONIC_AUTOMATED_CLEAN_ENABLED: False
        IRONIC_BUILD_DEPLOY_RAMDISK: True

# used by ironic-python-agent-builder
- job:
    name: ipa-tempest-bios-ipmi-direct-tinyipa-src
    parent: ipa-tempest-bios-ipmi-direct-src
    vars:
      devstack_localrc:
        IRONIC_RAMDISK_TYPE: tinyipa
        IRONIC_VM_SPECS_RAM: 1024