OpenStack Networking (Neutron)
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.

442 lines
14KB

  1. # NOTE: In doc/source/contributor/testing/ci_scenario_jobs.rst file there is
  2. # document with summary of all tempest, neutron-tempest-plugin and grenade jobs
  3. # summary.
  4. # Please update this document always when any changes to jobs are made.
  5. - project:
  6. templates:
  7. - neutron-tempest-plugin-jobs
  8. - openstack-cover-jobs
  9. - openstack-lower-constraints-jobs
  10. - openstack-python3-ussuri-jobs
  11. - publish-openstack-docs-pti
  12. - periodic-stable-jobs
  13. - check-requirements
  14. - integrated-gate-networking
  15. - release-notes-jobs-python3
  16. check:
  17. jobs:
  18. - neutron-functional
  19. - neutron-fullstack
  20. - neutron-rally-task
  21. - neutron-tempest-dvr
  22. - neutron-tempest-linuxbridge
  23. - neutron-grenade-multinode
  24. - neutron-grenade-dvr-multinode
  25. - tempest-multinode-full-py3:
  26. voting: false
  27. # We don't run the job on things like neutron docs-only changes
  28. irrelevant-files: &tempest-irrelevant-files
  29. - ^(test-|)requirements.txt$
  30. - ^.*\.rst$
  31. - ^doc/.*$
  32. - ^neutron/locale/.*$
  33. - ^neutron/tests/unit/.*$
  34. - ^releasenotes/.*$
  35. - ^setup.cfg$
  36. - ^tools/.*$
  37. - ^tox.ini$
  38. - neutron-tempest-dvr-ha-multinode-full
  39. - neutron-tempest-iptables_hybrid
  40. - neutron-grenade
  41. - ironic-tempest-ipa-wholedisk-bios-agent_ipmitool-tinyipa:
  42. voting: false
  43. irrelevant-files: *tempest-irrelevant-files
  44. - tempest-slow-py3:
  45. irrelevant-files: *tempest-irrelevant-files
  46. - networking-ovn-tempest-dsvm-ovs-release:
  47. irrelevant-files: *tempest-irrelevant-files
  48. - networking-midonet-tempest-aio-ml2-centos-7:
  49. voting: false
  50. irrelevant-files: *tempest-irrelevant-files
  51. - grenade-py3:
  52. irrelevant-files: *tempest-irrelevant-files
  53. - tempest-ipv6-only:
  54. irrelevant-files: *tempest-irrelevant-files
  55. - openstacksdk-functional-devstack-networking:
  56. voting: false
  57. - neutron-functional-with-uwsgi:
  58. voting: false
  59. - neutron-fullstack-with-uwsgi:
  60. voting: false
  61. - neutron-tempest-with-uwsgi:
  62. voting: false
  63. - neutron-centos-7-tripleo-standalone
  64. gate:
  65. jobs:
  66. - neutron-functional
  67. - neutron-fullstack
  68. - neutron-tempest-dvr
  69. - neutron-tempest-linuxbridge
  70. - neutron-tempest-iptables_hybrid
  71. - neutron-grenade-multinode
  72. - neutron-grenade-dvr-multinode
  73. - neutron-grenade
  74. - tempest-slow-py3:
  75. irrelevant-files: *tempest-irrelevant-files
  76. - grenade-py3:
  77. irrelevant-files: *tempest-irrelevant-files
  78. - tempest-ipv6-only:
  79. irrelevant-files: *tempest-irrelevant-files
  80. periodic:
  81. jobs:
  82. - neutron-functional
  83. - neutron-tempest-postgres-full
  84. - neutron-tempest-with-os-ken-master
  85. experimental:
  86. jobs:
  87. # TODO(slaweq): we should consider to convert this job to "non-legacy"
  88. # one and move it to check queue, at least as non-voting
  89. - legacy-grenade-dsvm-neutron-linuxbridge-multinode:
  90. irrelevant-files: *tempest-irrelevant-files
  91. - legacy-tempest-dsvm-neutron-full-centos-7:
  92. irrelevant-files: *tempest-irrelevant-files
  93. - legacy-tempest-dsvm-neutron-dvr-multinode-full:
  94. irrelevant-files: *tempest-irrelevant-files
  95. - tempest-full-py3-opensuse15:
  96. irrelevant-files: *tempest-irrelevant-files
  97. - job:
  98. name: neutron-functional
  99. parent: devstack-minimal
  100. description: Run neutron functional tests
  101. timeout: 7800
  102. required-projects:
  103. - opendev.org/openstack/devstack
  104. - openstack/neutron
  105. - openstack/requirements
  106. roles:
  107. - zuul: openstack/devstack
  108. pre-run: playbooks/configure_functional_job.yaml
  109. run: playbooks/run_functional_job.yaml
  110. post-run: playbooks/post_functional_job.yaml
  111. irrelevant-files:
  112. - ^.*\.rst$
  113. - ^doc/.*$
  114. - ^neutron/locale/.*$
  115. - ^releasenotes/.*$
  116. vars:
  117. devstack_services:
  118. # Ignore any default set by devstack. Emit a "disable_all_services".
  119. base: false
  120. devstack_localrc:
  121. USE_PYTHON3: true
  122. INSTALL_TESTONLY_PACKAGES: true
  123. DATABASE_PASSWORD: stackdb
  124. tox_envlist: dsvm-functional
  125. tox_install_siblings: false
  126. tox_constraints_file: '{{ ansible_user_dir }}/src/opendev.org/openstack/requirements/upper-constraints.txt'
  127. zuul_copy_output:
  128. # We need to copy directory with logs to have it in job artifacts also,
  129. # /opt/stack/logs is default logs directory defined in neutron's
  130. # tox.ini file
  131. '{{ devstack_base_dir }}/logs/dsvm-functional-logs': logs
  132. - job:
  133. name: neutron-fullstack
  134. parent: neutron-functional
  135. vars:
  136. tox_envlist: dsvm-fullstack
  137. zuul_copy_output:
  138. # We need to copy directory with logs to have it in job artifacts also,
  139. # /opt/stack/logs is default logs directory defined in neutron's
  140. # tox.ini file
  141. '{{ devstack_base_dir }}/logs/dsvm-fullstack-logs': logs
  142. - job:
  143. name: neutron-rally-task
  144. parent: rally-task-neutron
  145. timeout: 10800
  146. vars:
  147. devstack_localrc:
  148. USE_PYTHON3: true
  149. OSPROFILER_COLLECTOR: redis
  150. OSPROFILER_HMAC_KEYS: "neutron-hmac-key-used-in-zuul-ci"
  151. rally_task: rally-jobs/task-neutron.yaml
  152. devstack_plugins:
  153. osprofiler: https://opendev.org/openstack/osprofiler
  154. rally-openstack: https://opendev.org/openstack/rally-openstack
  155. neutron: https://opendev.org/openstack/neutron
  156. devstack_services:
  157. neutron-trunk: true
  158. required-projects:
  159. - openstack/rally
  160. - openstack/rally-openstack
  161. - openstack/osprofiler
  162. irrelevant-files:
  163. - ^.*\.rst$
  164. - ^doc/.*$
  165. - ^neutron/locale/.*$
  166. - ^neutron/tests/unit/.*$
  167. - ^releasenotes/.*$
  168. - ^tools/.*$
  169. - ^tox.ini$
  170. - job:
  171. name: neutron-tempest-dvr
  172. parent: tempest-integrated-networking
  173. timeout: 10800
  174. required-projects:
  175. - openstack/devstack-gate
  176. - openstack/neutron
  177. - openstack/tempest
  178. vars:
  179. tempest_concurrency: 4
  180. devstack_localrc:
  181. Q_DVR_MODE: dvr_snat
  182. irrelevant-files: *tempest-irrelevant-files
  183. - job:
  184. name: neutron-tempest-linuxbridge
  185. parent: tempest-integrated-networking
  186. timeout: 10800
  187. required-projects:
  188. - openstack/devstack-gate
  189. - openstack/neutron
  190. - openstack/tempest
  191. vars:
  192. tempest_concurrency: 4
  193. devstack_localrc:
  194. Q_AGENT: linuxbridge
  195. irrelevant-files:
  196. - ^(test-|)requirements.txt$
  197. - ^.*\.rst$
  198. - ^doc/.*$
  199. - ^neutron/locale/.*$
  200. - ^neutron/tests/.*$
  201. - ^neutron/tests/unit/.*$
  202. - ^releasenotes/.*$
  203. - ^setup.cfg$
  204. - ^tools/.*$
  205. - ^tox.ini$
  206. - job:
  207. name: neutron-grenade-multinode
  208. parent: legacy-dsvm-base-multinode
  209. run: playbooks/legacy/neutron-grenade-multinode/run.yaml
  210. post-run: playbooks/legacy/neutron-grenade-multinode/post.yaml
  211. timeout: 10800
  212. required-projects:
  213. - openstack/grenade
  214. - openstack/devstack-gate
  215. - openstack/neutron
  216. irrelevant-files: *tempest-irrelevant-files
  217. - job:
  218. name: neutron-grenade-dvr-multinode
  219. parent: legacy-dsvm-base-multinode
  220. run: playbooks/legacy/neutron-grenade-dvr-multinode/run.yaml
  221. post-run: playbooks/legacy/neutron-grenade-dvr-multinode/post.yaml
  222. timeout: 7500
  223. required-projects:
  224. - openstack/grenade
  225. - openstack/devstack-gate
  226. - openstack/neutron
  227. irrelevant-files: *tempest-irrelevant-files
  228. - job:
  229. name: neutron-tempest-dvr-ha-multinode-full
  230. parent: tempest-multinode-full-py3
  231. nodeset: openstack-three-node-bionic
  232. timeout: 10800
  233. roles:
  234. - zuul: openstack/neutron-tempest-plugin
  235. required-projects:
  236. - openstack/devstack-gate
  237. - openstack/neutron
  238. - openstack/tempest
  239. pre-run: playbooks/dvr-multinode-scenario-pre-run.yaml
  240. irrelevant-files: *tempest-irrelevant-files
  241. voting: false
  242. vars:
  243. devstack_local_conf:
  244. post-config:
  245. $NEUTRON_CONF:
  246. DEFAULT:
  247. router_distributed: True
  248. l3_ha: True
  249. # NOTE(slaweq): We can get rid of this hardcoded absolute path when
  250. # devstack-tempest job will be switched to use lib/neutron instead of
  251. # lib/neutron-legacy
  252. "/$NEUTRON_CORE_PLUGIN_CONF":
  253. ml2:
  254. mechanism_drivers: openvswitch,l2population
  255. agent:
  256. enable_distributed_routing: True
  257. l2_population: True
  258. tunnel_types: vxlan
  259. arp_responder: True
  260. ovs:
  261. tunnel_bridge: br-tun
  262. bridge_mappings: public:br-ex
  263. $NEUTRON_L3_CONF:
  264. DEFAULT:
  265. agent_mode: dvr
  266. agent:
  267. availability_zone: nova
  268. $NEUTRON_DHCP_CONF:
  269. agent:
  270. availability_zone: nova
  271. group-vars:
  272. subnode:
  273. devstack_services:
  274. q-agt: true
  275. q-l3: true
  276. q-meta: true
  277. devstack_localrc:
  278. USE_PYTHON3: true
  279. devstack_local_conf:
  280. post-config:
  281. $NEUTRON_CONF:
  282. DEFAULT:
  283. router_distributed: True
  284. # NOTE(slaweq): We can get rid of this hardcoded absolute path when
  285. # devstack-tempest job will be switched to use lib/neutron instead of
  286. # lib/neutron-legacy
  287. "/$NEUTRON_CORE_PLUGIN_CONF":
  288. agent:
  289. enable_distributed_routing: True
  290. l2_population: True
  291. tunnel_types: vxlan
  292. arp_responder: True
  293. ovs:
  294. tunnel_bridge: br-tun
  295. bridge_mappings: public:br-ex
  296. $NEUTRON_L3_CONF:
  297. DEFAULT:
  298. agent_mode: dvr_snat
  299. agent:
  300. availability_zone: nova
  301. - job:
  302. name: neutron-tempest-iptables_hybrid
  303. parent: tempest-integrated-networking
  304. timeout: 10800
  305. required-projects:
  306. - openstack/devstack-gate
  307. - openstack/neutron
  308. - openstack/tempest
  309. vars:
  310. tempest_concurrency: 4
  311. devstack_plugins:
  312. neutron: https://opendev.org/openstack/neutron.git
  313. devstack_services:
  314. tls-proxy: false
  315. tempest: true
  316. neutron-dns: true
  317. neutron-qos: true
  318. neutron-segments: true
  319. neutron-trunk: true
  320. neutron-uplink-status-propagation: true
  321. devstack_local_conf:
  322. post-config:
  323. $NEUTRON_CONF:
  324. QUOTAS:
  325. quota_router: 100
  326. quota_floatingip: 500
  327. quota_security_group: 100
  328. quota_security_group_rule: 1000
  329. # NOTE(slaweq): We can get rid of this hardcoded absolute path when
  330. # devstack-tempest job will be switched to use lib/neutron instead of
  331. # lib/neutron-legacy
  332. "/$NEUTRON_CORE_PLUGIN_CONF":
  333. ml2_type_vlan:
  334. network_vlan_ranges: foo:1:10
  335. agent:
  336. enable_distributed_routing: True
  337. l2_population: True
  338. tunnel_types: vxlan,gre
  339. arp_responder: True
  340. securitygroup:
  341. firewall_driver: iptables_hybrid
  342. $NEUTRON_L3_CONF:
  343. agent:
  344. availability_zone: nova
  345. $NEUTRON_DHCP_CONF:
  346. agent:
  347. availability_zone: nova
  348. test-config:
  349. $TEMPEST_CONFIG:
  350. neutron_plugin_options:
  351. provider_vlans: foo,
  352. agent_availability_zone: nova
  353. image_is_advanced: true
  354. available_type_drivers: flat,geneve,vlan,gre,local,vxlan
  355. irrelevant-files: *tempest-irrelevant-files
  356. - job:
  357. name: neutron-grenade
  358. parent: legacy-dsvm-base
  359. run: playbooks/legacy/neutron-grenade/run.yaml
  360. post-run: playbooks/legacy/neutron-grenade/post.yaml
  361. timeout: 10800
  362. required-projects:
  363. - openstack/grenade
  364. - openstack/devstack-gate
  365. - openstack/neutron
  366. irrelevant-files: *tempest-irrelevant-files
  367. - job:
  368. name: neutron-tempest-postgres-full
  369. parent: tempest-integrated-networking
  370. timeout: 7800
  371. required-projects:
  372. - openstack/devstack-gate
  373. - openstack/neutron
  374. - openstack/tempest
  375. vars:
  376. devstack_services:
  377. postgresql: true
  378. mysql: false
  379. irrelevant-files: *tempest-irrelevant-files
  380. - job:
  381. name: neutron-tempest-with-os-ken-master
  382. parent: legacy-dsvm-base
  383. run: playbooks/legacy/neutron-tempest-with-os-ken-master/run.yaml
  384. post-run: playbooks/legacy/neutron-tempest-with-os-ken-master/post.yaml
  385. timeout: 7800
  386. required-projects:
  387. - openstack/devstack-gate
  388. - openstack/neutron
  389. - openstack/tempest
  390. - job:
  391. name: neutron-fullstack-with-uwsgi
  392. parent: neutron-fullstack
  393. vars:
  394. devstack_localrc:
  395. NEUTRON_DEPLOY_MOD_WSGI: true
  396. - job:
  397. name: neutron-functional-with-uwsgi
  398. parent: neutron-functional
  399. vars:
  400. devstack_localrc:
  401. NEUTRON_DEPLOY_MOD_WSGI: true
  402. - job:
  403. name: neutron-tempest-with-uwsgi
  404. parent: tempest-integrated-networking
  405. description: Run neutron Tempest tests with uwsgi
  406. timeout: 8400
  407. vars:
  408. devstack_localrc:
  409. NEUTRON_DEPLOY_MOD_WSGI: true
  410. irrelevant-files: *tempest-irrelevant-files
  411. - job:
  412. name: neutron-centos-7-tripleo-standalone
  413. parent: tripleo-ci-base-standalone
  414. nodeset: single-centos-7-node
  415. voting: false
  416. vars:
  417. featureset: '052'
  418. featureset_override:
  419. standalone_environment_files:
  420. - 'environments/services/neutron-ovs.yaml'
  421. tempest_test_whitelist:
  422. - 'tempest.scenario.test_network_basic_ops.TestNetworkBasicOps.test_network_basic_ops'
  423. irrelevant-files: *tempest-irrelevant-files