summaryrefslogtreecommitdiffstats
path: root/packer/provision/local-builder.yaml
blob: 1b92859098211d2c28bf48e3aa128f708a4d4975 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
---
- 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 supporting packages (Ubuntu 18.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 == '18.04'

    - 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
          - python3-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'