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.

73 lines
1.9 KiB

7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
  1. ---
  2. stages:
  3. - unit-tests
  4. - deploy-part1
  5. - moderator
  6. - deploy-part2
  7. - deploy-special
  8. variables:
  9. FAILFASTCI_NAMESPACE: 'kargo-ci'
  10. GITLAB_REPOSITORY: 'kargo-ci/kubernetes-sigs-kubespray'
  11. # DOCKER_HOST: tcp://localhost:2375
  12. ANSIBLE_FORCE_COLOR: "true"
  13. MAGIC: "ci check this"
  14. TEST_ID: "$CI_PIPELINE_ID-$CI_BUILD_ID"
  15. CI_TEST_VARS: "./tests/files/${CI_JOB_NAME}.yml"
  16. GS_ACCESS_KEY_ID: $GS_KEY
  17. GS_SECRET_ACCESS_KEY: $GS_SECRET
  18. CONTAINER_ENGINE: docker
  19. SSH_USER: root
  20. GCE_PREEMPTIBLE: "false"
  21. ANSIBLE_KEEP_REMOTE_FILES: "1"
  22. ANSIBLE_CONFIG: ./tests/ansible.cfg
  23. ANSIBLE_INVENTORY: ./inventory/sample/${CI_JOB_NAME}-${BUILD_NUMBER}.ini
  24. IDEMPOT_CHECK: "false"
  25. RESET_CHECK: "false"
  26. UPGRADE_TEST: "false"
  27. LOG_LEVEL: "-vv"
  28. RECOVER_CONTROL_PLANE_TEST: "false"
  29. RECOVER_CONTROL_PLANE_TEST_GROUPS: "etcd[2:],kube-master[1:]"
  30. before_script:
  31. - ./tests/scripts/rebase.sh
  32. - update-alternatives --install /usr/bin/python python /usr/bin/python3 1
  33. - python -m pip install -r tests/requirements.txt
  34. - mkdir -p /.ssh
  35. .job: &job
  36. tags:
  37. - packet
  38. variables:
  39. KUBESPRAY_VERSION: v2.12.3
  40. image: quay.io/kubespray/kubespray:$KUBESPRAY_VERSION
  41. .testcases: &testcases
  42. <<: *job
  43. services:
  44. - docker:dind
  45. before_script:
  46. - update-alternatives --install /usr/bin/python python /usr/bin/python3 1
  47. - ./tests/scripts/rebase.sh
  48. - ./tests/scripts/testcases_prepare.sh
  49. script:
  50. - ./tests/scripts/testcases_run.sh
  51. after_script:
  52. - ./tests/scripts/testcases_cleanup.sh
  53. # For failfast, at least 1 job must be defined in .gitlab-ci.yml
  54. # Premoderated with manual actions
  55. ci-authorized:
  56. extends: .job
  57. stage: moderator
  58. script:
  59. - /bin/sh scripts/premoderator.sh
  60. except: ['triggers', 'master']
  61. # Disable ci moderator
  62. only: []
  63. include:
  64. - .gitlab-ci/lint.yml
  65. - .gitlab-ci/shellcheck.yml
  66. - .gitlab-ci/terraform.yml
  67. - .gitlab-ci/packet.yml