Build server no longer uses ansible.

master
Kaitlyn Parkhurst 3 years ago
parent fef10646d9
commit 6827312718
  1. 10
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/deploy-website.yml
  2. 9
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/purge-website.yml
  3. 29
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/roles/deploy-website/tasks/main.yml
  4. 22
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/roles/deploy-website/templates/lighttpd-conf-domain.j2
  5. 3
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/roles/deploy-website/templates/markdownsite-config.yml.j2
  6. 36
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/roles/deploy-website/templates/sites-available-config.j2
  7. 15
      devops/ansible/roles/mjb-profile-buildserver/files/ansible/roles/purge-website/tasks/main.yml
  8. 71
      devops/ansible/roles/mjb-profile-buildserver/tasks/ansible.yml

@ -1,10 +0,0 @@
---
- name: Deploy Website
remote_user: root
hosts: all
vars:
ansible_ssh_common_args: -oControlMaster=auto -oControlPersist=60s -oUserKnownHostsFile=/dev/null -oStrictHostKeyChecking=no -i/home/minion/.ssh/id_rsa_ansible
site: "{{ lookup('file', lookup('env', 'MARKDOWNSITE_CONFIG') ) | from_yaml }}"
roles:
- deploy-website

@ -1,9 +0,0 @@
---
- name: Deploy Website
remote_user: root
hosts: all
vars:
ansible_ssh_common_args: -oControlMaster=auto -oControlPersist=60s -oUserKnownHostsFile=/dev/null -oStrictHostKeyChecking=no -i/home/minion/.ssh/id_rsa_ansible
roles:
- purge-website

@ -1,29 +0,0 @@
---
- name: Install /etc/nginx/sites-enabled/{{ site.domain }}
template:
src: "{{ role_path }}/templates/sites-available-config.j2"
dest: "/etc/nginx/sites-enabled/{{ site.domain }}"
owner: root
group: root
mode: '0644'
ignore_errors: yes # Custom config with chattr +i, don't fail on error.
- name: Remove any prexisting /var/www/{{ site.domain }}.
file:
path: "/var/www/{{ site.domain }}"
state: absent
- name: Ensure /var/www/{{ site.domain }} is populated.
copy:
src: "{{ site.www_dir }}"
dest: "/var/www/{{ site.domain }}"
mode: '0644'
directory_mode: '0755'
owner: 'www-data'
group: 'www-data'
- name: Reload nginx to begin serving the website.
systemd:
name: nginx
state: reloaded

@ -1,22 +0,0 @@
$HTTP["host"] =~ "^{% raw %}{{ site.domain }}{% endraw %}$" {
$SERVER["socket"] == ":443" {
# SSL Settings
ssl.engine = "enable"
ssl.pemfile = "/etc/letsencrypt/live/{{ domain.hosted }}/cert.pem"
ssl.ca-file = "/etc/letsencrypt/live/{{ domain.hosted }}/fullchain.pem"
ssl.privkey = "/etc/letsencrypt/live/{{ domain.hosted }}/privkey.pem"
# Docroot & Logs.
server.document-root = "/var/www/{% raw %}{{ site.domain }}{% endraw %}/html"
server.errorlog = "/var/log/lighttpd/{% raw %}{{ site.domain }}{% endraw %}.error.log"
accesslog.filename = "/var/log/lighttpd/{% raw %}{{ site.domain }}{% endraw %}.access.log"
# Pass to Markdown::CGI if there is no static file to serve.
magnet.attract-physical-path-to = ( "/etc/lighttpd/rewrite.lua" )
}
# Redirect http -> https
$SERVER["socket"] == ":80" {
url.redirect = ( "^/(.*)" => "https://{% raw %}{{ site.domain }}{% endraw %}/$1" )
}
}

@ -1,36 +0,0 @@
server {
server_name {{ site.domain }};
root /var/www/{{ site.domain }}/html;
index index.html;
error_log /var/log/nginx/{{ site.domain }}symkat.com.error.log warn;
access_log /var/log/nginx/{{ site.domain }}symkat.com.access.log combined;
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/{{ site.domain }}/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/{{ site.domain }}/privkey.pem;
ssl_session_cache shared:le_nginx_SSL:10m;
ssl_session_timeout 1440m;
ssl_session_tickets off;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers off;
ssl_ciphers "ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384";
ssl_dhparam /etc/nginx/ssl-dhparams.pem;
}
server {
if ($host = {{ site.domain }}) {
return 301 https://$host$request_uri;
}
listen 80;
server_name {{ site.domain }}
return 404;
}

@ -1,15 +0,0 @@
---
- name: "Remove /etc/lighttpd/conf.d/{{ domain }}."
file:
path: "/etc/lighttpd/conf.d/{{ domain }}"
state: absent
- name: "Remove any prexisting /var/www/{{ domain }}."
file:
path: "/var/www/{{ domain }}"
state: absent
- name: "Reload lighttpd to stop serving {{ domain }}."
systemd:
name: lighttpd
state: reloaded

@ -1,71 +0,0 @@
- name: Install packages
apt:
name: [ 'gnupg2', 'curl', 'rsync' ]
- name: Add the ansible key.
apt_key:
keyserver: keyserver.ubuntu.com
id: 93C4A3FD7BB9C367
- name: Install ansible.list for apt.
copy:
dest: /etc/apt/sources.list.d/ansible.list
content: "deb http://ppa.launchpad.net/ansible/ansible/ubuntu focal main"
owner: root
group: root
mode: 0755
- name: Reload apt with new source
apt:
name: "*"
state: latest
update_cache: yes
- name: Install packages
apt:
name: [
'ansible',
'ansible-core',
'podman',
]
state: present
- name: Install ansible roles for deployment
copy:
src: "{{ role_path }}/files/ansible/"
dest: "/etc/ansible"
mode: '0644'
directory_mode: '0755'
owner: 'root'
group: 'root'
- name: "Delete /etc/ansible/hosts."
file:
path: /etc/ansible/hosts
state: absent
- name: "Create /etc/ansible/hosts."
copy:
dest: /etc/ansible/hosts
content: "[webservers]"
owner: root
group: root
mode: 0644
- name: "Add hosts to /etc/ansible/hosts"
lineinfile:
path: /etc/ansible/hosts
line: "{{ item }}"
owner: root
group: root
mode: '0644'
with_items: "{{ deploy_addresses }}"
- name: "Install SSH Key for manager to use ansible"
copy:
dest: /home/manager/.ssh/id_rsa
src: "{{ inventory_dir }}/files/ssh/id_rsa"
owner: manager
group: manager
mode: 0600
Loading…
Cancel
Save