Skip to content

Instantly share code, notes, and snippets.

@hleitzell
Created October 13, 2014 16:43
Show Gist options
  • Save hleitzell/eba4c03b30f9105abeb0 to your computer and use it in GitHub Desktop.
Save hleitzell/eba4c03b30f9105abeb0 to your computer and use it in GitHub Desktop.
DebOps on Raspbian
$ 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