2ab517f7dffab5b71a69777f81575ace8fe0d44e
[ci-management.git] / packer / provision / helm.yaml
1 ---
2 - import_playbook: ../common-packer/provision/docker.yaml
3
4 - hosts: all
5   become_user: root
6   become_method: sudo
7
8   vars:
9     kubectl_version: 1.19.11
10     helm3_6_version: 3.6.3
11     chartmuseum_version: 0.12.0
12
13   tasks:
14     - name: 'Install kubectl {{kubectl_version}}'
15       get_url:
16         url: "https://storage.googleapis.com/kubernetes-release/release/v{{kubectl_version}}/bin/linux/amd64/kubectl"
17         dest: /usr/local/bin/kubectl
18         mode: 0775
19       become: yes
20
21     - name: 'Install Helm3.6 {{helm3_6_version}}'
22       block:
23         - name: 'Create directory /tmp/helm3.6'
24           file:
25             path: /tmp/helm3.6
26             state: directory
27         - name: 'Fetch tar.gz for Helm 3.6'
28           get_url:
29             url: "https://get.helm.sh/helm-v{{helm3_6_version}}-linux-amd64.tar.gz"
30             dest: /tmp/helm3.6
31         - name: 'Unarchive Helm 3.6'
32           unarchive:
33             src: "/tmp/helm3.6/helm-v{{helm3_6_version}}-linux-amd64.tar.gz"
34             dest: /tmp/helm3.6
35             remote_src: true
36           become: yes
37         - name: 'Move Helm 3.6 bin to /usr/local/bin and set as executable'
38           command: 'mv /tmp/helm3.6/linux-amd64/helm /usr/local/bin/helm3.6'
39           become: yes
40         - name: 'Check Helm 3.6'
41           command: 'which helm3.6'
42         - name: 'Check kubectl {{kubectl_version}}'
43           command: 'which kubectl'
44
45         - name: 'Install Helm 3.6'
46           shell: |
47              echo "----> Installing helm3.6"
48              wget 'https://get.helm.sh/helm-v{{helm3_6_version}}-linux-amd64.tar.gz'
49              tar -xvf 'https://get.helm.sh/helm-v{{helm3_6_version}}-linux-amd64.tar.gz'
50              mv linux-amd64/helm /usr/local/bin/helm3.6
51              which helm3.6
52           become: true
53
54     - name: 'Install ChartMuseum {{chartmuseum_version}}'
55       block:
56         - name: 'Fetch bin for ChartMuseum'
57           get_url:
58             url: "https://s3.amazonaws.com/chartmuseum/release/v{{ chartmuseum_version }}/bin/linux/amd64/chartmuseum"
59             dest: /usr/local/bin/chartmuseum
60             mode: "0755"
61           become: yes
62         - name: 'Check ChartMuseum {{chartmuseum_version}}'
63           command: 'which chartmuseum'