Created
October 13, 2014 16:43
-
-
Save hleitzell/eba4c03b30f9105abeb0 to your computer and use it in GitHub Desktop.
DebOps on Raspbian
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
$ for i in *; do pushd $i; git --no-pager diff; popd ; done | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.ansible /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.apt /usr/local/share/debops/debops-playbooks/playbooks/roles | |
diff --git a/tasks/apt.yml b/tasks/apt.yml | |
index 6669ddb..660f4f7 100644 | |
--- a/tasks/apt.yml | |
+++ b/tasks/apt.yml | |
@@ -3,16 +3,16 @@ | |
- name: Divert original /etc/apt/sources.list | |
command: dpkg-divert --quiet --local --divert /etc/apt/sources.list.dpkg-divert --rename /etc/apt/sources.list | |
creates=/etc/apt/sources.list.dpkg-divert | |
- when: ansible_distribution == 'Debian' | |
+ when: apt_codename == 'Debian' | |
- name: Configure APT and package sources | |
template: src={{ item }}.j2 dest=/{{ item }} owner=root group=root mode=0644 | |
with_items: | |
- 'etc/apt/sources.list' | |
- - 'etc/apt/sources.list.d/00_ansible_{{ ansible_distribution | lower }}_sources.list' | |
+ - 'etc/apt/sources.list.d/00_ansible_{{ apt_codename | lower }}_sources.list' | |
- 'etc/apt/apt.conf.d/20no-recommends' | |
- 'etc/apt/apt.conf.d/70aptitude' | |
- when: ansible_distribution == 'Debian' | |
+ when: apt_codename == 'Debian' | |
- name: Update package lists | |
apt: update_cache=yes | |
diff --git a/templates/etc/apt/sources.list.d/00_ansible_debian_sources.list.j2 b/templates/etc/apt/sources.list.d/00_ansible_debian_sources.list.j2 | |
index 25ae6c6..3e21b25 100644 | |
--- a/templates/etc/apt/sources.list.d/00_ansible_debian_sources.list.j2 | |
+++ b/templates/etc/apt/sources.list.d/00_ansible_debian_sources.list.j2 | |
@@ -1,6 +1,6 @@ | |
# This file is managed by Ansible, all changes will be lost | |
-{% if ansible_distribution == 'Debian' %} | |
+{% if apt_codename == 'Debian' %} | |
# APT sources for {{ ansible_lsb['description'] }} | |
deb http://{{ apt_debian_http_mirror }}/debian {{ apt_codename }} main contrib non-free | |
deb http://security.debian.org/ {{ apt_codename }}/updates main contrib non-free | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.apt_preferences /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.auth /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.backporter /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.boxbackup /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.console /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.debops /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.debug /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.dhcpd /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.directories /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.dnsmasq /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.elasticsearch /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.encfs /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.etc_services /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.etherpad /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.ferm /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.gitlab /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.gitlab_ci /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.gitlab_ci_runner /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.gitusers /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.golang /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.ifupdown /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.java /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.kvm /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.lxc /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.mailman /usr/local/share/debops/debops-playbooks/playbooks/roles | |
diff --git a/tasks/fcgiwrap-mailman.yml b/tasks/fcgiwrap-mailman.yml | |
index 4d3de2d..dd426c7 100644 | |
--- a/tasks/fcgiwrap-mailman.yml | |
+++ b/tasks/fcgiwrap-mailman.yml | |
@@ -22,13 +22,13 @@ | |
command: insserv fcgiwrap-mailman | |
when: mailman_register_init_script is defined and | |
mailman_register_init_script.changed and | |
- ansible_distribution == 'Debian' | |
+ apt_codename == 'Debian' | |
- name: Install fcgiwrap-mailman init script in sysvinit (Ubuntu) | |
command: update-rc.d fcgiwrap-mailman defaults | |
when: mailman_register_init_script is defined and | |
mailman_register_init_script.changed and | |
- ansible_distribution == 'Ubuntu' | |
+ apt_codename == 'Ubuntu' | |
- name: Start fcgiwrap-mailman if not started | |
service: name=fcgiwrap-mailman state=started | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.monit /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.monkeysphere /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.mysql /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.nat /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.nfs /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.nginx /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.nodejs /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.ntp /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.openvz /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.owncloud /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.php5 /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.phpipam /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.phpmyadmin /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.pki /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.postfix /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.postgresql /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.rails_deploy /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.redis /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.reprepro /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.rsyslog /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.ruby /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.safekeep /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.samba /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.secret /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.sftpusers /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.sks /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.smstools /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.sshd /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.sshkeys /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.tcpwrappers /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles/debops.users /usr/local/share/debops/debops-playbooks/playbooks/roles | |
/usr/local/share/debops/debops-playbooks/playbooks/roles | |
$ ansible-playbook -i ansible/inventory bootstrap/debops-playbooks/playbooks/bootstrap.yml | |
PLAY [Bootstrap host for Ansible management] ********************************** | |
TASK: [Install minimal Python support for Ansible] **************************** | |
ok: [killjoy] | |
TASK: [Gather host facts] ***************************************************** | |
ok: [killjoy] | |
TASK: [Make sure essential software is installed] ***************************** | |
changed: [killjoy] => (item=python,python-apt,sudo,lsb-release) | |
TASK: [Create admin system group] ********************************************* | |
changed: [killjoy] | |
TASK: [Create administrator account] ****************************************** | |
changed: [killjoy] | |
TASK: [Install ssh public key from current account] *************************** | |
changed: [killjoy] | |
TASK: [Configure admin group access in sudo] ********************************** | |
changed: [killjoy] | |
PLAY RECAP ******************************************************************** | |
Make sure essential software is installed ------------------------------ 32.69s | |
Install minimal Python support for Ansible ----------------------------- 24.43s | |
Gather host facts ------------------------------------------------------- 8.78s | |
Create administrator account -------------------------------------------- 2.26s | |
Create admin system group ----------------------------------------------- 2.09s | |
Install ssh public key from current account ----------------------------- 1.66s | |
Configure admin group access in sudo ------------------------------------ 1.65s | |
killjoy : ok=7 changed=5 unreachable=0 failed=0 | |
$ debops-task all -m setup | |
killjoy | success >> { | |
"ansible_facts": { | |
"ansible_all_ipv4_addresses": [ | |
"192.168.15.50" | |
], | |
"ansible_all_ipv6_addresses": [ | |
"fe80::ba27:ebff:fef9:77a8" | |
], | |
"ansible_architecture": "armv6l", | |
"ansible_bios_date": "NA", | |
"ansible_bios_version": "NA", | |
"ansible_cmdline": { | |
"bcm2708.boardrev": "0xe", | |
"bcm2708.serial": "0x43f977a8", | |
"bcm2708_fb.fbheight": "984", | |
"bcm2708_fb.fbwidth": "1824", | |
"console": "tty1", | |
"dma.dmachans": "0x7f35", | |
"dwc_otg.lpm_enable": "0", | |
"elevator": "deadline", | |
"kgdboc": "ttyAMA0,115200", | |
"root": "/dev/mmcblk0p2", | |
"rootfstype": "f2fs", | |
"rootwait": true, | |
"sdhci-bcm2708.emmc_clock_freq": "250000000", | |
"smsc95xx.macaddr": "B8:27:EB:F9:77:A8", | |
"vc_mem.mem_base": "0x1ec00000", | |
"vc_mem.mem_size": "0x20000000" | |
}, | |
"ansible_date_time": { | |
"date": "2014-10-12", | |
"day": "12", | |
"epoch": "1413157656", | |
"hour": "23", | |
"iso8601": "2014-10-12T23:47:36Z", | |
"iso8601_micro": "2014-10-12T23:47:36.314958Z", | |
"minute": "47", | |
"month": "10", | |
"second": "36", | |
"time": "23:47:36", | |
"tz": "UTC", | |
"tz_offset": "+0000", | |
"weekday": "Sunday", | |
"year": "2014" | |
}, | |
"ansible_default_ipv4": { | |
"address": "192.168.15.50", | |
"alias": "eth0", | |
"gateway": "192.168.15.1", | |
"interface": "eth0", | |
"macaddress": "b8:27:eb:f9:77:a8", | |
"mtu": 1500, | |
"netmask": "255.255.255.0", | |
"network": "192.168.15.0", | |
"type": "ether" | |
}, | |
"ansible_default_ipv6": {}, | |
"ansible_devices": { | |
"mmcblk0": { | |
"holders": [], | |
"host": "", | |
"model": null, | |
"partitions": {}, | |
"removable": "0", | |
"rotational": "0", | |
"scheduler_mode": "deadline", | |
"sectors": "15523840", | |
"sectorsize": "512", | |
"size": "7.40 GB", | |
"support_discard": "0", | |
"vendor": null | |
} | |
}, | |
"ansible_distribution": "Debian", | |
"ansible_distribution_major_version": "jessie/sid", | |
"ansible_distribution_release": "jessie/sid", | |
"ansible_distribution_version": "jessie/sid", | |
"ansible_domain": "sysjitter.org", | |
"ansible_env": { | |
"HOME": "/home/harry.leitzell", | |
"LANG": "C", | |
"LC_CTYPE": "C", | |
"LOGNAME": "harry.leitzell", | |
"MAIL": "/var/mail/harry.leitzell", | |
"PATH": "/usr/local/bin:/usr/bin:/bin:/usr/games", | |
"PWD": "/home/harry.leitzell", | |
"SHELL": "/bin/sh", | |
"SSH_CLIENT": "192.168.15.101 57967 22", | |
"SSH_CONNECTION": "192.168.15.101 57967 192.168.15.50 22", | |
"SSH_TTY": "/dev/pts/1", | |
"TERM": "xterm-256color", | |
"USER": "harry.leitzell" | |
}, | |
"ansible_eth0": { | |
"active": true, | |
"device": "eth0", | |
"ipv4": { | |
"address": "192.168.15.50", | |
"netmask": "255.255.255.0", | |
"network": "192.168.15.0" | |
}, | |
"ipv6": [ | |
{ | |
"address": "fe80::ba27:ebff:fef9:77a8", | |
"prefix": "64", | |
"scope": "link" | |
} | |
], | |
"macaddress": "b8:27:eb:f9:77:a8", | |
"module": "smsc95xx", | |
"mtu": 1500, | |
"promisc": false, | |
"type": "ether" | |
}, | |
"ansible_form_factor": "NA", | |
"ansible_fqdn": "killjoy.sysjitter.org", | |
"ansible_hostname": "killjoy", | |
"ansible_interfaces": [ | |
"lo", | |
"eth0" | |
], | |
"ansible_kernel": "3.12-1-rpi", | |
"ansible_lo": { | |
"active": true, | |
"device": "lo", | |
"ipv4": { | |
"address": "127.0.0.1", | |
"netmask": "255.0.0.0", | |
"network": "127.0.0.0" | |
}, | |
"ipv6": [ | |
{ | |
"address": "::1", | |
"prefix": "128", | |
"scope": "host" | |
} | |
], | |
"mtu": 65536, | |
"promisc": false, | |
"type": "loopback" | |
}, | |
"ansible_lsb": { | |
"codename": "jessie", | |
"description": "Raspbian GNU/Linux testing (jessie)", | |
"id": "Raspbian", | |
"major_release": "testing", | |
"release": "testing" | |
}, | |
"ansible_machine": "armv6l", | |
"ansible_memfree_mb": 32, | |
"ansible_memtotal_mb": 437, | |
"ansible_mounts": [ | |
{ | |
"device": "/dev/mmcblk0p2", | |
"fstype": "f2fs", | |
"mount": "/", | |
"options": "rw,noatime,background_gc=on,user_xattr,acl,active_logs=6", | |
"size_available": 5604073472, | |
"size_total": 7897874432 | |
}, | |
{ | |
"device": "/dev/mmcblk0p1", | |
"fstype": "vfat", | |
"mount": "/boot", | |
"options": "rw,relatime,fmask=0022,dmask=0022,codepage=437,iocharset=utf8,shortname=mixed,errors=remount-ro", | |
"size_available": 12974080, | |
"size_total": 49911808 | |
} | |
], | |
"ansible_nodename": "killjoy", | |
"ansible_os_family": "Debian", | |
"ansible_pkg_mgr": "apt", | |
"ansible_processor": [ | |
"ARMv6-compatible processor rev 7 (v6l)" | |
], | |
"ansible_processor_cores": 1, | |
"ansible_processor_count": 1, | |
"ansible_processor_threads_per_core": 1, | |
"ansible_processor_vcpus": 1, | |
"ansible_product_name": "NA", | |
"ansible_product_serial": "NA", | |
"ansible_product_uuid": "NA", | |
"ansible_product_version": "NA", | |
"ansible_python_version": "2.7.8", | |
"ansible_selinux": false, | |
"ansible_ssh_host_key_dsa_public": "AAAAB3NzaC1kc3MAAACBAL0hjcOl1mUmhwPvaSvOs/Pa8Q3dvL5v88Bkf3DPmUEfbANJr2IvekBRmGBsNA0bPHuPg8qL/NNSucO4qqJU0FtdU3qnvJ8H9KBDh1Tph8ZqFR98j22/KRnNWR7kWiKKSMPFIhPVjOB6wcXMgYXvbUK3wCvEbmoiTFV/cnXwXPVTAAAAFQDkcuuYWq31nzQpo/xYWSoyqQYz/wAAAIAcl9QywSPfip75bW2+1rW6aRoXHyCKc6c3IMyn5fTa1Yo+PnZ+R7AVT4RV5n7+oxQpurtt4uPMwDYeyhiXcmvwAWRnDYM3Za5PX01EU1d5r8SmgNPhJRmXIa+cPF4fGZkmS/5y9/2xugedYwA9GBYIdM7ezOx0xS8QyOZSpctdTQAAAIBvtcVsJqLu/AChju+ZrSlyTf7X2nR6iHbhP9gS3p56wd1rqncjUApgxJnnOSpVSNtf3TaqsQbYxMpUNw45XtSVL2sDToTaF0IWyg2lBQShjcKKBfcBq1zHJgqyD8ZjxfXUrb2uqoX6cYUh5ymYogdOvNPJ/HXvIVoCBM4G5nhHlw==", | |
"ansible_ssh_host_key_ecdsa_public": "AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBCmqlz5ncaEj28DY8aluy7TSo3Zao2pPkQewAFix6gpkrkvCQg1ufSooxoNUmtcZMRqXaAh+qbuzWEyYrodTZpE=", | |
"ansible_ssh_host_key_rsa_public": "AAAAB3NzaC1yc2EAAAADAQABAAABAQDiWIWAbo4FSBAlEIZioayMvoht0ZH+uSJHV+glzLT/DU0oGgJMh7LBzJDZRK3B4kHpBV/1eXYudNfLnM3okvUd7Ec+2A7CgnS6jpVW8CrGZ9g4SPxDxlQcNuDhHnKzbp61mvDHuQ5fWkKIjmF0ENHR05lxjINorMCmZmFIj0Ue+lIooozTY0tt9Ykr9xu/96PSWwAAPqj2OKDTPtYJjIyp+q+QuS4ZrxBFcn/voErSK3DngX9gGAPKZYxTor9DICe+01ZBF8VF5KTPnjGJA1WkSIpeThbcU0Ns9l/IU0wFItMXVf2ghVn0wFbRUfTtXwVuMz+OjvkqJXg2nGQNOKZf", | |
"ansible_swapfree_mb": 0, | |
"ansible_swaptotal_mb": 0, | |
"ansible_system": "Linux", | |
"ansible_system_vendor": "NA", | |
"ansible_user_id": "harry.leitzell", | |
"ansible_userspace_bits": "32", | |
"ansible_virtualization_role": "NA", | |
"ansible_virtualization_type": "NA", | |
"module_setup": true | |
}, | |
"changed": false | |
} | |
$ debops | |
Running Ansible playbook from: | |
/usr/local/share/debops/debops-playbooks/playbooks/site.yml ... | |
PLAY [Gather default and custom facts] **************************************** | |
GATHERING FACTS *************************************************************** | |
ok: [killjoy] | |
TASK: [Check IP address of Ansible Controller] ******************************** | |
ok: [killjoy] | |
TASK: [Update APT cache early if older than 24h] ****************************** | |
skipping: [killjoy] | |
PLAY [Common configuration for all hosts] ************************************* | |
GATHERING FACTS *************************************************************** | |
ok: [killjoy] | |
TASK: [debops.apt_preferences | Remove APT preferences] *********************** | |
skipping: [killjoy] | |
TASK: [debops.apt_preferences | Create APT preferences] *********************** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Make sure /etc/services.d directory exists] ****** | |
changed: [killjoy] | |
TASK: [debops.etc_services | Create /etc/services.d/00_ansible] *************** | |
changed: [killjoy] | |
TASK: [debops.etc_services | Divert original /etc/services] ******************* | |
changed: [killjoy] | |
TASK: [debops.etc_services | Generate list of local services if requested] **** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Assemble /etc/services.d] ************************ | |
changed: [killjoy] | |
TASK: [debops.etc_services | Move current /etc/services out of the way before reversion] *** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Remove diversion of /etc/services] *************** | |
skipping: [killjoy] | |
TASK: [debops.auth | Install auth-related packages] *************************** | |
ok: [killjoy] => (item=sudo) | |
TASK: [debops.auth | Ensure common system groups exist] *********************** | |
ok: [killjoy] => (item=admins) | |
changed: [killjoy] => (item=sshusers) | |
changed: [killjoy] => (item=sftponly) | |
changed: [killjoy] => (item=webadmins) | |
TASK: [debops.auth | Create administrator accounts] *************************** | |
ok: [killjoy] => (item=harry.leitzell) | |
TASK: [debops.auth | Ensure members of group 'admins' can su without password] *** | |
changed: [killjoy] | |
TASK: [debops.auth | Ensure members of group 'admins' can sudo without password] *** | |
changed: [killjoy] | |
TASK: [debops.pki | Ensure OpenSSL support is installed] ********************** | |
changed: [killjoy] => (item=openssl,openssl-blacklist,ca-certificates,ssl-cert) | |
TASK: [debops.pki | Manage certificate directory structure] ******************* | |
changed: [killjoy] => (item=host/selfsigned) | |
changed: [killjoy] => (item=host/signed) | |
changed: [killjoy] => (item=host/req) | |
changed: [killjoy] => (item=host/csr) | |
changed: [killjoy] => (item=host/crl) | |
changed: [killjoy] => (item=ca/certs) | |
changed: [killjoy] => (item=ca/crl) | |
changed: [killjoy] => (item=wildcard/certs) | |
changed: [killjoy] => (item=wildcard/crl) | |
TASK: [debops.pki | Manage private directory structure] *********************** | |
changed: [killjoy] => (item=host/private) | |
changed: [killjoy] => (item=wildcard/private) | |
TASK: [debops.pki | Create local directory structure on Ansible controller] *** | |
changed: [killjoy -> 127.0.0.1] => (item=ca/certs) | |
changed: [killjoy -> 127.0.0.1] => (item=ca/crl) | |
changed: [killjoy -> 127.0.0.1] => (item=wildcard/certs) | |
changed: [killjoy -> 127.0.0.1] => (item=wildcard/crl) | |
changed: [killjoy -> 127.0.0.1] => (item=wildcard/private) | |
TASK: [debops.pki | Configure certificate request template] ******************* | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Generate certificate keys] ******************************** | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Set correct permissions for certificate keys] ************* | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Create certificate requests] ****************************** | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Create self-signed certificates] ************************** | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Upload certificate requests] ****************************** | |
changed: [killjoy] => (item={'cn': u'killjoy.sysjitter.org'}) | |
skipping: [killjoy] => (item={# pki_host_certificates #}) | |
TASK: [debops.pki | Download CA certificates] ********************************* | |
ok: [killjoy] => (item=certs) | |
ok: [killjoy] => (item=crl) | |
TASK: [debops.pki | Download Wildcard certificates] *************************** | |
ok: [killjoy] => (item=certs) | |
ok: [killjoy] => (item=crl) | |
TASK: [debops.pki | Download Wildcard private keys] *************************** | |
ok: [killjoy] | |
TASK: [debops.pki | Create local certificate directory on Ansible controller] *** | |
changed: [killjoy -> 127.0.0.1] => (item=signed) | |
changed: [killjoy -> 127.0.0.1] => (item=crl) | |
TASK: [debops.pki | Download host certificates] ******************************* | |
ok: [killjoy] => (item=signed) | |
ok: [killjoy] => (item=crl) | |
TASK: [debops.pki | Get list of available CA certificates] ******************** | |
ok: [killjoy] | |
TASK: [debops.pki | Symlink available CA certificates to /usr/local] ********** | |
skipping: [killjoy] | |
TASK: [debops.pki | Update CA certificates database] ************************** | |
skipping: [killjoy] | |
TASK: [debops.apt_preferences | Remove APT preferences] *********************** | |
ok: [killjoy] => (item={'reason': 'Better support for git submodules - http://stackoverflow.com/a/7593496', 'by_role': 'debops.apt', 'backports': ['wheezy'], 'package': 'git git-*'}) | |
TASK: [debops.apt_preferences | Create APT preferences] *********************** | |
skipping: [killjoy] => (item={'reason': 'Better support for git submodules - http://stackoverflow.com/a/7593496', 'by_role': 'debops.apt', 'backports': ['wheezy'], 'package': 'git git-*'}) | |
TASK: [debops.etc_services | Make sure /etc/services.d directory exists] ****** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Create /etc/services.d/00_ansible] *************** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Divert original /etc/services] ******************* | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Generate list of local services if requested] **** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Assemble /etc/services.d] ************************ | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Move current /etc/services out of the way before reversion] *** | |
skipping: [killjoy] | |
TASK: [debops.etc_services | Remove diversion of /etc/services] *************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Configure ferm status in debconf] ************************ | |
skipping: [killjoy] | |
TASK: [debops.ferm | Ensure ferm is installed] ******************************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Create configuration directories] ************************ | |
skipping: [killjoy] => (item=/etc/ferm/ferm.d) | |
skipping: [killjoy] => (item=/etc/ferm/filter-input.d) | |
TASK: [debops.ferm | Apply firewall configuration] **************************** | |
skipping: [killjoy] => (item=etc/default/ferm) | |
skipping: [killjoy] => (item=etc/ferm/ferm.conf) | |
TASK: [debops.ferm | Allow SSH access from Ansible Controller] **************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Remove iptables INPUT rules if requested] **************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Configure iptables INPUT rules] ************************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Apply iptables rules if ferm is enabled] ***************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Clear iptables rules if ferm is disabled] **************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Ensure that Ansible local facts directory exists] ******** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Save ferm local facts] *********************************** | |
skipping: [killjoy] | |
TASK: [debops.apt_preferences | Remove APT preferences] *********************** | |
skipping: [killjoy] => (item={'reason': 'Support for SPDY, OCSP stapling', 'by_role': 'debops.nginx', 'backports': ['wheezy'], 'package': 'nginx nginx-*'}) | |
TASK: [debops.apt_preferences | Create APT preferences] *********************** | |
skipping: [killjoy] => (item={'reason': 'Support for SPDY, OCSP stapling', 'by_role': 'debops.nginx', 'backports': ['wheezy'], 'package': 'nginx nginx-*'}) | |
TASK: [debops.ferm | Configure ferm status in debconf] ************************ | |
skipping: [killjoy] | |
TASK: [debops.ferm | Ensure ferm is installed] ******************************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Create configuration directories] ************************ | |
skipping: [killjoy] => (item=/etc/ferm/ferm.d) | |
skipping: [killjoy] => (item=/etc/ferm/filter-input.d) | |
TASK: [debops.ferm | Apply firewall configuration] **************************** | |
skipping: [killjoy] => (item=etc/default/ferm) | |
skipping: [killjoy] => (item=etc/ferm/ferm.conf) | |
TASK: [debops.ferm | Allow SSH access from Ansible Controller] **************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Remove iptables INPUT rules if requested] **************** | |
skipping: [killjoy] => (item={'accept_any': True, 'weight': '20', 'saddr': [], 'dport': ['http', 'https'], 'type': 'dport_accept', 'filename': 'nginx_dependency_accept'}) | |
TASK: [debops.ferm | Configure iptables INPUT rules] ************************** | |
skipping: [killjoy] => (item={'accept_any': True, 'weight': '20', 'saddr': [], 'dport': ['http', 'https'], 'type': 'dport_accept', 'filename': 'nginx_dependency_accept'}) | |
TASK: [debops.ferm | Apply iptables rules if ferm is enabled] ***************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Clear iptables rules if ferm is disabled] **************** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Ensure that Ansible local facts directory exists] ******** | |
skipping: [killjoy] | |
TASK: [debops.ferm | Save ferm local facts] *********************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Check if nginx is installed] **************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Install nginx packages] ********************************* | |
skipping: [killjoy] | |
TASK: [debops.nginx | Check nginx version] ************************************ | |
skipping: [killjoy] | |
TASK: [debops.nginx | Get list of nameservers configured in /etc/resolv.conf] *** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Convert list of nameservers to Ansible list] ************ | |
skipping: [killjoy] | |
TASK: [debops.nginx | Create default nginx directories] *********************** | |
skipping: [killjoy] => (item=/etc/nginx/site-default.d) | |
skipping: [killjoy] => (item=/srv/www/sites/default/public) | |
TASK: [debops.nginx | Ensure that webadmins privileged group exists] ********** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Create directory for webadmins configuration] *********** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Allow webadmins to reload nginx using sudo] ************* | |
skipping: [killjoy] | |
TASK: [debops.nginx | Divert original /etc/nginx/nginx.conf] ****************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Setup /etc/nginx/nginx.conf] **************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Remove remnants of dpkg-diverted configuration] ********* | |
skipping: [killjoy] | |
TASK: [debops.nginx | Install DH params regeneration script] ****************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Generate nginx DH params] ******************************* | |
skipping: [killjoy] | |
TASK: [debops.nginx | Setup DH params regeneration] *************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Disable default nginx site] ***************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Check if nginx should enable SSL support] *************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Enable SSL if host SSL key is present] ****************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Manage local server definitions - create symlinks] ****** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Manage local server definitions - remove symlinks] ****** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Make sure configuration directory exists] *************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Remove nginx maps if requested] ************************* | |
skipping: [killjoy] | |
TASK: [debops.nginx | Configure nginx maps] *********************************** | |
skipping: [killjoy] | |
TASK: [debops.nginx | Remove nginx upstreams if requested] ******************** | |
skipping: [killjoy] => (item={'enabled': True, 'type': 'php5', 'name': 'php5_www-data', 'php5': 'www-data'}) | |
TASK: [debops.nginx | Configure nginx upstreams] ****************************** | |
skipping: [killjoy] => (item={'enabled': True, 'type': 'php5', 'name': 'php5_www-data', 'php5': 'www-data'}) | |
TASK: [debops.nginx | Create global webroot directories if allowed] *********** | |
skipping: [killjoy] => (item={'ssl': False, 'name': ['default', u'killjoy.sysjitter.org', u'killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'enabled': True, 'by_role': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
skipping: [killjoy] => (item={'ssl': False, 'name': [u'destroy.killjoy.sysjitter.org', u'destroy.killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'root': u'/srv/www/sites/destroy.default/public', 'enabled': True, 'byrole': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
TASK: [debops.nginx | Remove nginx server configuration if requested] ********* | |
skipping: [killjoy] => (item={'ssl': False, 'name': ['default', u'killjoy.sysjitter.org', u'killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'enabled': True, 'by_role': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
skipping: [killjoy] => (item={'ssl': False, 'name': [u'destroy.killjoy.sysjitter.org', u'destroy.killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'root': u'/srv/www/sites/destroy.default/public', 'enabled': True, 'byrole': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
TASK: [debops.nginx | Generate nginx server configuration] ******************** | |
skipping: [killjoy] => (item={'ssl': False, 'name': ['default', u'killjoy.sysjitter.org', u'killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'enabled': True, 'by_role': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
skipping: [killjoy] => (item={'ssl': False, 'name': [u'destroy.killjoy.sysjitter.org', u'destroy.killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'root': u'/srv/www/sites/destroy.default/public', 'enabled': True, 'byrole': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
TASK: [debops.nginx | Disable nginx server configuration] ********************* | |
skipping: [killjoy] => (item={'ssl': False, 'name': ['default', u'killjoy.sysjitter.org', u'killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'enabled': True, 'by_role': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
skipping: [killjoy] => (item={'ssl': False, 'name': [u'destroy.killjoy.sysjitter.org', u'destroy.killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'root': u'/srv/www/sites/destroy.default/public', 'enabled': True, 'byrole': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
TASK: [debops.nginx | Enable nginx server configuration] ********************** | |
skipping: [killjoy] => (item={'ssl': False, 'name': ['default', u'killjoy.sysjitter.org', u'killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'enabled': True, 'by_role': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
skipping: [killjoy] => (item={'ssl': False, 'name': [u'destroy.killjoy.sysjitter.org', u'destroy.killjoy'], 'location': {'/': 'try_files $uri $uri/ =404;\nautoindex on;\n', '/d-i': 'try_files $uri $uri/ =404;\nautoindex on;\n'}, 'root': u'/srv/www/sites/destroy.default/public', 'enabled': True, 'byrole': 'debops.apt', 'location_allow': {'/': [], '/d-i': []}}) | |
TASK: [debops.nginx | Restart nginx on first install to bypass missing pid bug] *** | |
skipping: [killjoy] | |
TASK: [debops.auth | Install auth-related packages] *************************** | |
skipping: [killjoy] | |
TASK: [debops.auth | Ensure common system groups exist] *********************** | |
skipping: [killjoy] => (item=admins) | |
skipping: [killjoy] => (item=sshusers) | |
skipping: [killjoy] => (item=sftponly) | |
skipping: [killjoy] => (item=webadmins) | |
TASK: [debops.auth | Create administrator accounts] *************************** | |
skipping: [killjoy] => (item=harry.leitzell) | |
TASK: [debops.auth | Ensure members of group 'admins' can su without password] *** | |
skipping: [killjoy] | |
TASK: [debops.auth | Ensure members of group 'admins' can sudo without password] *** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Install packages for Debian repository management] *** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Make sure that directory for user homes exists] ****** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create system group for reprepro] ******************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create system user for reprepro] ********************* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create system users for reprepro uploads] ************ | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Fix home directory permissions of reprepro uploads] *** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Ensure that authorized_keys directory exist] ********* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Check if SSH key of current user exists] ************* | |
skipping: [killjoy -> 127.0.0.1] | |
TASK: [debops.reprepro | Add authorized_key from Ansible Controller to reprepro uploads] *** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create incoming user directories] ******************** | |
skipping: [killjoy] => (item=incoming) | |
skipping: [killjoy] => (item=temp) | |
TASK: [debops.reprepro | Create reprepro configuration directories] *********** | |
skipping: [killjoy] => (item=conf) | |
TASK: [debops.reprepro | Create reprepro repository] ************************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Configure reprepro] ********************************** | |
skipping: [killjoy] => (item=distributions) | |
skipping: [killjoy] => (item=incoming) | |
skipping: [killjoy] => (item=options) | |
TASK: [debops.reprepro | Configure GPG key template] ************************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create ~/.gnupg archive directory on Ansible Controller] *** | |
skipping: [killjoy -> 127.0.0.1] | |
TASK: [debops.reprepro | Download archived ~/.gnupg directory if exists] ****** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Check if archive of ~/.gnupg directory exists] ******* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Extract ~/.gnupg directory if present] *************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Install haveged to create bigger entropy pool] ******* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Make sure haveged is running] ************************ | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Generate automatic signing key] ********************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Uninstall haveged when not needed] ******************* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create archive of ~/.gnupg directory] **************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Upload ~/.gnupg archive to Ansible Controller] ******* | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Export automatic signing key] ************************ | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Initialize reprepro repositories] ******************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Generate reprepro symlinks] ************************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Create directories custom packages on Ansible Controller] *** | |
skipping: [killjoy -> 127.0.0.1] => (item={'origin': 'Automatic Reprepro Repository', 'description': 'Automatic Reprepro Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable', 'codename': 'wheezy', 'signwith': 'yes'}) | |
skipping: [killjoy -> 127.0.0.1] => (item={'origin': 'Automatic Reprepro Backports Repository', 'description': 'Automatic Reprepro Backports Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable-backports', 'codename': 'wheezy-backports', 'signwith': 'yes'}) | |
TASK: [debops.reprepro | Create directories for custom packages] ************** | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Repository', 'description': 'Automatic Reprepro Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable', 'codename': 'wheezy', 'signwith': 'yes'}) | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Backports Repository', 'description': 'Automatic Reprepro Backports Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable-backports', 'codename': 'wheezy-backports', 'signwith': 'yes'}) | |
TASK: [debops.reprepro | Download custom packages from Ansible Controller] **** | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Repository', 'description': 'Automatic Reprepro Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable', 'codename': 'wheezy', 'signwith': 'yes'}) | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Backports Repository', 'description': 'Automatic Reprepro Backports Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable-backports', 'codename': 'wheezy-backports', 'signwith': 'yes'}) | |
TASK: [debops.reprepro | Update reprepro repositories] ************************ | |
skipping: [killjoy] => (item={u'skipped': True, u'changed': False}) | |
skipping: [killjoy] => (item={u'skipped': True, u'changed': False}) | |
TASK: [debops.reprepro | Install required Python packages] ******************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Import reprepro GPG public key] ********************** | |
skipping: [killjoy] | |
TASK: [debops.reprepro | Add reprepro APT repository] ************************* | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Repository', 'description': 'Automatic Reprepro Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable', 'codename': 'wheezy', 'signwith': 'yes'}) | |
skipping: [killjoy] => (item={'origin': 'Automatic Reprepro Backports Repository', 'description': 'Automatic Reprepro Backports Repository', 'label': 'reprepro-auto', 'architectures': 'amd64 i386', 'components': 'main', 'suite': 'stable-backports', 'codename': 'wheezy-backports', 'signwith': 'yes'}) | |
TASK: [debops.apt | Install apt-cacher-ng on cache server] ******************** | |
skipping: [killjoy] | |
TASK: [debops.apt | Configure apt-cacher-ng on cache server] ****************** | |
skipping: [killjoy] => (item=etc/apt-cacher-ng/acng.conf) | |
skipping: [killjoy] => (item=etc/apt-cacher-ng/security.conf) | |
TASK: [debops.apt | Configure apt-cacher-ng port in /etc/services] ************ | |
skipping: [killjoy] | |
TASK: [debops.apt | Allow access to apt-cacher-ng through firewall] *********** | |
skipping: [killjoy] | |
TASK: [debops.apt | Configure APT to use cache server if available] *********** | |
skipping: [killjoy] | |
TASK: [debops.apt | Configure APT to not use cache if not available] ********** | |
skipping: [killjoy] | |
TASK: [debops.apt | Create Debian Preseed directories] ************************ | |
skipping: [killjoy] => (item=/srv/www/sites/default/public/d-i/jessie) | |
skipping: [killjoy] => (item=/srv/www/sites/destroy.default/public/d-i/jessie) | |
TASK: [debops.apt | Setup Debian Preseed default template] ******************** | |
skipping: [killjoy] => (item=srv/www/sites/default/public/d-i/jessie/preseed.cfg) | |
skipping: [killjoy] => (item=srv/www/sites/default/public/d-i/jessie/postinst.sh) | |
TASK: [debops.apt | Setup Debian Preseed destroy template] ******************** | |
skipping: [killjoy] | |
TASK: [debops.apt | Lock default nginx server template on Debian Preseed host] *** | |
skipping: [killjoy] | |
TASK: [debops.apt | Divert original /etc/apt/sources.list] ******************** | |
skipping: [killjoy] | |
TASK: [debops.apt | Configure APT and package sources] ************************ | |
skipping: [killjoy] => (item=etc/apt/sources.list) | |
skipping: [killjoy] => (item=etc/apt/sources.list.d/00_ansible_jessie_sources.list) | |
skipping: [killjoy] => (item=etc/apt/apt.conf.d/20no-recommends) | |
skipping: [killjoy] => (item=etc/apt/apt.conf.d/70aptitude) | |
TASK: [debops.apt | Update package lists] ************************************* | |
ok: [killjoy] | |
TASK: [debops.apt | Install apticron and apt-listchanges] ********************* | |
changed: [killjoy] => (item=apt-listchanges,apticron) | |
TASK: [debops.apt | Configure apticron and apt-listchanges] ******************* | |
changed: [killjoy] => (item=etc/apt/listchanges.conf) | |
changed: [killjoy] => (item=etc/apticron/apticron.conf) | |
TASK: [debops.apt | Remove apticron and apt-listchanges] ********************** | |
skipping: [killjoy] | |
TASK: [debops.apt | Install unattended-upgrades if enabled] ******************* | |
failed: [killjoy] => (item=unattended-upgrades) => {"failed": true, "item": "unattended-upgrades"} | |
stderr: E: Package 'unattended-upgrades' has no installation candidate | |
stdout: Reading package lists... | |
Building dependency tree... | |
Reading state information... | |
Package unattended-upgrades is not available, but is referred to by another package. | |
This may mean that the package is missing, has been obsoleted, or | |
is only available from another source | |
msg: 'apt-get install 'unattended-upgrades' ' failed: E: Package 'unattended-upgrades' has no installation candidate | |
FATAL: all hosts have already failed -- aborting | |
PLAY RECAP ******************************************************************** | |
debops.apt | Install apticron and apt-listchanges --------------------- 129.92s | |
debops.apt | Update package lists ------------------------------------- 127.91s | |
debops.pki | Ensure OpenSSL support is installed ----------------------- 66.75s | |
debops.apt | Install unattended-upgrades if enabled -------------------- 14.28s | |
debops.pki | Create certificate requests ------------------------------- 14.25s | |
debops.pki | Manage certificate directory structure -------------------- 11.75s | |
debops.pki | Generate certificate keys ---------------------------------- 9.23s | |
Update APT cache early if older than 24h -------------------------------- 7.80s | |
debops.apt | Configure apticron and apt-listchanges --------------------- 3.19s | |
debops.pki | Manage private directory structure ------------------------- 2.63s | |
to retry, use: --limit @/Users/harry.leitzell/site.retry | |
killjoy : ok=63 changed=20 unreachable=0 failed=1 |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment