Compare commits
No commits in common. "adel" and "main" have entirely different histories.
|
@ -1,98 +0,0 @@
|
||||||
---
|
|
||||||
- name: Web Server Deployment
|
|
||||||
hosts: webserver_deployment
|
|
||||||
become: yes
|
|
||||||
|
|
||||||
vars:
|
|
||||||
domain_name: pkl.com
|
|
||||||
ssl_cert_source: files/pkl.com.crt
|
|
||||||
ssl_key_source: files/pkl.com.key
|
|
||||||
ssl_cert_dest: /etc/ssl/certs/pkl.com.crt
|
|
||||||
ssl_key_dest: /etc/ssl/private/pkl.com.key
|
|
||||||
app_source_dir: files/index.html
|
|
||||||
app_target_dir: /var/www/pkl.com
|
|
||||||
|
|
||||||
tasks:
|
|
||||||
|
|
||||||
- name: Install Nginx
|
|
||||||
apt:
|
|
||||||
name: nginx
|
|
||||||
state: present
|
|
||||||
update_cache: yes
|
|
||||||
when: ansible_distribution in "Ubuntu"
|
|
||||||
|
|
||||||
- name: Start Nginx service
|
|
||||||
service:
|
|
||||||
name: nginx
|
|
||||||
state: started
|
|
||||||
enabled: yes
|
|
||||||
|
|
||||||
- name: Create web root directory
|
|
||||||
file:
|
|
||||||
path: "{{ app_target_dir }}"
|
|
||||||
state: directory
|
|
||||||
owner: www-data
|
|
||||||
group: www-data
|
|
||||||
mode: '0755'
|
|
||||||
|
|
||||||
- name: Deploy index.html to web root
|
|
||||||
copy:
|
|
||||||
src: index.html
|
|
||||||
dest: "{{ app_target_dir }}/index.html"
|
|
||||||
owner: www-data
|
|
||||||
group: www-data
|
|
||||||
mode: '0644'
|
|
||||||
|
|
||||||
- name: Copy SSL certificate
|
|
||||||
copy:
|
|
||||||
src: "{{ ssl_cert_source }}"
|
|
||||||
dest: "{{ ssl_cert_dest }}"
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0644'
|
|
||||||
|
|
||||||
- name: Copy SSL key
|
|
||||||
copy:
|
|
||||||
src: "{{ ssl_key_source }}"
|
|
||||||
dest: "{{ ssl_key_dest }}"
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0600'
|
|
||||||
|
|
||||||
- name: Create a custom configuration file for Nginx
|
|
||||||
template:
|
|
||||||
src: templates/nginx.conf.j2
|
|
||||||
dest: /etc/nginx/sites-available/default
|
|
||||||
owner: root
|
|
||||||
group: root
|
|
||||||
mode: '0644'
|
|
||||||
notify: Restart Nginx
|
|
||||||
|
|
||||||
- name: Enable the new Nginx site
|
|
||||||
file:
|
|
||||||
src: /etc/nginx/sites-available/default
|
|
||||||
dest: /etc/nginx/sites-enabled/default
|
|
||||||
state: link
|
|
||||||
force: yes
|
|
||||||
notify: Restart Nginx
|
|
||||||
when: ansible_distribution == "Ubuntu"
|
|
||||||
|
|
||||||
- name: Allow HTTP and HTTPS through UFW
|
|
||||||
ufw:
|
|
||||||
rule: allow
|
|
||||||
port: "{{ item }}"
|
|
||||||
proto: tcp
|
|
||||||
loop:
|
|
||||||
- "80"
|
|
||||||
- "443"
|
|
||||||
|
|
||||||
- name: Restart Nginx
|
|
||||||
service:
|
|
||||||
name: nginx
|
|
||||||
state: restarted
|
|
||||||
|
|
||||||
handlers:
|
|
||||||
- name: Restart Nginx
|
|
||||||
service:
|
|
||||||
name: nginx
|
|
||||||
state: restarted
|
|
Loading…
Reference in New Issue