ci-management update for New Delhi release
[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.23.8
10     helm3_8_version: 3.8.2
11     chartmuseum_version: 0.15.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: true
20
21     - name: "Install Helm3.8 {{helm3_8_version}}"
22       block:
23         - name: "Create directory /tmp/helm3.8"
24           file:
25             path: /tmp/helm3.8
26             state: directory
27         - name: "Fetch tar.gz for Helm 3.8"
28           get_url:
29             url: "https://get.helm.sh/helm-v{{helm3_8_version}}-linux-amd64.tar.gz"
30             dest: /tmp/helm3.8
31         - name: "Unarchive Helm 3.8"
32           unarchive:
33             src: "/tmp/helm3.8/helm-v{{helm3_8_version}}-linux-amd64.tar.gz"
34             dest: /tmp/helm3.8
35             remote_src: true
36           become: true
37         - name: "Move Helm 3.8 bin to /usr/local/bin and set as executable"
38           command: "mv /tmp/helm3.8/linux-amd64/helm /usr/local/bin/helm3.8"
39           become: true
40         - name: "Check Helm 3.8"
41           command: "which helm3.8"
42         - name: "Check kubectl {{kubectl_version}}"
43           command: "which kubectl"
44
45         - name: "Install Helm 3.8"
46           shell: |
47             echo "----> Installing helm3.8"
48             wget 'https://get.helm.sh/helm-v{{helm3_8_version}}-linux-amd64.tar.gz'
49             tar -xvf 'https://get.helm.sh/helm-v{{helm3_8_version}}-linux-amd64.tar.gz'
50             mv linux-amd64/helm /usr/local/bin/helm3.8
51             which helm3.8
52           become: true
53
54     - name: "Install ChartMuseum {{chartmuseum_version}}"
55       block:
56         - name: "Create directory /tmp/chartmuseum"
57           file:
58             path: /tmp/chartmuseum
59             state: directory
60         - name: "Fetch tar.gz for chartmuseum"
61           get_url:
62             url: "https://get.helm.sh/chartmuseum-v{{chartmuseum_version}}-linux-amd64.tar.gz"
63             dest: /tmp/chartmuseum
64         - name: "Unarchive chartmuseum"
65           unarchive:
66             src: "/tmp/chartmuseum/chartmuseum-v{{chartmuseum_version}}-linux-amd64.tar.gz"
67             dest: /tmp/chartmuseum
68             remote_src: true
69           become: true
70         - name: "Move chartmuseum bin to /usr/local/bin and set as executable"
71           command: "mv /tmp/chartmuseum/linux-amd64/chartmuseum /usr/local/bin/chartmuseum"
72           become: true
73         - name: "Check ChartMuseum {{chartmuseum_version}}"
74           command: "which chartmuseum"