Update local-builder
[ci-management.git] / packer / provision / local-builder.yaml
index ea8f6a3..5034ef2 100644 (file)
@@ -5,24 +5,30 @@
   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
+        upgrade: 'yes'
         update_cache: yes
       become: true
       when: ansible_distribution == 'Ubuntu'
 
-    - name: Install python-tox
+    - name: Install python-tox and deps
       pip:
-        name: tox
-        state: present
-      become: true
-
-    - apt_repository:
-        repo: ppa:jonathonf/python-3.6
+        name:
+          - tox
+          - tox-pyenv
+          - virtualenv
+          - more-itertools~=5.0.0
+          - zipp==1.0.0
         state: present
       become: true
-      when: ansible_distribution == 'Ubuntu'
 
     - name: Install Python 3.6 and packages
       apt:
           - 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 base packages
+    - 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 supporting packages (Ubuntu 18.04)
       apt:
         name:
           - unzip
           - libxml-xpath-perl
           - wget
           - make
-          - npm
           - sshuttle
           - netcat
           - libssl-dev
           - libffi-dev
+          - xmlstarlet
+          - xvfb
+          - crudini
+          - maven
+          - python-ncclient
+        update_cache: yes
+        state: fixed
       become: true
-      when: ansible_distribution == 'Ubuntu'
+      when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '18.04'
 
-    - name: Install autorelease support packages
+    - name: Install supporting packages (Ubuntu 20.04)
       apt:
         name:
+          - unzip
+          - xz-utils
+          - libxml-xpath-perl
+          - wget
+          - make
+          - sshuttle
+          - netcat
+          - libssl-dev
+          - libffi-dev
           - xmlstarlet
           - xvfb
           - crudini
           - maven
-          - python-ncclient
+        update_cache: yes
+        state: fixed
+      become: true
+      when: ansible_distribution == 'Ubuntu' and ansible_distribution_version == '20.04'
+
+    - name: Install npm and addon packages
+      apt:
+        name:
+          - nodejs
+          - npm
+          - node-gyp
+        update_cache: yes
+        state: fixed
       become: true
       when: ansible_distribution == 'Ubuntu'
+
+