A service for managing and provisioning Bare Metal servers.
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 

793 lines
25 KiB

  1. - job:
  2. name: ironic-base
  3. abstract: true
  4. description: Base job for devstack/tempest based ironic jobs.
  5. parent: devstack-tempest
  6. nodeset: openstack-single-node-bionic
  7. timeout: 10800
  8. required-projects:
  9. - openstack/ironic
  10. - openstack/ironic-python-agent
  11. - openstack/ironic-python-agent-builder
  12. - openstack/ironic-tempest-plugin
  13. - openstack/virtualbmc
  14. irrelevant-files:
  15. - ^.*\.rst$
  16. - ^api-ref/.*$
  17. - ^doc/.*$
  18. - ^driver-requirements.txt$
  19. - ^install-guide/.*$
  20. - ^ironic/locale/.*$
  21. - ^ironic/tests/.*$
  22. - ^releasenotes/.*$
  23. - ^setup.cfg$
  24. - ^tools/.*$
  25. - ^tox.ini$
  26. vars:
  27. tox_envlist: all
  28. tempest_test_regex: ironic_tempest_plugin.tests.scenario
  29. tempest_concurrency: 1
  30. devstack_localrc:
  31. DEFAULT_INSTANCE_TYPE: baremetal
  32. FORCE_CONFIG_DRIVE: True
  33. INSTALL_TEMPEST: False # Don't install a tempest package globaly
  34. TEMPEST_PLUGINS: "{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-tempest-plugin"
  35. VIRT_DRIVER: ironic
  36. BUILD_TIMEOUT: 900
  37. IRONIC_BAREMETAL_BASIC_OPS: True
  38. IRONIC_BUILD_DEPLOY_RAMDISK: False
  39. IRONIC_CALLBACK_TIMEOUT: 700
  40. IRONIC_DEPLOY_DRIVER: ipmi
  41. IRONIC_INSPECTOR_BUILD_RAMDISK: False
  42. IRONIC_TEMPEST_BUILD_TIMEOUT: 900
  43. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: False
  44. IRONIC_VM_COUNT: 1
  45. IRONIC_VM_EPHEMERAL_DISK: 1
  46. IRONIC_VM_SPECS_RAM: 3072
  47. IRONIC_VM_LOG_DIR: '{{ devstack_base_dir }}/ironic-bm-logs'
  48. # NOTE(dtantsur): in some jobs we end up with 12 disks total, so reduce
  49. # each of them. For don't need all 10 GiB for CirrOS anyway.
  50. IRONIC_VM_SPECS_DISK: 4
  51. IRONIC_DEFAULT_DEPLOY_INTERFACE: iscsi
  52. Q_AGENT: openvswitch
  53. Q_ML2_TENANT_NETWORK_TYPE: vxlan
  54. SERVICE_TIMEOUT: 90
  55. devstack_plugins:
  56. ironic: https://opendev.org/openstack/ironic
  57. zuul_copy_output:
  58. '{{ devstack_base_dir }}/ironic-bm-logs': 'logs'
  59. '{{ devstack_base_dir }}/data/networking-generic-switch/netmiko_session.log': 'logs'
  60. devstack_services:
  61. q-agt: false
  62. q-dhcp: false
  63. q-l3: false
  64. q-meta: false
  65. q-metering: false
  66. q-svc: false
  67. neutron-api: true
  68. neutron-agent: true
  69. neutron-dhcp: true
  70. neutron-l3: true
  71. neutron-metadata-agent: true
  72. neutron-metering: true
  73. c-api: False
  74. c-bak: False
  75. c-sch: False
  76. c-vol: False
  77. cinder: False
  78. s-account: False
  79. s-container: False
  80. s-object: False
  81. s-proxy: False
  82. - job:
  83. name: ironic-standalone
  84. description: Test ironic standalone
  85. parent: ironic-base
  86. irrelevant-files:
  87. - ^.*\.rst$
  88. - ^api-ref/.*$
  89. - ^doc/.*$
  90. - ^install-guide/.*$
  91. - ^ironic/locale/.*$
  92. - ^ironic/tests/.*$
  93. - ^releasenotes/.*$
  94. - ^setup.cfg$
  95. - ^test-requirements.txt$
  96. - ^tools/.*$
  97. - ^tox.ini$
  98. vars:
  99. tempest_test_regex: ironic_standalone
  100. tempest_concurrency: 2
  101. devstack_localrc:
  102. FORCE_CONFIG_DRIVE: False
  103. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  104. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  105. IRONIC_DEFAULT_RESCUE_INTERFACE: agent
  106. IRONIC_ENABLED_DEPLOY_INTERFACES: "iscsi,direct,ansible"
  107. IRONIC_ENABLED_RESCUE_INTERFACES: "fake,agent,no-rescue"
  108. IRONIC_RAMDISK_TYPE: tinyipa
  109. IRONIC_RPC_TRANSPORT: json-rpc
  110. IRONIC_VM_SPECS_RAM: 384
  111. IRONIC_VM_COUNT: 6
  112. IRONIC_VM_VOLUME_COUNT: 2
  113. # We're using a lot of disk space in this job. Some testing nodes have
  114. # a small root partition, so use /opt which is mounted from a bigger
  115. # ephemeral partition on such nodes
  116. LIBVIRT_STORAGE_POOL_PATH: /opt/libvirt/images
  117. SWIFT_ENABLE_TEMPURLS: True
  118. SWIFT_TEMPURL_KEY: secretkey
  119. devstack_services:
  120. n-api: False
  121. n-api-meta: False
  122. n-cauth: False
  123. n-cond: False
  124. n-cpu: False
  125. n-novnc: False
  126. n-obj: False
  127. n-sch: False
  128. nova: False
  129. placement-api: False
  130. s-account: True
  131. s-container: True
  132. s-object: True
  133. s-proxy: True
  134. - job:
  135. name: ironic-tempest-partition-bios-redfish-pxe
  136. description: "Deploy ironic node over PXE using BIOS boot mode"
  137. parent: ironic-base
  138. timeout: 5400
  139. required-projects:
  140. - openstack/sushy-tools
  141. vars:
  142. devstack_localrc:
  143. IRONIC_DEPLOY_DRIVER: redfish
  144. IRONIC_ENABLED_HARDWARE_TYPES: redfish
  145. IRONIC_ENABLED_POWER_INTERFACES: redfish
  146. IRONIC_ENABLED_MANAGEMENT_INTERFACES: redfish
  147. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  148. IRONIC_DEFAULT_BOOT_OPTION: netboot
  149. - job:
  150. name: ironic-tempest-partition-uefi-redfish-vmedia
  151. description: "Deploy ironic node over Redfish virtual media using UEFI boot mode"
  152. parent: ironic-tempest-partition-bios-redfish-pxe
  153. vars:
  154. devstack_localrc:
  155. IRONIC_BOOT_MODE: uefi
  156. IRONIC_ENABLED_BOOT_INTERFACES: redfish-virtual-media
  157. SWIFT_ENABLE_TEMPURLS: True
  158. SWIFT_TEMPURL_KEY: secretkey
  159. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  160. devstack_services:
  161. s-account: True
  162. s-container: True
  163. s-object: True
  164. s-proxy: True
  165. - job:
  166. name: ironic-inspector-tempest-partition-bios-redfish-vmedia
  167. description: "Inspect and deploy ironic node over Redfish virtual media using legacy BIOS boot mode"
  168. parent: ironic-tempest-partition-uefi-redfish-vmedia
  169. required-projects:
  170. - openstack/ironic-inspector
  171. vars:
  172. # NOTE(dtantsur): the inspector job includes booting an instance too
  173. tempest_test_regex: Inspector
  174. devstack_localrc:
  175. IRONIC_BOOT_MODE: bios
  176. IRONIC_INSPECTOR_MANAGED_BOOT: True
  177. IRONIC_INSPECTOR_NODE_NOT_FOUND_HOOK: ''
  178. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  179. devstack_plugins:
  180. ironic-inspector: https://opendev.org/openstack/ironic-inspector
  181. devstack_services:
  182. ironic-inspector: True
  183. ironic-inspector-dhcp: True
  184. - job:
  185. name: ironic-tempest-pxe_ipmitool-postgres
  186. description: ironic-tempest-pxe_ipmitool-postgres
  187. parent: ironic-base
  188. vars:
  189. devstack_localrc:
  190. IRONIC_ENABLED_BOOT_INTERFACES: "fake,pxe"
  191. IRONIC_IPXE_ENABLED: False
  192. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  193. IRONIC_DEFAULT_BOOT_OPTION: netboot
  194. devstack_services:
  195. mysql: False
  196. postgresql: True
  197. # NOTE(rpittau): converted job but not running for now as there
  198. # could be an issue with the lookup in ironic-python-agent
  199. - job:
  200. name: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool
  201. description: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool
  202. parent: ironic-base
  203. timeout: 9600
  204. vars:
  205. devstack_localrc:
  206. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  207. IRONIC_DEFAULT_RESCUE_INTERFACE: agent
  208. IRONIC_ENABLED_RESCUE_INTERFACES: "fake,agent,no-rescue"
  209. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  210. IRONIC_VM_EPHEMERAL_DISK: 0
  211. IRONIC_VM_SPECS_RAM: 3096
  212. SWIFT_ENABLE_TEMPURLS: True
  213. SWIFT_TEMPURL_KEY: secretkey
  214. devstack_services:
  215. s-account: True
  216. s-container: True
  217. s-object: True
  218. s-proxy: True
  219. - job:
  220. name: ironic-tempest-ipa-wholedisk-bios-pxe_snmp
  221. description: ironic-tempest-ipa-wholedisk-bios-pxe_snmp
  222. parent: ironic-base
  223. timeout: 5400
  224. vars:
  225. devstack_localrc:
  226. IRONIC_ENABLED_HARDWARE_TYPES: snmp
  227. IRONIC_DEPLOY_DRIVER: snmp
  228. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  229. IRONIC_VM_EPHEMERAL_DISK: 0
  230. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  231. - job:
  232. name: ironic-tempest-ipa-partition-uefi-pxe_ipmitool
  233. description: ironic-tempest-ipa-partition-uefi-pxe_ipmitool
  234. parent: ironic-base
  235. timeout: 5400
  236. vars:
  237. devstack_localrc:
  238. IRONIC_BOOT_MODE: uefi
  239. IRONIC_VM_SPECS_RAM: 4096
  240. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  241. IRONIC_DEFAULT_BOOT_OPTION: netboot
  242. - job:
  243. name: ironic-tempest-ipa-partition-pxe_ipmitool
  244. description: ironic-tempest-ipa-partition-pxe_ipmitool that also tests cleaning.
  245. parent: ironic-base
  246. timeout: 5400
  247. vars:
  248. devstack_localrc:
  249. IRONIC_DEFAULT_BOOT_OPTION: netboot
  250. IRONIC_VM_COUNT: 2
  251. IRONIC_AUTOMATED_CLEAN_ENABLED: True
  252. - job:
  253. name: ironic-tempest-bfv
  254. description: ironic-tempest-bfv
  255. parent: ironic-base
  256. timeout: 9600
  257. vars:
  258. tempest_test_regex: baremetal_boot_from_volume
  259. devstack_localrc:
  260. IRONIC_ENABLED_STORAGE_INTERFACES: cinder,noop
  261. IRONIC_STORAGE_INTERFACE: cinder
  262. IRONIC_ENABLED_BOOT_INTERFACES: ipxe,pxe,fake
  263. IRONIC_DEFAULT_BOOT_INTERFACE: ipxe
  264. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  265. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  266. IRONIC_VM_EPHEMERAL_DISK: 0
  267. IRONIC_VM_COUNT: 3
  268. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  269. SWIFT_ENABLE_TEMPURLS: True
  270. SWIFT_TEMPURL_KEY: secretkey
  271. devstack_services:
  272. c-api: True
  273. c-bak: True
  274. c-sch: True
  275. c-vol: True
  276. cinder: True
  277. - job:
  278. name: ironic-inspector-tempest
  279. description: ironic-inspector-tempest
  280. parent: ironic-base
  281. required-projects:
  282. - openstack/ironic-inspector
  283. vars:
  284. tempest_test_regex: InspectorBasicTest
  285. devstack_localrc:
  286. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  287. IRONIC_INSPECTOR_MANAGE_FIREWALL: True
  288. IRONIC_INSPECTOR_TEMPEST_INTROSPECTION_TIMEOUT: 1200
  289. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  290. IRONIC_VM_EPHEMERAL_DISK: 0
  291. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  292. SWIFT_ENABLE_TEMPURLS: True
  293. SWIFT_TEMPURL_KEY: secretkey
  294. IRONIC_DEFAULT_BOOT_OPTION: netboot
  295. devstack_plugins:
  296. ironic-inspector: https://opendev.org/openstack/ironic-inspector
  297. devstack_services:
  298. s-account: True
  299. s-container: True
  300. s-object: True
  301. s-proxy: True
  302. - job:
  303. name: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-indirect
  304. description: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-indirect
  305. parent: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool
  306. timeout: 5400
  307. vars:
  308. devstack_localrc:
  309. IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
  310. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  311. IRONIC_DEFAULT_RESCUE_INTERFACE: no-rescue
  312. IRONIC_ENABLED_RESCUE_INTERFACES: "fake,no-rescue"
  313. - job:
  314. name: ironic-tempest-ipa-partition-bios-agent_ipmitool-indirect
  315. description: ironic-tempest-ipa-partition-bios-agent_ipmitool-indirect
  316. parent: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool
  317. timeout: 5400
  318. vars:
  319. devstack_localrc:
  320. IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
  321. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: False
  322. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  323. IRONIC_DEFAULT_RESCUE_INTERFACE: no-rescue
  324. IRONIC_ENABLED_RESCUE_INTERFACES: "fake,no-rescue"
  325. IRONIC_DEFAULT_BOOT_OPTION: netboot
  326. - job:
  327. name: ironic-tempest-functional-python3
  328. description: ironic-tempest-functional-python3
  329. parent: ironic-base
  330. timeout: 5400
  331. pre-run: playbooks/ci-workarounds/etc-neutron.yaml
  332. vars:
  333. tempest_test_regex: ironic_tempest_plugin.tests.api
  334. devstack_localrc:
  335. IRONIC_BAREMETAL_BASIC_OPS: False
  336. IRONIC_DEFAULT_DEPLOY_INTERFACE: ""
  337. IRONIC_DEFAULT_NETWORK_INTERFACE: noop
  338. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  339. IRONIC_VM_EPHEMERAL_DISK: 0
  340. IRONIC_RPC_TRANSPORT: json-rpc
  341. devstack_services:
  342. rabbit: False
  343. g-api: False
  344. g-reg: False
  345. n-api: False
  346. n-api-meta: False
  347. n-cauth: False
  348. n-cond: False
  349. n-cpu: False
  350. n-novnc: False
  351. n-obj: False
  352. n-sch: False
  353. nova: False
  354. placement-api: False
  355. q-agt: False
  356. q-dhcp: False
  357. q-l3: False
  358. q-meta: False
  359. q-metering: False
  360. q-svc: False
  361. neutron-api: False
  362. neutron-agent: False
  363. neutron-dhcp: False
  364. neutron-l3: False
  365. neutron-metadata-agent: False
  366. neutron-metering: False
  367. - job:
  368. name: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
  369. description: ironic-tempest-ipa-wholedisk-direct-tinyipa-multinode
  370. parent: tempest-multinode-full-py3
  371. pre-run: playbooks/ci-workarounds/pre.yaml
  372. timeout: 10800
  373. required-projects:
  374. - openstack/ironic
  375. - openstack/ironic-python-agent
  376. - openstack/ironic-python-agent-builder
  377. - openstack/ironic-tempest-plugin
  378. - openstack/virtualbmc
  379. - openstack/networking-generic-switch
  380. irrelevant-files:
  381. - ^.*\.rst$
  382. - ^api-ref/.*$
  383. - ^doc/.*$
  384. - ^driver-requirements.txt$
  385. - ^install-guide/.*$
  386. - ^ironic/locale/.*$
  387. - ^ironic/tests/.*$
  388. - ^releasenotes/.*$
  389. - ^setup.cfg$
  390. - ^tools/.*$
  391. - ^tox.ini$
  392. roles:
  393. - zuul: opendev.org/zuul/zuul-jobs
  394. vars:
  395. tox_envlist: all
  396. tempest_concurrency: 3
  397. tempest_test_regex: "ironic_tempest_plugin.tests.scenario"
  398. tempest_test_timeout: 2400
  399. devstack_localrc:
  400. BUILD_TIMEOUT: 2400
  401. DEFAULT_INSTANCE_TYPE: baremetal
  402. ENABLE_TENANT_TUNNELS: False
  403. ENABLE_TENANT_VLANS: True
  404. FORCE_CONFIG_DRIVE: True
  405. GENERIC_SWITCH_KEY_FILE: /opt/stack/.ssh/id_rsa
  406. HOST_TOPOLOGY: multinode
  407. HOST_TOPOLOGY_ROLE: primary
  408. INSTALL_TEMPEST: False # Don't install a tempest package globaly
  409. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  410. HOST_TOPOLOGY_SUBNODES: "{{ hostvars['compute1']['nodepool']['public_ipv4'] }}"
  411. IRONIC_BAREMETAL_BASIC_OPS: True
  412. IRONIC_BUILD_DEPLOY_RAMDISK: False
  413. IRONIC_CALLBACK_TIMEOUT: 600
  414. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  415. IRONIC_DEFAULT_BOOT_OPTION: local
  416. IRONIC_DEPLOY_DRIVER: ipmi
  417. IRONIC_ENABLED_NETWORK_INTERFACES: flat,neutron
  418. IRONIC_INSPECTOR_BUILD_RAMDISK: False
  419. IRONIC_NETWORK_INTERFACE: neutron
  420. IRONIC_PROVISION_NETWORK_NAME: ironic-provision
  421. IRONIC_PROVISION_SUBNET_GATEWAY: 10.0.5.1
  422. IRONIC_PROVISION_SUBNET_PREFIX: 10.0.5.0/24
  423. IRONIC_RAMDISK_TYPE: tinyipa
  424. IRONIC_TEMPEST_BUILD_TIMEOUT: 600
  425. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  426. IRONIC_USE_LINK_LOCAL: True
  427. IRONIC_VM_COUNT: 3
  428. IRONIC_VM_EPHEMERAL_DISK: 0
  429. IRONIC_VM_LOG_DIR: '{{ devstack_base_dir }}/ironic-bm-logs'
  430. IRONIC_VM_SPECS_RAM: 512
  431. IRONIC_VM_SPECS_DISK: 4
  432. OVS_BRIDGE_MAPPINGS: 'mynetwork:brbm,public:br-infra'
  433. OVS_PHYSICAL_BRIDGE: brbm
  434. PHYSICAL_NETWORK: mynetwork
  435. PUBLIC_BRIDGE: br-infra
  436. Q_AGENT: openvswitch
  437. Q_ML2_TENANT_NETWORK_TYPE: vlan
  438. Q_PLUGIN: ml2
  439. SWIFT_ENABLE_TEMPURLS: True
  440. SWIFT_TEMPURL_KEY: secretkey
  441. TEMPEST_PLUGINS: "{{ ansible_user_dir }}/src/opendev.org/openstack/ironic-tempest-plugin"
  442. TENANT_VLAN_RANGE: 100:150
  443. VIRT_DRIVER: ironic
  444. # We're using a lot of disk space in this job. Some testing nodes have
  445. # a small root partition, so use /opt which is mounted from a bigger
  446. # ephemeral partition on such nodes
  447. LIBVIRT_STORAGE_POOL_PATH: /opt/libvirt/images
  448. devstack_plugins:
  449. ironic: https://opendev.org/openstack/ironic
  450. networking-generic-switch: https://opendev.org/openstack/networking-generic-switch
  451. zuul_copy_output:
  452. '{{ devstack_base_dir }}/ironic-bm-logs': 'logs'
  453. '{{ devstack_base_dir }}/data/networking-generic-switch/netmiko_session.log': 'logs'
  454. devstack_services:
  455. c-api: False
  456. c-bak: False
  457. c-sch: False
  458. c-vol: False
  459. cinder: False
  460. s-account: True
  461. s-container: True
  462. s-object: True
  463. s-proxy: True
  464. dstat: True
  465. g-api: True
  466. g-reg: True
  467. key: True
  468. mysql: True
  469. n-api: True
  470. n-api-meta: True
  471. n-cauth: True
  472. n-cond: True
  473. n-cpu: True
  474. n-novnc: True
  475. n-obj: True
  476. n-sch: True
  477. placement-api: True
  478. q-agt: True
  479. q-dhcp: True
  480. q-l3: True
  481. q-meta: True
  482. q-metering: True
  483. q-svc: True
  484. rabbit: True
  485. group-vars:
  486. subnode:
  487. devstack_localrc:
  488. ENABLE_TENANT_TUNNELS: False
  489. ENABLE_TENANT_VLANS: True
  490. HOST_TOPOLOGY: multinode
  491. HOST_TOPOLOGY_ROLE: subnode
  492. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  493. IRONIC_BAREMETAL_BASIC_OPS: True
  494. IRONIC_DEPLOY_DRIVER: ipmi
  495. IRONIC_DEFAULT_BOOT_OPTION: local
  496. IRONIC_ENABLED_NETWORK_INTERFACES: flat,neutron
  497. IRONIC_NETWORK_INTERFACE: neutron
  498. IRONIC_PROVISION_NETWORK_NAME: ironic-provision
  499. IRONIC_RAMDISK_TYPE: tinyipa
  500. IRONIC_USE_LINK_LOCAL: True
  501. IRONIC_VM_COUNT: 3
  502. IRONIC_VM_EPHEMERAL_DISK: 0
  503. IRONIC_VM_LOG_DIR: '{{ devstack_base_dir }}/ironic-bm-logs'
  504. IRONIC_VM_NETWORK_BRIDGE: sub1brbm
  505. IRONIC_VM_SPECS_RAM: 512
  506. IRONIC_VM_SPECS_DISK: 4
  507. OVS_BRIDGE_MAPPINGS: 'mynetwork:sub1brbm,public:br-infra'
  508. OVS_PHYSICAL_BRIDGE: sub1brbm
  509. PHYSICAL_NETWORK: mynetwork
  510. Q_ML2_TENANT_NETWORK_TYPE: vlan
  511. VIRT_DRIVER: ironic
  512. PUBLIC_BRIDGE: br-infra
  513. LIBVIRT_STORAGE_POOL_PATH: /opt/libvirt/images
  514. devstack_services:
  515. c-api: False
  516. c-bak: False
  517. c-sch: False
  518. c-vol: False
  519. cinder: False
  520. q-agt: True
  521. n-cpu: True
  522. - job:
  523. name: ironic-tox-unit-with-driver-libs
  524. parent: tox
  525. description: |
  526. Run python 3 unit tests with driver dependencies installed.
  527. vars:
  528. tox_envlist: unit-with-driver-libs
  529. - job:
  530. name: ironic-inspector-tempest-discovery-fast-track
  531. description: ironic-inspector-tempest-discovery-fast-track
  532. parent: ironic-inspector-tempest-discovery
  533. vars:
  534. tempest_test_regex: BareMetalFastTrackTest
  535. devstack_localrc:
  536. IRONIC_INSPECTOR_POWER_OFF: False
  537. IRONIC_DEPLOY_FAST_TRACK: True
  538. IRONIC_DEPLOY_FAST_TRACK_CLEANING: True
  539. - job:
  540. name: ironic-tempest-ipa-partition-uefi-pxe-grub2
  541. description: Ironic tempest scenario test utilizing PXE, UEFI, and Grub2
  542. parent: ironic-base
  543. vars:
  544. devstack_localrc:
  545. IRONIC_ENABLED_HARDWARE_TYPES: ipmi
  546. IRONIC_ENABLED_BOOT_INTERFACES: pxe
  547. IRONIC_IPXE_ENABLED: False
  548. IRONIC_BOOT_MODE: uefi
  549. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  550. IRONIC_DEFAULT_BOOT_OPTION: netboot
  551. IRONIC_VM_SPECS_RAM: 4096
  552. - job:
  553. # Security testing for known issues
  554. name: ironic-tox-bandit
  555. parent: openstack-tox
  556. timeout: 2400
  557. vars:
  558. tox_envlist: bandit
  559. required-projects:
  560. - openstack/ironic
  561. irrelevant-files:
  562. - ^.*\.rst$
  563. - ^api-ref/.*$
  564. - ^doc/.*$
  565. - ^driver-requirements.txt$
  566. - ^install-guide/.*$
  567. - ^ironic/locale/.*$
  568. - ^ironic/tests/.*$
  569. - ^releasenotes/.*$
  570. - ^setup.cfg$
  571. - ^tools/(?!bandit\.yml).*$
  572. - ^tox.ini$
  573. - job:
  574. name: ironic-tempest-ipa-wholedisk-bios-ipmi-direct-dib
  575. parent: ironic-base
  576. timeout: 9600
  577. vars:
  578. tempest_test_timeout: 2400
  579. devstack_services:
  580. s-account: True
  581. s-container: True
  582. s-object: True
  583. s-proxy: True
  584. devstack_localrc:
  585. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  586. IRONIC_DIB_RAMDISK_OS: centos8
  587. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  588. IRONIC_VM_EPHEMERAL_DISK: 0
  589. IRONIC_VM_INTERFACE_COUNT: 1
  590. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  591. SWIFT_ENABLE_TEMPURLS: True
  592. SWIFT_TEMPURL_KEY: secretkey
  593. - job:
  594. name: ironic-tempest-ipxe-ipv6
  595. description: ironic-tempest-ipxe-ipv6
  596. parent: ironic-base
  597. required-projects:
  598. - openstack/networking-generic-switch
  599. vars:
  600. tempest_test_timeout: 2400
  601. devstack_services:
  602. # NOTE(TheJulia): It seems our devstack plugin does not play well
  603. # with multitenancy and the newer neutron service names.
  604. neutron: True
  605. neutron-api: True
  606. neutron-agent: True
  607. neutron-dhcp: True
  608. neutron-l3: True
  609. neutron-metadata-agent: False
  610. neutron-metering: False
  611. q-agt: False
  612. q-dhcp: False
  613. q-l3: False
  614. q-meta: False
  615. q-metering: False
  616. q-svc: False
  617. swift: True
  618. devstack_plugins:
  619. ironic: git://git.openstack.org/openstack/ironic
  620. networking-generic-switch: git://git.openstack.org/openstack/networking-generic-switch
  621. # NOTE(TheJulia): Nova default behavior is to rely upon stack defaults, v6 needs to
  622. # be explicit. This is the best place to wire it in.
  623. tempest_test_regex: BaremetalSingleTenant
  624. devstack_localrc:
  625. IRONIC_AGENT_IMAGE_DOWNLOAD_SOURCE: http
  626. IPV6_ENABLED: True
  627. IP_VERSION: 6
  628. SERVICE_IP_VERSION: 6
  629. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  630. IRONIC_ENABLED_BOOT_INTERFACES: ipxe,pxe
  631. IRONIC_DEFAULT_BOOT_INTERFACE: ipxe
  632. IRONIC_IPXE_ENABLED: True
  633. IRONIC_PROVISION_NETWORK_NAME: ironic-provision
  634. OVS_PHYSICAL_BRIDGE: brbm
  635. NEUTRON_PHYSICAL_NETWORK: mynetwork
  636. NEUTRON_TENANT_VLAN_RANGE: 100:150
  637. IRONIC_ENABLED_NETWORK_INTERFACES: flat,neutron
  638. IRONIC_NETWORK_INTERFACE: neutron
  639. IRONIC_DEFAILT_DEPLOY_INTERFACE: direct
  640. IRONIC_DEFAILT_RESCUE_INTERFACE: no-rescue
  641. IRONIC_USE_LINK_LOCAL: True
  642. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  643. IRONIC_VM_EPHEMERAL_DISK: 0
  644. # This will swap and needs to get to tinycore soon.
  645. IRONIC_VM_COUNT: 2
  646. IRONIC_VM_SPECS_RAM: 2048
  647. IRONIC_VM_SPECS_CPU: 2
  648. Q_PLUGIN: ml2
  649. ENABLE_TENANT_VLANS: True
  650. Q_ML2_TENANT_NETWORK_TYPE: vlan
  651. NEUTRON_TENANT_NETWORK_TYPE: vlan
  652. OVS_BRIDGE_MAPPINGS: "public:br-ex,mynetwork:brbm"
  653. USE_PROVIDER_NETWORKING: True
  654. PUBLIC_PHYSICAL_NETWORK: public
  655. PUBLIC_PROVIDERNET_TYPE: flat
  656. Q_USE_PROVIDERNET_FOR_PUBLIC: True
  657. BUILD_TIMEOUT: 1440
  658. IRONIC_TEMPEST_BUILD_TIMEOUT: 1440
  659. IRONIC_PING_TIMEOUT: 1440
  660. # NOTE(rpittau): OLD TINYIPA JOBS
  661. # Those jobs are used by other projects, we leave them here until
  662. # we can convert them to dib.
  663. # Used by devstack/ironic/nova/neutron
  664. - job:
  665. name: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa
  666. description: ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa that also tests cleaning.
  667. parent: ironic-base
  668. timeout: 5400
  669. vars:
  670. devstack_localrc:
  671. IRONIC_DEFAULT_DEPLOY_INTERFACE: direct
  672. IRONIC_DEFAULT_RESCUE_INTERFACE: agent
  673. IRONIC_ENABLED_RESCUE_INTERFACES: "fake,agent,no-rescue"
  674. IRONIC_RAMDISK_TYPE: tinyipa
  675. IRONIC_VM_SPECS_RAM: 384
  676. IRONIC_VM_COUNT: 2
  677. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: True
  678. IRONIC_VM_EPHEMERAL_DISK: 0
  679. SWIFT_ENABLE_TEMPURLS: True
  680. SWIFT_TEMPURL_KEY: secretkey
  681. devstack_services:
  682. s-account: True
  683. s-container: True
  684. s-object: True
  685. s-proxy: True
  686. - job:
  687. name: ironic-grenade
  688. parent: grenade
  689. timeout: 10800
  690. irrelevant-files:
  691. - ^driver-requirements.txt$
  692. - ^.*\.rst$
  693. - ^api-ref/.*$
  694. - ^doc/.*$
  695. - ^install-guide/.*$
  696. - ^ironic/locale/.*$
  697. - ^ironic/tests/.*$
  698. - ^releasenotes/.*$
  699. - ^setup.cfg$
  700. - ^tools/.*$
  701. - ^tox.ini$
  702. required-projects:
  703. - openstack/grenade
  704. - openstack/ironic
  705. - openstack/ironic-python-agent
  706. - openstack/ironic-python-agent-builder
  707. - openstack/ironic-tempest-plugin
  708. - openstack/virtualbmc
  709. vars:
  710. grenade_devstack_localrc:
  711. shared:
  712. DEFAULT_INSTANCE_TYPE: baremetal
  713. FORCE_CONFIG_DRIVE: True
  714. INSTALL_TEMPEST: False
  715. VIRT_DRIVER: ironic
  716. BUILD_TIMEOUT: 1200
  717. IRONIC_BAREMETAL_BASIC_OPS: True
  718. IRONIC_BUILD_DEPLOY_RAMDISK: False
  719. IRONIC_CALLBACK_TIMEOUT: 600
  720. IRONIC_DEPLOY_DRIVER: ipmi
  721. IRONIC_INSPECTOR_BUILD_RAMDISK: False
  722. IRONIC_RAMDISK_TYPE: tinyipa
  723. IRONIC_TEMPEST_WHOLE_DISK_IMAGE: False
  724. IRONIC_VM_COUNT: 6
  725. IRONIC_VM_EPHEMERAL_DISK: 1
  726. IRONIC_VM_SPECS_RAM: 384
  727. IRONIC_DEFAULT_BOOT_OPTION: netboot
  728. IRONIC_AUTOMATED_CLEAN_ENABLED: False
  729. IRONIC_REQUIRE_AGENT_TOKEN: False
  730. Q_AGENT: openvswitch
  731. Q_ML2_TENANT_NETWORK_TYPE: vxlan
  732. EBTABLES_RACE_FIX: True
  733. old:
  734. IRONIC_VM_LOG_DIR: '{{ devstack_bases.old }}/ironic-bm-logs'
  735. grenade_tempest_concurrency: 1
  736. grenade_test_timeout: 2600
  737. devstack_plugins:
  738. ironic: https://opendev.org/openstack/ironic
  739. devstack_services:
  740. c-api: False
  741. c-bak: False
  742. c-sch: False
  743. c-vol: False
  744. cinder: False
  745. ir-api: True
  746. ir-cond: True
  747. tempest_plugins:
  748. - ironic-tempest-plugin
  749. tempest_test_regex: 'test_server_basic_ops'
  750. tox_envlist: all
  751. tempest_concurrency: 1
  752. zuul_copy_output:
  753. '{{ devstack_bases.old }}/ironic-bm-logs': logs
  754. # Keeping till we can rename the job on grenade
  755. - job:
  756. name: ironic-grenade-dsvm
  757. parent: ironic-grenade
  758. timeout: 10800