---
- import_playbook: ../common-packer/provision/baseline.yaml
+
+- hosts: all
+ become_user: root
+ become_method: sudo
+
+ tasks:
+ - apt_repository:
+ repo: ppa:deadsnakes/ppa
+ state: present
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Update and upgrade apt packages
+ apt:
+ upgrade: 'yes'
+ update_cache: yes
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install python-tox and deps
+ pip:
+ name:
+ - tox
+ - tox-pyenv
+ - virtualenv
+ - more-itertools~=5.0.0
+ - zipp==1.0.0
+ state: present
+ become: true
+
+ - name: Install Python 3.6 and packages
+ apt:
+ name:
+ - python3.6
+ - python3.6-dev
+ - python3.6-tk
+ - libssl-dev
+ - libmysqlclient-dev
+ - gcc
+ - python3-venv
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install Python 3.7
+ apt:
+ name:
+ - python3.7
+ - python3.7-dev
+ - python3.7-tk
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install Python 3.8
+ apt:
+ name:
+ - python3.8
+ - python3.8-dev
+ - python3.8-tk
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install Python 3.9
+ apt:
+ name:
+ - python3.9
+ - python3.9-dev
+ - python3.9-tk
+ - python3.9-distutils
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install libssl1.0-dev dep
+ apt:
+ name: libssl1.0-dev
+ update_cache: yes
+ state: fixed
+ become: true
+ when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '18.04'
+
+ - name: Install nodejs-dev dep for npm
+ apt:
+ name: nodejs-dev
+ update_cache: yes
+ state: fixed
+ become: true
+ when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '18.04'
+
+ - name: Install libnode-dev dep for npm
+ apt:
+ name: libnode-dev
+ update_cache: yes
+ state: fixed
+ become: true
+ when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04'
+
+ - name: Install base packages
+ apt:
+ name:
+ - unzip
+ - xz-utils
+ - libxml-xpath-perl
+ - wget
+ - make
+ - sshuttle
+ - netcat
+ - libssl-dev
+ - libffi-dev
+ - xmlstarlet
+ - xvfb
+ - crudini
+ - maven
+ - python-ncclient
+ - xmlstarlet
+ - xvfb
+ - crudini
+ - maven
+ - python-ncclient
+ update_cache: yes
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+ - name: Install npm and addon packages
+ apt:
+ name:
+ - nodejs
+ - npm
+ - node-gyp
+ update_cache: yes
+ state: fixed
+ become: true
+ when: ansible_distribution == 'Ubuntu'
+
+