Merge "add acng to the host system and preseeds"
This commit is contained in:
commit
7485f32bf2
34
multi-node-aio/playbooks/pxe/acng.conf.j2
Normal file
34
multi-node-aio/playbooks/pxe/acng.conf.j2
Normal file
@ -0,0 +1,34 @@
|
||||
# {{ ansible_managed }}
|
||||
|
||||
CacheDir: /var/www/pkg-cache
|
||||
LogDir: /var/log/apt-cacher-ng
|
||||
Port: 3142
|
||||
BindAddress: 10.0.2.1
|
||||
Remap-debrep: file:deb_mirror*.gz /debian ; file:backends_debian # Debian Archives
|
||||
Remap-uburep: file:ubuntu_mirrors /ubuntu ; file:backends_ubuntu # Ubuntu Archives
|
||||
Remap-debvol: file:debvol_mirror*.gz /debian-volatile ; file:backends_debvol # Debian Volatile Archives
|
||||
Remap-cygwin: file:cygwin_mirrors /cygwin # ; file:backends_cygwin # incomplete, please create this file or specify preferred mirrors here
|
||||
Remap-sfnet: file:sfnet_mirrors # ; file:backends_sfnet # incomplete, please create this file or specify preferred mirrors here
|
||||
Remap-alxrep: file:archlx_mirrors /archlinux # ; file:backend_archlx # Arch Linux
|
||||
Remap-fedora: file:fedora_mirrors # Fedora Linux
|
||||
Remap-epel: file:epel_mirrors # Fedora EPEL
|
||||
Remap-slrep: file:sl_mirrors # Scientific Linux
|
||||
Remap-centos: file:centos_mirrors /centos #centos
|
||||
ReportPage: acng-report.html
|
||||
PidFile: /var/run/apt-cacher-ng
|
||||
ExTreshold: 4
|
||||
LocalDirs: acng-doc /usr/share/doc/apt-cacher-ng
|
||||
PassThroughPattern: .*
|
||||
{% if http_proxy is defined and http_proxy %}
|
||||
Proxy: {{ http_proxy }}
|
||||
{% endif %}
|
||||
{% if ansible_distribution_release | lower != 'trusty' %}
|
||||
VfilePatternEx: ^/\?release=[0-9]+&arch=
|
||||
{% endif %}
|
||||
# NOTE(mhayden): Caching the CentOS mirror list causes yum to throw
|
||||
# 503 errors intermittently since the remote file is dynamic. Also,
|
||||
# yum has issues with retrieving the mariadb.org repodata bz2 and
|
||||
# that causes more intermittent 503 errors. This DontCache line
|
||||
# tells apt-cacher-ng to allow requests for these to pass through
|
||||
# without being cached.
|
||||
DontCache: (mirrorlist\.centos\.org)|(mariadb\.org.*\.bz2$)
|
@ -11,5 +11,5 @@ mkdir -p /root/.ssh
|
||||
chmod 0700 /root/.ssh
|
||||
echo "{{ tftp_ssh_key }}" >> /root/.ssh/authorized_keys
|
||||
|
||||
wget {{ tftp_server }}/networking/mnaio-bridges.cfg -O /etc/network/interfaces.d/mnaio-bridges.cfg
|
||||
wget {{ tftp_server }}/networking/basic-interface.cfg -O /etc/network/interfaces
|
||||
wget --no-proxy http://{{ tftp_server }}/networking/mnaio-bridges.cfg -O /etc/network/interfaces.d/mnaio-bridges.cfg
|
||||
wget --no-proxy http://{{ tftp_server }}/networking/basic-interface.cfg -O /etc/network/interfaces
|
||||
|
@ -247,7 +247,7 @@ d-i grub-installer/only_debian boolean true
|
||||
# Post Install
|
||||
|
||||
d-i preseed/late_command string \
|
||||
in-target bash -c "wget {{ tftp_server }}/scripts/mnaio-post-install-script.sh -O /opt/mnaio-post-install-script.sh"; \
|
||||
in-target bash -c "wget --no-proxy http://{{ tftp_server }}/scripts/mnaio-post-install-script.sh -O /opt/mnaio-post-install-script.sh"; \
|
||||
in-target bash -c 'chmod +x /opt/mnaio-post-install-script.sh'; \
|
||||
in-target bash -c '/opt/mnaio-post-install-script.sh'
|
||||
# Finish
|
||||
|
@ -11,8 +11,8 @@ mkdir -p /root/.ssh
|
||||
chmod 0700 /root/.ssh
|
||||
echo "{{ tftp_ssh_key }}" >> /root/.ssh/authorized_keys
|
||||
|
||||
wget {{ tftp_server }}/networking/$(cat /etc/hostname)-bridges.cfg -O /etc/network/interfaces.d/vm-bridges.cfg
|
||||
wget {{ tftp_server }}/networking/basic-interface.cfg -O /etc/network/interfaces
|
||||
wget --no-proxy http://{{ tftp_server }}/networking/$(cat /etc/hostname)-bridges.cfg -O /etc/network/interfaces.d/vm-bridges.cfg
|
||||
wget --no-proxy http://{{ tftp_server }}/networking/basic-interface.cfg -O /etc/network/interfaces
|
||||
|
||||
cat > /etc/network/if-up.d/post-up-rules <<EOF
|
||||
#!/usr/bin/env bash
|
||||
|
@ -219,7 +219,7 @@ d-i grub-installer/only_debian boolean true
|
||||
# Post Install
|
||||
|
||||
d-i preseed/late_command string \
|
||||
in-target bash -c "wget {{ tftp_server }}/scripts/vm-post-install-script.sh -O /opt/vm-post-install-script.sh"; \
|
||||
in-target bash -c "wget --no-proxy http://{{ tftp_server }}/scripts/vm-post-install-script.sh -O /opt/vm-post-install-script.sh"; \
|
||||
in-target bash -c 'chmod +x /opt/vm-post-install-script.sh'; \
|
||||
in-target bash -c '/opt/vm-post-install-script.sh'
|
||||
# Finish
|
||||
|
@ -217,6 +217,66 @@
|
||||
fi
|
||||
done
|
||||
|
||||
- name: Install repo caching server packages
|
||||
package:
|
||||
name: "{{ item }}"
|
||||
state: "latest"
|
||||
with_items: "{{ mnaio_pkg_cache_server_distro_packages }}"
|
||||
|
||||
- name: Create cache directory
|
||||
file:
|
||||
path: "/var/www/pkg-cache"
|
||||
state: "directory"
|
||||
owner: "apt-cacher-ng"
|
||||
group: "www-data"
|
||||
mode: "02775"
|
||||
|
||||
- name: Stat the cache path
|
||||
stat:
|
||||
path: /var/cache/apt-cacher-ng
|
||||
register: acs
|
||||
|
||||
- name: Remove cacher directory if its a directory
|
||||
file:
|
||||
path: "/var/cache/apt-cacher-ng"
|
||||
state: "absent"
|
||||
when:
|
||||
- acs.stat.isdir is defined and acs.stat.isdir
|
||||
|
||||
- name: Link cacher to the repo path
|
||||
file:
|
||||
src: "/var/www/pkg-cache"
|
||||
dest: "/var/cache/apt-cacher-ng"
|
||||
state: "link"
|
||||
|
||||
- name: create yum merged mirror list
|
||||
shell: |
|
||||
curl https://www.centos.org/download/full-mirrorlist.csv | sed 's/^.*"http:/http:/' | sed 's/".*$//' | grep ^http >/etc/apt-cacher-ng/centos_mirrors
|
||||
echo "http://mirror.centos.org/centos/" >>/etc/apt-cacher-ng/centos_mirrors
|
||||
|
||||
- name: Drop acng.conf
|
||||
template:
|
||||
src: "pxe/acng.conf.j2"
|
||||
dest: "/etc/apt-cacher-ng/acng.conf"
|
||||
notify:
|
||||
- reload acng
|
||||
|
||||
- name: Drop apt package manager proxy
|
||||
copy:
|
||||
content: 'Acquire::http { Proxy "{{ default_ubuntu_mirror_proxy }}"; };'
|
||||
dest: "/etc/apt/apt.conf.d/00apt-cacher-proxy"
|
||||
|
||||
- name: Update apt when proxy is added
|
||||
apt:
|
||||
update_cache: yes
|
||||
|
||||
handlers:
|
||||
- name: reload acng
|
||||
service:
|
||||
name: "apt-cacher-ng"
|
||||
state: restarted
|
||||
enabled: yes
|
||||
|
||||
vars_files:
|
||||
- vars/main.yml
|
||||
tags:
|
||||
|
@ -4,10 +4,9 @@ default_interface: "{{ default_network | default('eth0') }}"
|
||||
default_vm_image: "{{ default_image | default('ubuntu-16.04-amd64') }}"
|
||||
default_vm_storage: "{{ vm_disk_size | default(61440) }}"
|
||||
|
||||
default_ubuntu_mirror_proxy: ''
|
||||
default_ubuntu_mirror_proxy: 'http://10.0.2.1:3142/'
|
||||
default_ubuntu_mirror_hostname: archive.ubuntu.com
|
||||
default_ubuntu_mirror_directory: /ubuntu
|
||||
|
||||
############### DEFAULTS ###############
|
||||
|
||||
|
||||
|
@ -40,4 +40,7 @@ mnaio_pxe_distro_packages:
|
||||
mnaio_dhcp_distro_packages:
|
||||
- isc-dhcp-server
|
||||
|
||||
mnaio_pkg_cache_server_distro_packages:
|
||||
- apt-cacher-ng
|
||||
|
||||
mnaio_host_iptables_service: "{{ (ansible_distribution | lower + '-' + ansible_distribution_version | lower == 'ubuntu-14.04') | ternary('iptables-persistent', 'netfilter-persistent') }}"
|
||||
|
Loading…
x
Reference in New Issue
Block a user