Skip to content

Commit

Permalink
Update Terraform 0.14 to .11, remove 0.13 jobs and add 0.15
Browse files Browse the repository at this point in the history
  • Loading branch information
floryut committed Aug 31, 2021
1 parent 761159d commit a9d5711
Show file tree
Hide file tree
Showing 2 changed files with 53 additions and 21 deletions.
4 changes: 2 additions & 2 deletions .gitlab-ci.yml
Original file line number Diff line number Diff line change
Expand Up @@ -31,8 +31,8 @@ variables:
ANSIBLE_LOG_LEVEL: "-vv"
RECOVER_CONTROL_PLANE_TEST: "false"
RECOVER_CONTROL_PLANE_TEST_GROUPS: "etcd[2:],kube_control_plane[1:]"
TERRAFORM_14_VERSION: 0.14.10
TERRAFORM_13_VERSION: 0.13.6
TERRAFORM_14_VERSION: 0.14.11
TERRAFORM_15_VERSION: 0.15.5

before_script:
- ./tests/scripts/rebase.sh
Expand Down
70 changes: 51 additions & 19 deletions .gitlab-ci/terraform.yml
Original file line number Diff line number Diff line change
Expand Up @@ -22,6 +22,29 @@
# Random subnet to avoid routing conflicts
- export TF_VAR_subnet_cidr="10.$(( $RANDOM % 256 )).$(( $RANDOM % 256 )).0/24"

# Tests for contrib/terraform/
.terraform_next_install:
extends: .job
before_script:
- update-alternatives --install /usr/bin/python python /usr/bin/python3 1
- ./tests/scripts/rebase.sh
- ./tests/scripts/testcases_prepare.sh
- ./tests/scripts/terraform_install.sh
# Set Ansible config
- cp ansible.cfg ~/.ansible.cfg
# Prepare inventory
- cp contrib/terraform/$PROVIDER/sample-inventory/cluster.tfvars .
- ln -s contrib/terraform/$PROVIDER/hosts
- terraform -chdir=contrib/terraform/$PROVIDER init
# Copy SSH keypair
- mkdir -p ~/.ssh
- echo "$PACKET_PRIVATE_KEY" | base64 -d > ~/.ssh/id_rsa
- chmod 400 ~/.ssh/id_rsa
- echo "$PACKET_PUBLIC_KEY" | base64 -d > ~/.ssh/id_rsa.pub
- mkdir -p group_vars
# Random subnet to avoid routing conflicts
- export TF_VAR_subnet_cidr="10.$(( $RANDOM % 256 )).$(( $RANDOM % 256 )).0/24"

.terraform_validate:
extends: .terraform_install
stage: unit-tests
Expand All @@ -31,8 +54,17 @@
- terraform validate -var-file=cluster.tfvars contrib/terraform/$PROVIDER
- terraform fmt -check -diff contrib/terraform/$PROVIDER

.terraform_next_validate:
extends: .terraform_next_install
stage: unit-tests
tags: [light]
only: ['master', /^pr-.*$/]
script:
- terraform -chdir=contrib/terraform/$PROVIDER validate -var-file=cluster.tfvars
- terraform -chdir=contrib/terraform/$PROVIDER fmt -check -diff

.terraform_apply:
extends: .terraform_install
extends: .terraform_next_install
tags: [light]
stage: deploy-part3
when: manual
Expand All @@ -53,44 +85,44 @@
# Cleanup regardless of exit code
- chronic ./tests/scripts/testcases_cleanup.sh

tf-0.13.x-validate-openstack:
extends: .terraform_validate
tf-0.15.x-validate-openstack:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: openstack
CLUSTER: $CI_COMMIT_REF_NAME

tf-0.13.x-validate-packet:
extends: .terraform_validate
tf-0.15.x-validate-packet:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: packet
CLUSTER: $CI_COMMIT_REF_NAME

tf-0.13.x-validate-aws:
extends: .terraform_validate
tf-0.15.x-validate-aws:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: aws
CLUSTER: $CI_COMMIT_REF_NAME

tf-0.13.x-validate-exoscale:
extends: .terraform_validate
tf-0.15.x-validate-exoscale:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: exoscale

tf-0.13.x-validate-vsphere:
extends: .terraform_validate
tf-0.15.x-validate-vsphere:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: vsphere
CLUSTER: $CI_COMMIT_REF_NAME

tf-0.13.x-validate-upcloud:
extends: .terraform_validate
tf-0.15.x-validate-upcloud:
extends: .terraform_next_validate
variables:
TF_VERSION: $TERRAFORM_13_VERSION
TF_VERSION: $TERRAFORM_15_VERSION
PROVIDER: upcloud
CLUSTER: $CI_COMMIT_REF_NAME

Expand Down

0 comments on commit a9d5711

Please sign in to comment.