diff --git a/playbook.yaml b/playbook.yaml index 0544592..19f5e04 100644 --- a/playbook.yaml +++ b/playbook.yaml @@ -18,3 +18,4 @@ roles: - role: "docker" - role: "jellyfin" + - role: "traefik" diff --git a/roles/requirements.yml b/roles/requirements.yml index 9c0c321..7785e22 100644 --- a/roles/requirements.yml +++ b/roles/requirements.yml @@ -7,3 +7,6 @@ roles: - name: "jellyfin" src: "https://gitlab.simoncor.net/ansible/ans-jellyfin.git" scm: "git" + - name: "traefik" + src: "https://gitlab.simoncor.net/ansible/ans-traefik.git" + scm: "git" diff --git a/templates/pangolin/config.yml.j2 b/templates/pangolin/config.yml.j2 deleted file mode 100644 index c622ef5..0000000 --- a/templates/pangolin/config.yml.j2 +++ /dev/null @@ -1,30 +0,0 @@ -app: - dashboard_url: "https://{{ pangolin_domain }}" - log_level: "info" - -domains: - domain1: - base_domain: "simoncor.net" - cert_resolver: "letsencrypt" - domain2: - base_domain: "mirahsimon.us" - cert_resolver: "letsencrypt" - -server: - secret: "{{ pangolin_server_secret }}" - cors: - origins: ["https://{{ pangolin_domain }}"] - methods: ["GET", "POST", "PUT", "DELETE", "PATCH"] - allowed_headers: ["X-CSRF-Token", "Content-Type"] - credentials: false - -gerbil: - start_port: 51820 - base_endpoint: "{{ pangolin_domain }}" - -flags: - require_email_verification: false - disable_signup_without_invite: true - disable_user_create_org: false - allow_raw_resources: true - allow_base_domain_resources: true diff --git a/templates/traefik/traefik_config.yml.j2 b/templates/traefik/traefik_config.yml.j2 deleted file mode 100644 index 4fab359..0000000 --- a/templates/traefik/traefik_config.yml.j2 +++ /dev/null @@ -1,48 +0,0 @@ -api: - insecure: true - dashboard: true - -providers: - http: - endpoint: "http://pangolin:3001/api/v1/traefik-config" - pollInterval: "5s" - file: - filename: "/etc/traefik/dynamic_config.yml" - -experimental: - plugins: - badger: - moduleName: "github.com/fosrl/badger" - version: "v1.2.0" - -log: - level: "INFO" - format: "common" - maxSize: 100 - maxBackups: 3 - maxAge: 3 - compress: true - -certificatesResolvers: - letsencrypt: - acme: - dnsChallenge: - provider: "transip" - email: "letsencrypt@simoncor.net" - storage: "/letsencrypt/acme.json" - caServer: "https://acme-v02.api.letsencrypt.org/directory" - -entryPoints: - web: - address: ":80" - websecure: - address: ":443" - transport: - respondingTimeouts: - readTimeout: "30m" - http: - tls: - certResolver: "letsencrypt" - -serversTransport: - insecureSkipVerify: true