|
|
|
---
|
|
|
|
- name: Set up various work related stuff
|
|
|
|
hosts: localhost
|
|
|
|
vars:
|
|
|
|
uid: "{{ lookup('env','USER') }}"
|
|
|
|
gitops: git+ssh://git@gitops.sunet.se
|
|
|
|
github: git+ssh://git@github.com/SUNET
|
|
|
|
helm_version: 3.13.3
|
|
|
|
platform: git+ssh://git@platform.sunet.se:22022/Drive
|
|
|
|
commands:
|
|
|
|
- get_drive_customers
|
|
|
|
- get_drive_servers
|
|
|
|
opsrepos:
|
|
|
|
- sunet-drive-ops
|
|
|
|
- mail-ops
|
|
|
|
- platform-ops
|
|
|
|
puppetrepos:
|
|
|
|
- puppet-sunet
|
|
|
|
platformrepos:
|
|
|
|
- sunetdrive
|
|
|
|
dockerrepos:
|
|
|
|
- nextcloud-custom
|
|
|
|
- dovecot-lda-docker
|
|
|
|
- postfix-docker
|
|
|
|
connection: local
|
|
|
|
become: false
|
|
|
|
tasks:
|
|
|
|
- name: Create sunet config folder
|
|
|
|
ansible.builtin.file:
|
|
|
|
dest: /home/{{ uid }}/.config/sunet
|
|
|
|
state: directory
|
|
|
|
- name: Create sunet folders
|
|
|
|
ansible.builtin.file:
|
|
|
|
dest: /home/{{ uid }}/sunet/{{ item }}
|
|
|
|
state: directory
|
|
|
|
loop:
|
|
|
|
- docker
|
|
|
|
- ops
|
|
|
|
- puppet
|
|
|
|
- name: Get gitops ops-repos
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /home/{{ uid }}/sunet/ops
|
|
|
|
cmd: git clone {{ gitops }}/{{ item }}
|
|
|
|
creates: /home/{{ uid }}/sunet/ops/{{ item }}
|
|
|
|
loop: "{{ opsrepos }}"
|
|
|
|
- name: Get github puppet-repos
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /home/{{ uid }}/sunet/puppet
|
|
|
|
cmd: git clone {{ github }}/{{ item }}
|
|
|
|
creates: /home/{{ uid }}/sunet/puppet/{{ item }}
|
|
|
|
loop: "{{ puppetrepos }}"
|
|
|
|
- name: Get github docker-repos
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /home/{{ uid }}/sunet/docker
|
|
|
|
cmd: git clone {{ github }}/{{ item }}
|
|
|
|
creates: /home/{{ uid }}/sunet/docker/{{ item }}
|
|
|
|
loop: "{{ dockerrepos }}"
|
|
|
|
- name: Get platform puppet-repos
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /home/{{ uid }}/sunet/puppet
|
|
|
|
cmd: git clone {{ platform }}/{{ item }}
|
|
|
|
creates: /home/{{ uid }}/sunet/puppet/{{ item }}
|
|
|
|
loop: "{{ platformrepos }}"
|
|
|
|
- name: Install sunet programs
|
|
|
|
ansible.builtin.file:
|
|
|
|
src: /home/{{ uid }}/sunet/ops/sunet-drive-ops/{{item}}
|
|
|
|
dest: /home/{{ uid }}/.local/bin/{{ item }}
|
|
|
|
state: link
|
|
|
|
loop: "{{ commands }}"
|
|
|
|
- name: Add tsocks.conf
|
|
|
|
ansible.builtin.template:
|
|
|
|
src: ../templates/tsocks.conf.j2
|
|
|
|
dest: /etc/tsocks.conf
|
|
|
|
become: true
|
|
|
|
- name: Have helm allready installed
|
|
|
|
stat:
|
|
|
|
path: /usr/local/bin/helm
|
|
|
|
register: have_helm
|
|
|
|
- name: Get helm
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /tmp
|
|
|
|
cmd: wget https://get.helm.sh/helm-v{{ helm_version }}-linux-amd64.tar.gz
|
|
|
|
creates: /tmp/helm-v{{ helm_version }}-linux-amd64.tar.gz
|
|
|
|
when: not have_helm.stat.exists
|
|
|
|
- name: Unpack helm
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /tmp
|
|
|
|
cmd: tar xfv helm-v{{ helm_version }}-linux-amd64.tar.gz
|
|
|
|
creates: /tmp/linux-amd64/helm
|
|
|
|
when: not have_helm.stat.exists
|
|
|
|
- name: Install helm
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /tmp
|
|
|
|
cmd: mv /tmp/linux-amd64/helm /usr/local/bin
|
|
|
|
creates: /usr/local/bin/helm
|
|
|
|
become: true
|
|
|
|
when: not have_helm.stat.exists
|
|
|
|
- name: cleanup helm
|
|
|
|
ansible.builtin.command:
|
|
|
|
chdir: /tmp
|
|
|
|
cmd: rm -rf /tmp/helm-v{{ helm_version }}-linux-amd64.tar.gz /tmp/linux-amd64
|
|
|
|
when: not have_helm.stat.exists
|
|
|
|
|