Initial commit
commit
ced099de32
@ -0,0 +1,21 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2020 Leo 'em0lar' Maroni
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
@ -0,0 +1,3 @@
|
||||
---
|
||||
caddy_config_sites_directory: "/etc/caddy/sites.d"
|
||||
caddy_config_sites_clear: false
|
@ -0,0 +1,5 @@
|
||||
---
|
||||
- name: Reload caddy
|
||||
systemd:
|
||||
name: "caddy.service"
|
||||
state: reloaded
|
@ -0,0 +1,53 @@
|
||||
galaxy_info:
|
||||
role_name: caddy
|
||||
author: Leo 'em0lar' Maroni
|
||||
description: Ansible role for installing and configuring caddy
|
||||
# company: your company (optional)
|
||||
|
||||
# If the issue tracker for your role is not on github, uncomment the
|
||||
# next line and provide a value
|
||||
# issue_tracker_url: http://example.com/issue/tracker
|
||||
|
||||
# Choose a valid license ID from https://spdx.org - some suggested licenses:
|
||||
# - BSD-3-Clause (default)
|
||||
# - MIT
|
||||
# - GPL-2.0-or-later
|
||||
# - GPL-3.0-only
|
||||
# - Apache-2.0
|
||||
# - CC-BY-4.0
|
||||
license: MIT
|
||||
|
||||
min_ansible_version: 2.1
|
||||
|
||||
# If this a Container Enabled role, provide the minimum Ansible Container version.
|
||||
# min_ansible_container_version:
|
||||
|
||||
#
|
||||
# Provide a list of supported platforms, and for each platform a list of versions.
|
||||
# If you don't wish to enumerate all versions for a particular platform, use 'all'.
|
||||
# To view available platforms and versions (or releases), visit:
|
||||
# https://galaxy.ansible.com/api/v1/platforms/
|
||||
#
|
||||
platforms:
|
||||
- name: Debian
|
||||
versions:
|
||||
- all
|
||||
- name: Ubuntu
|
||||
versions:
|
||||
- all
|
||||
|
||||
galaxy_tags:
|
||||
- caddy
|
||||
- caddyserver
|
||||
- http
|
||||
- web
|
||||
# List tags for your role here, one per line. A tag is a keyword that describes
|
||||
# and categorizes the role. Users find roles by searching for tags. Be sure to
|
||||
# remove the '[]' above, if you add tags to this list.
|
||||
#
|
||||
# NOTE: A tag is limited to a single word comprised of alphanumeric characters.
|
||||
# Maximum 20 tags per role.
|
||||
|
||||
dependencies: []
|
||||
# List your role dependencies here, one per line. Be sure to remove the '[]' above,
|
||||
# if you add dependencies to this list.
|
@ -0,0 +1,36 @@
|
||||
---
|
||||
- name: Create Caddyfile
|
||||
copy:
|
||||
src: "{{ caddy_config_file }}"
|
||||
dest: "/etc/caddy/Caddyfile"
|
||||
owner: "caddy"
|
||||
mode: 0640
|
||||
notify:
|
||||
- Reload caddy
|
||||
|
||||
- name: Clear sites.d directory before adding net configurations
|
||||
file:
|
||||
path: "{{ caddy_config_sites_directory }}"
|
||||
owner: "caddy"
|
||||
group: "caddy"
|
||||
state: absent
|
||||
when: caddy_config_sites_paths is defined and caddy_config_sites_clear
|
||||
|
||||
- name: Add sites.d directory
|
||||
file:
|
||||
path: "{{ caddy_config_sites_directory }}"
|
||||
owner: "caddy"
|
||||
group: "caddy"
|
||||
state: directory
|
||||
when: caddy_config_sites_paths is defined
|
||||
|
||||
- name: Template site configurations
|
||||
template:
|
||||
src: "{{ item }}"
|
||||
dest: "{{ caddy_config_sites_directory }}"
|
||||
owner: "caddy"
|
||||
group: "caddy"
|
||||
with_fileglob: "{{ caddy_config_sites_paths }}"
|
||||
when: caddy_config_sites_paths is defined
|
||||
notify:
|
||||
- Reload caddy
|
@ -0,0 +1,22 @@
|
||||
---
|
||||
- name: Add apt signing key for caddy apt repository
|
||||
apt_key:
|
||||
url: "https://dl.cloudsmith.io/public/caddy/stable/cfg/gpg/gpg.155B6D79CA56EA34.key"
|
||||
state: present
|
||||
|
||||
- name: Add caddy apt repository
|
||||
apt_repository:
|
||||
repo: "deb https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main"
|
||||
state: present
|
||||
|
||||
- name: Add caddy apt source repository
|
||||
apt_repository:
|
||||
repo: "deb-src https://dl.cloudsmith.io/public/caddy/stable/deb/debian any-version main"
|
||||
state: present
|
||||
|
||||
- name: Install caddy apt package
|
||||
apt:
|
||||
name: "caddy"
|
||||
state: present
|
||||
|
||||
|
@ -0,0 +1,4 @@
|
||||
---
|
||||
- include_tasks: "install.yml"
|
||||
- include_tasks: "configuration.yml"
|
||||
|
Loading…
Reference in New Issue