imfreedom/teamcity-ansible

modularize every role based on os

2019-11-10, Gary Kramlich
33043da9fe57
Parents f3396abfb534
Children f8534c908d84
modularize every role based on os
--- a/roles/convey/tasks/main.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/convey/tasks/main.yml Sun Nov 10 04:54:57 2019 -0600
@@ -6,7 +6,6 @@
fail: msg="ERROR -required variable 'convey_sha256_checksum' missing."
when: convey_sha256_checksum is not defined
-# internal vars
- name: set internal var for convey_filename
set_fact:
convey_filename: "convey-{{convey_version}}-{{ansible_system|lower}}-amd64"
@@ -17,7 +16,6 @@
set_fact:
convey_install_dir: "/usr/local/bin"
-# download the jar
- name: "download {{convey_url}}"
get_url:
url: "{{convey_url}}"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/docker/tasks/darwin.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,6 @@
+---
+- name: install
+ homebrew_cask:
+ name: docker
+ state: present
+ when: ansible_system == "Darwin"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/docker/tasks/debian.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,28 @@
+---
+- name: install dependencies
+ apt:
+ name:
+ - apt-transport-https
+ - ca-certificates
+ state: present
+ force_apt_get: true
+
+- name: add apt-key
+ apt_key:
+ url: https://download.docker.com/linux/ubuntu/gpg
+ id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
+ state: present
+
+- name: add repository
+ apt_repository:
+ repo: "deb [arch=amd64] https://download.docker.com/linux/debian buster stable"
+ state: present
+ filename: "docker"
+ update_cache: true
+
+- name: install
+ apt:
+ name:
+ - docker-ce
+ state: present
+ force_apt_get: true
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/docker/tasks/freebsd.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,4 @@
+- name: install dependencies
+ pkgng:
+ name: docker
+ state: present
--- a/roles/docker/tasks/main.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/docker/tasks/main.yml Sun Nov 10 04:54:57 2019 -0600
@@ -1,39 +1,9 @@
---
-- name: install dependencies
- apt:
- name:
- - apt-transport-https
- - ca-certificates
- state: present
- force_apt_get: true
- when: ansible_facts['os_family'] == "Debian"
-
-- name: add apt-key
- apt_key:
- url: https://download.docker.com/linux/ubuntu/gpg
- id: 9DC858229FC7DD38854AE2D88D81803C0EBFCD88
- state: present
+- include_tasks: debian.yml
when: ansible_facts['os_family'] == "Debian"
-- name: add repository
- apt_repository:
- repo: "deb [arch=amd64] https://download.docker.com/linux/debian buster stable"
- state: present
- filename: "docker"
- update_cache: true
- when: ansible_facts['os_family'] == "Debian"
+- include_tasks: darwin.yml
+ when: ansible_system == "Darwin"
-- name: install (Debian)
- apt:
- name:
- - docker-ce
- state: present
- force_apt_get: true
- when: ansible_facts['os_family'] == "Debian"
-
-- name: install (Darwin)
- homebrew_cask:
- name: docker
- state: present
- when: ansible_facts['system'] == "Darwin"
-
+- include_tasks: freebsd.yml
+ when: ansible_system == "FreeBSD"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/git/tasks/debian.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,7 @@
+---
+- name: install
+ apt:
+ name:
+ - git
+ state: present
+ force_apt_get: true
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/git/tasks/freebsd.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,4 @@
+- name: install dependencies
+ pkgng:
+ name: git
+ state: present
--- a/roles/git/tasks/main.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/git/tasks/main.yml Sun Nov 10 04:54:57 2019 -0600
@@ -1,9 +1,5 @@
---
-- name: install (Debian)
- apt:
- name:
- - git
- state: present
- force_apt_get: true
+- include_tasks: debian.yml
when: ansible_facts['os_family'] == "Debian"
-
+- include_tasks: freebsd.yml
+ when: ansible_system == "FreeBSD"
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/mercurial/tasks/config.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,14 @@
+---
+- name: create system config directory
+ file:
+ path: /etc/mercurial
+ state: directory
+ mode: '0755'
+
+- name: turn evolve on
+ copy:
+ dest: /etc/mercurial/hgrc
+ content: |
+ [extensions]
+ evolve =
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/mercurial/tasks/debian.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,24 @@
+---
+- name: install dependencies
+ apt:
+ name:
+ - python
+ - libpython-dev
+ - python-pip
+ - python-setuptools
+ - gcc
+ state: present
+ force_apt_get: true
+
+- name: remove package
+ apt:
+ name:
+ - mercurial
+ - mercurial-common
+ state: absent
+ purge: yes
+ force: yes
+ force_apt_get: true
+
+- include_tasks: pip.yml
+- include_tasks: config.yml
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/mercurial/tasks/freebsd.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,6 @@
+---
+- name: install mercurial
+ pkgng:
+ name: mercurial
+ state: present
+
--- a/roles/mercurial/tasks/main.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/mercurial/tasks/main.yml Sun Nov 10 04:54:57 2019 -0600
@@ -1,52 +1,5 @@
---
-- name: install dependencies
- apt:
- name:
- - python
- - libpython-dev
- - python-pip
- - python-setuptools
- - gcc
- state: present
- force_apt_get: true
- when: ansible_facts['os_family'] == "Debian"
-
-- name: remove package
- apt:
- name:
- - mercurial
- - mercurial-common
- state: absent
- purge: yes
- force: yes
- force_apt_get: true
+- include_tasks: debian.yml
when: ansible_facts['os_family'] == "Debian"
-
-- name: install mercurial and evolve from pypi
- pip:
- name:
- - mercurial
- - hg-evolve
- when: ansible_facts['os_family'] == "Debian"
-
-- name: install mercurial (FreeBSD)
- pkgng:
- name: mercurial
- state: present
+- include_tasks: freebsd.yml
when: ansible_facts['os_family'] == "FreeBSD"
-
-- name: create system config directory
- file:
- path: /etc/mercurial
- state: directory
- mode: '0755'
- when: ansible_facts['os_family'] == "Debian"
-
-- name: turn evolve on
- copy:
- dest: /etc/mercurial/hgrc
- content: |
- [extensions]
- evolve =
- when: ansible_facts['os_family'] == "Debian"
-
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/mercurial/tasks/pip.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,6 @@
+---
+- name: install mercurial and evolve from pypi
+ pip:
+ name:
+ - mercurial
+ - hg-evolve
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/openjdk/tasks/debian.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,8 @@
+---
+- name: install
+ apt:
+ name:
+ - openjdk-11-jre-headless
+ state: present
+ force_apt_get: true
+
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/roles/openjdk/tasks/freebsd.yml Sun Nov 10 04:54:57 2019 -0600
@@ -0,0 +1,4 @@
+- name: install dependencies
+ pkgng:
+ name: openjdk11
+ state: present
--- a/roles/openjdk/tasks/main.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/openjdk/tasks/main.yml Sun Nov 10 04:54:57 2019 -0600
@@ -1,9 +1,5 @@
---
-- name: install (Debian)
- apt:
- name:
- - openjdk-11-jre-headless
- state: present
- force_apt_get: true
+- include_tasks: debian.yml
when: ansible_facts['os_family'] == "Debian"
-
+- include_tasks: freebsd.yml
+ when: ansible_system == "FreeBSD"
--- a/roles/teamcity/tasks/freebsd.yml Sun Nov 10 04:21:30 2019 -0600
+++ b/roles/teamcity/tasks/freebsd.yml Sun Nov 10 04:54:57 2019 -0600
@@ -1,7 +1,7 @@
---
- name: install dependencies
pkgng:
- name: unzip,openjdk11
+ name: unzip
state: present
- name: install init script