2 - import_playbook: ../common-packer/provision/docker.yaml
8 apt_file: /etc/apt/sources.list.d/google-chrome.list
9 docker_compose_version: 1.29.2
10 glide_checksum: sha256:c403933503ea40308ecfadcff581ff0dc3190c57958808bb9eed016f13f6f32c
11 glide_version: v0.13.1
16 - name: "Checking for x86_64"
19 golang_checksum: sha256:07d81c6b6b4c2dcf1b5ef7c27aaebd3691cdb40548500941f92b221147c5d9c7
20 when: "'x86_64' in ansible_architecture"
22 - name: "Checking for aarch64"
25 golang_checksum: sha256:d31ecae36efea5197af271ccce86ccc2baf10d2e04f20d0fb75556ecf0614dad
26 when: "'aarch64' in ansible_architecture"
28 - name: "Install Docker Compose {{docker_compose_version}}"
29 # yamllint disable-line rule:line-length
30 command: curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/{{docker_compose_version}}/docker-compose-Linux-x86_64"
34 path: /usr/local/bin/docker-compose
38 - name: "Install GoLang {{golang_version}}"
40 - name: "Fetch golang {{golang_version}} to /tmp/go{{golang_version}}.linux-{{host_arch}}.tar.gz"
42 url: "https://storage.googleapis.com/golang/go{{golang_version}}.linux-{{host_arch}}.tar.gz"
43 dest: "/tmp/go{{golang_version}}.linux-{{host_arch}}.tar.gz"
44 checksum: "{{golang_checksum}}"
45 - name: "Install golang {{golang_version}} to /usr/local"
47 src: "/tmp/go{{golang_version}}.linux-{{host_arch}}.tar.gz"
51 - name: Create symbolic link to go bin
53 src: "/usr/local/go/bin/go"
58 - name: Install libxml2-utils
63 when: ansible_distribution == 'Ubuntu'
66 repo: ppa:deadsnakes/ppa
69 when: ansible_distribution == 'Ubuntu'
71 - name: Update and upgrade apt packages
76 when: ansible_distribution == 'Ubuntu'
78 - name: Install Python 3.6 and packages
89 when: ansible_distribution == 'Ubuntu'
91 - name: Install Python 3.7
98 when: ansible_distribution == 'Ubuntu'
100 - name: Install Python 3.8
107 when: ansible_distribution == 'Ubuntu'
109 - name: Install Python 3.9
115 - python3.9-distutils
117 when: ansible_distribution == 'Ubuntu'
119 - name: Install supporting packages (Ubuntu 18.04)
139 when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '18.04'
141 - name: Install supporting packages (Ubuntu 20.04)
161 when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04'
163 - name: Install nodejs
165 - name: install nodejs prerequisites
168 - apt-transport-https
173 - name: add nodejs apt key
175 url: https://deb.nodesource.com/gpgkey/nodesource.gpg.key
178 - name: add nodejs repository
180 repo: deb https://deb.nodesource.com/node_19.x {{ ansible_distribution_release }} main
184 - name: install nodejs
190 when: ansible_distribution == 'Ubuntu'
192 - name: Check nodejs and npm versions
194 - name: "Check nodejs version"
195 command: node --version
196 - name: "Check npm version"
197 command: npm --version
198 when: ansible_distribution == 'Ubuntu'
200 - name: Install npm build tools
202 name: build-essential
206 when: ansible_distribution == 'Ubuntu'
208 - name: npm self-update
209 command: npm install npm@{{ npm_version }} -g
211 when: ansible_distribution == 'Ubuntu'
213 - name: npm install n module
214 command: npm install n -g
216 when: ansible_distribution == 'Ubuntu'
218 - name: Upgrade latest stable node version
219 command: n stable | PATH="$PATH"
221 when: ansible_distribution == 'Ubuntu'
223 - name: Add Google Chrome key
225 url: https://dl-ssl.google.com/linux/linux_signing_key.pub
228 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
230 - name: Add Google Chrome repo
231 # yamllint disable-line rule:line-length
232 copy: content="deb http://dl.google.com/linux/chrome/deb/ stable main" dest={{apt_file}} owner=root group=root mode=644
234 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
236 - name: Update apt cache
237 apt: update_cache=yes
239 when: ansible_distribution == 'Ubuntu'
241 - name: Install Google Chrome
243 name: google-chrome-stable
246 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
248 - name: Install Erlang dependency packages
254 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
256 - name: Install Erlang dependency package libwxgtk3 for 18.04
261 # yamllint disable-line rule:line-length
262 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu' and ansible_distribution_version == '18.04'
264 - name: Install Erlang dependency package libwxgtk3 for 20.04
267 - libwxgtk3.0-gtk3-0v5
269 # yamllint disable-line rule:line-length
270 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04'
272 - name: Download and install libssl Ubuntu 20.04
274 deb: http://security.ubuntu.com/ubuntu/pool/main/o/openssl1.0/libssl1.0.0_1.0.2n-1ubuntu5.11_amd64.deb
276 # yamllint disable-line rule:line-length
277 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04'
279 - name: Install Erlang
281 deb: https://packages.erlang-solutions.com/erlang/debian/pool/esl-erlang_24.1-1~ubuntu~trusty_amd64.deb
283 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
285 - name: "Download latest rebar3 bin"
286 command: curl -o /usr/bin/rebar3 -L "https://s3.amazonaws.com/rebar3/rebar3"
288 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
291 path: /usr/bin/rebar3
294 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
296 - name: Download geckodriver
298 src: https://github.com/mozilla/geckodriver/releases/download/v0.18.0/geckodriver-v0.18.0-linux64.tar.gz
303 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
305 - name: Download Firefox version 55.0.3
307 # yamllint disable-line rule:line-length
308 src: https://download-installer.cdn.mozilla.net/pub/firefox/releases/55.0.3/linux-x86_64/en-US/firefox-55.0.3.tar.bz2
313 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
315 - name: Create symbolic link to firefox bin
317 src: "/opt/firefox/firefox"
318 dest: "/usr/bin/firefox"
321 when: ansible_architecture == 'x86_64' and ansible_distribution == 'Ubuntu'
323 - name: Install jinja2
328 when: ansible_architecture == 'x86_64'