summaryrefslogtreecommitdiffstats
path: root/packer/provision/local-docker.yaml
blob: 5a76dbc45a0e09d3c69657bf06f4607485c66ed4 (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
---
- import_playbook: ../common-packer/provision/docker.yaml

- hosts: all
  become_user: root
  become_method: sudo
  vars:
    apt_file: /etc/apt/sources.list.d/google-chrome.list
    docker_compose_version: 1.17.1
    glide_checksum: sha256:c403933503ea40308ecfadcff581ff0dc3190c57958808bb9eed016f13f6f32c
    glide_version: v0.13.1
    golang_checksum: sha256:07d81c6b6b4c2dcf1b5ef7c27aaebd3691cdb40548500941f92b221147c5d9c7
    golang_version: 1.9.1

  tasks:
    - name: 'Install Docker Compose {{docker_compose_version}}'
      command: curl -o /usr/local/bin/docker-compose -L "https://github.com/docker/compose/releases/download/{{docker_compose_version}}/docker-compose-Linux-x86_64"
      become: true

    - file:
        path: /usr/local/bin/docker-compose
        mode: "+x"
      become: true

    - name: 'Install GoLang {{golang_version}}'
      block:
        - name: 'Fetch golang {{golang_version}} to /tmp/go{{golang_version}}.linux-amd64.tar.gz'
          get_url:
            url: 'https://storage.googleapis.com/golang/go{{golang_version}}.linux-amd64.tar.gz'
            dest: '/tmp/go{{golang_version}}.linux-amd64.tar.gz'
            checksum: '{{golang_checksum}}'
        - name: 'Install golang {{golang_version}} to /usr/local'
          unarchive:
            src: '/tmp/go{{golang_version}}.linux-amd64.tar.gz'
            dest: /usr/local
            remote_src: true
          become: true
        - name: 'Add golang to PATH'
          command: 'echo "export PATH=$PATH:/usr/local/go/bin" >> /etc/profile'
          become: true

    - name: Install libxml2-utils
      apt:
        name: libxml2-utils
        state: present
      become: true

    - name: Install python-tox
      apt:
        name: python-tox
        state: present
      become: true

    - apt_repository:
        repo: ppa:jonathonf/python-3.6
        state: present
      become: true

    - name: Update and upgrade apt packages
      apt:
        upgrade: yes
        update_cache: yes
      become: true

    - name: Install Python 3.6 and packages
      apt:
        name:
          - python3.6
          - python3.6-dev
          - libssl-dev
          - libmysqlclient-dev
          - gcc
      become: true

    - name: Install base packages
      apt:
        name:
          - unzip
          - xz-utils
          - libxml-xpath-perl
          - wget
          - make
          - npm
          - sshuttle
          - netcat
          - libssl-dev
          - libffi-dev
      become: true

    - name: Install autorelease support packages
      apt:
        name:
          - firefox
          - xmlstarlet
          - xvfb
          - crudini
          - maven
          - python-ncclient
      become: true

    - name: Add Google Chrome key
      apt_key:
        url: https://dl-ssl.google.com/linux/linux_signing_key.pub
        state: present
      become: true

    - name: Add Google Chrome repo
      copy: content="deb http://dl.google.com/linux/chrome/deb/ stable main" dest={{apt_file}} owner=root group=root mode=644
      become: true

    - name: Update apt cache
      apt: update_cache=yes
      become: true

    - name: Install Google Chrome
      apt:
        name: google-chrome-stable
        state: present
      become: true