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.

246 lines
5.1 KiB

  1. ---
  2. .packet:
  3. extends: .testcases
  4. variables:
  5. ANSIBLE_TIMEOUT: "120"
  6. CI_PLATFORM: packet
  7. SSH_USER: kubespray
  8. tags:
  9. - ffci
  10. needs:
  11. - pipeline-image
  12. - ci-not-authorized
  13. # CI template for PRs
  14. .packet_pr:
  15. stage: deploy-part1
  16. rules:
  17. - if: $PR_LABELS =~ /.*ci-short.*/
  18. when: manual
  19. allow_failure: true
  20. - if: $CI_COMMIT_BRANCH =~ /^pr-.*$/
  21. when: on_success
  22. - when: manual
  23. allow_failure: true
  24. extends: .packet
  25. ## Uncomment this to have multiple stages
  26. # needs:
  27. # - packet_ubuntu20-calico-all-in-one
  28. .packet_pr_short:
  29. stage: deploy-part1
  30. extends: .packet
  31. rules:
  32. - if: $CI_COMMIT_BRANCH =~ /^pr-.*$/
  33. when: on_success
  34. - when: manual
  35. allow_failure: true
  36. .packet_pr_manual:
  37. extends: .packet_pr
  38. stage: deploy-extended
  39. rules:
  40. - if: $PR_LABELS =~ /.*ci-full.*/
  41. when: on_success
  42. # Else run as manual
  43. - when: manual
  44. allow_failure: true
  45. .packet_pr_extended:
  46. extends: .packet_pr
  47. stage: deploy-extended
  48. rules:
  49. - if: $PR_LABELS =~ /.*(ci-extended|ci-full).*/
  50. when: on_success
  51. - when: manual
  52. allow_failure: true
  53. # CI template for periodic CI jobs
  54. # Enabled when PERIODIC_CI_ENABLED var is set
  55. .packet_periodic:
  56. only:
  57. variables:
  58. - $PERIODIC_CI_ENABLED
  59. allow_failure: true
  60. extends: .packet
  61. # The ubuntu20-calico-all-in-one jobs are meant as early stages to prevent running the full CI if something is horribly broken
  62. packet_ubuntu20-calico-all-in-one:
  63. stage: deploy-part1
  64. extends: .packet_pr_short
  65. variables:
  66. RESET_CHECK: "true"
  67. # ### PR JOBS PART2
  68. packet_ubuntu20-crio:
  69. extends: .packet_pr_manual
  70. packet_ubuntu22-calico-all-in-one:
  71. extends: .packet_pr
  72. packet_ubuntu22-calico-all-in-one-upgrade:
  73. extends: .packet_pr
  74. variables:
  75. UPGRADE_TEST: graceful
  76. packet_ubuntu24-calico-etcd-datastore:
  77. extends: .packet_pr
  78. packet_almalinux8-crio:
  79. extends: .packet_pr
  80. packet_almalinux8-kube-ovn:
  81. extends: .packet_pr
  82. packet_debian11-calico:
  83. extends: .packet_pr
  84. packet_debian11-macvlan:
  85. extends: .packet_pr
  86. packet_debian12-cilium:
  87. extends: .packet_pr
  88. packet_rockylinux8-calico:
  89. extends: .packet_pr
  90. packet_rockylinux9-cilium:
  91. extends: .packet_pr
  92. variables:
  93. RESET_CHECK: "true"
  94. packet_amazon-linux-2-all-in-one:
  95. extends: .packet_pr
  96. packet_opensuse-docker-cilium:
  97. extends: .packet_pr
  98. packet_ubuntu20-cilium-sep:
  99. extends: .packet_pr
  100. packet_openeuler24-calico:
  101. extends: .packet_pr
  102. ## Extended
  103. packet_debian11-docker:
  104. extends: .packet_pr_extended
  105. packet_debian12-docker:
  106. extends: .packet_pr_extended
  107. packet_debian12-calico:
  108. extends: .packet_pr_extended
  109. packet_almalinux8-calico-remove-node:
  110. extends: .packet_pr_extended
  111. variables:
  112. REMOVE_NODE_CHECK: "true"
  113. REMOVE_NODE_NAME: "instance-3"
  114. packet_rockylinux9-calico:
  115. extends: .packet_pr_extended
  116. packet_almalinux8-calico:
  117. extends: .packet_pr_extended
  118. packet_almalinux8-docker:
  119. extends: .packet_pr_extended
  120. packet_ubuntu20-calico-all-in-one-hardening:
  121. extends: .packet_pr_extended
  122. packet_ubuntu24-calico-all-in-one:
  123. extends: .packet_pr_extended
  124. packet_ubuntu20-calico-etcd-kubeadm:
  125. extends: .packet_pr_extended
  126. packet_ubuntu24-all-in-one-docker:
  127. extends: .packet_pr_extended
  128. packet_ubuntu22-all-in-one-docker:
  129. extends: .packet_pr_extended
  130. # ### MANUAL JOBS
  131. packet_fedora39-crio:
  132. extends: .packet_pr_manual
  133. packet_ubuntu20-flannel-ha:
  134. extends: .packet_pr_manual
  135. packet_ubuntu20-all-in-one-docker:
  136. extends: .packet_pr_manual
  137. packet_ubuntu20-flannel-ha-once:
  138. extends: .packet_pr_manual
  139. packet_fedora39-calico-swap-selinux:
  140. extends: .packet_pr_manual
  141. packet_almalinux8-calico-ha-ebpf:
  142. extends: .packet_pr_manual
  143. packet_almalinux8-calico-nodelocaldns-secondary:
  144. extends: .packet_pr_manual
  145. packet_debian11-custom-cni:
  146. extends: .packet_pr_manual
  147. packet_debian11-kubelet-csr-approver:
  148. extends: .packet_pr_manual
  149. packet_debian12-custom-cni-helm:
  150. extends: .packet_pr_manual
  151. packet_ubuntu20-calico-ha-wireguard:
  152. extends: .packet_pr_manual
  153. # PERIODIC
  154. packet_fedora40-docker-calico:
  155. stage: deploy-extended
  156. extends: .packet_periodic
  157. variables:
  158. RESET_CHECK: "true"
  159. packet_fedora39-calico-selinux:
  160. stage: deploy-extended
  161. extends: .packet_periodic
  162. packet_ubuntu20-calico-etcd-kubeadm-upgrade-ha:
  163. stage: deploy-extended
  164. extends: .packet_periodic
  165. variables:
  166. UPGRADE_TEST: basic
  167. packet_debian11-calico-upgrade-once:
  168. stage: deploy-extended
  169. extends: .packet_periodic
  170. variables:
  171. UPGRADE_TEST: graceful
  172. packet_ubuntu20-calico-ha-recover:
  173. stage: deploy-extended
  174. extends: .packet_periodic
  175. variables:
  176. RECOVER_CONTROL_PLANE_TEST: "true"
  177. RECOVER_CONTROL_PLANE_TEST_GROUPS: "etcd[2:]:kube_control_plane[1:]"
  178. packet_ubuntu20-calico-ha-recover-noquorum:
  179. stage: deploy-extended
  180. extends: .packet_periodic
  181. variables:
  182. RECOVER_CONTROL_PLANE_TEST: "true"
  183. RECOVER_CONTROL_PLANE_TEST_GROUPS: "etcd[1:]:kube_control_plane[1:]"
  184. packet_debian11-calico-upgrade:
  185. stage: deploy-extended
  186. extends: .packet_periodic
  187. variables:
  188. UPGRADE_TEST: graceful
  189. packet_debian12-cilium-svc-proxy:
  190. stage: deploy-extended
  191. extends: .packet_periodic