Compare commits
10 commits
78b82dba51
...
67362655d9
| Author | SHA1 | Date | |
|---|---|---|---|
| 67362655d9 | |||
| f3de156138 | |||
| 8a1348cd22 | |||
| 38a728f305 | |||
| 02fba6bb5d | |||
| b8868485d0 | |||
| 30881cd1fd | |||
| 3ad285c5be | |||
| ea9321953c | |||
| f0f6892e11 |
9 changed files with 83 additions and 22 deletions
|
|
@ -3,6 +3,7 @@
|
||||||
exclude_paths:
|
exclude_paths:
|
||||||
- ".gitlab/*"
|
- ".gitlab/*"
|
||||||
- ".gitlab-ci.yml"
|
- ".gitlab-ci.yml"
|
||||||
|
- ".woodpecker/*"
|
||||||
- "defaults/main.yaml"
|
- "defaults/main.yaml"
|
||||||
- "meta/main.yaml"
|
- "meta/main.yaml"
|
||||||
- "vars/*"
|
- "vars/*"
|
||||||
|
|
|
||||||
|
|
@ -1,13 +0,0 @@
|
||||||
---
|
|
||||||
|
|
||||||
# gitlab stages
|
|
||||||
stages:
|
|
||||||
- "gitleaks"
|
|
||||||
- "linting"
|
|
||||||
|
|
||||||
# include components
|
|
||||||
include:
|
|
||||||
- component: "$CI_SERVER_FQDN/components/ansible/linting@v3.0.3"
|
|
||||||
- component: "$CI_SERVER_FQDN/components/gitleaks/gitleaks@v1.0.0"
|
|
||||||
- component: "$CI_SERVER_FQDN/components/markdownlint/markdownlint@1.0.0"
|
|
||||||
- component: "$CI_SERVER_FQDN/components/yamllint/yamllint@1.0.2"
|
|
||||||
|
|
@ -6,7 +6,8 @@
|
||||||
// linting rules
|
// linting rules
|
||||||
"config": {
|
"config": {
|
||||||
"MD013": {
|
"MD013": {
|
||||||
"line_length": 120
|
"line_length": 120,
|
||||||
|
"tables": false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
41
.woodpecker/linting.yml
Normal file
41
.woodpecker/linting.yml
Normal file
|
|
@ -0,0 +1,41 @@
|
||||||
|
---
|
||||||
|
when:
|
||||||
|
- event: "push"
|
||||||
|
branch: "main"
|
||||||
|
- event: "manual"
|
||||||
|
|
||||||
|
steps:
|
||||||
|
|
||||||
|
# gitleaks
|
||||||
|
- name: "gitleaks"
|
||||||
|
# renovate: datasource=github-releases depName=gitleaks/gitleaks
|
||||||
|
image: "cr.simoncor.net/ghcr/gitleaks/gitleaks:v8.30.1"
|
||||||
|
commands:
|
||||||
|
- "gitleaks detect --source . --verbose --redact"
|
||||||
|
|
||||||
|
# yamllint
|
||||||
|
- name: "yamllint"
|
||||||
|
# renovate: datasource=docker depName=cr.simoncor.net/yamllint
|
||||||
|
image: "cr.simoncor.net/yamllint:1.38.0"
|
||||||
|
depends_on:
|
||||||
|
- "gitleaks"
|
||||||
|
commands:
|
||||||
|
- "yamllint -c .yamllint ."
|
||||||
|
|
||||||
|
# ansible-lint
|
||||||
|
- name: "ansible-lint"
|
||||||
|
# renovate: datasource=docker depName=docker.io/pipelinecomponents/ansible-lint
|
||||||
|
image: "cr.simoncor.net/dockerhub/pipelinecomponents/ansible-lint:0.79.11"
|
||||||
|
depends_on:
|
||||||
|
- "gitleaks"
|
||||||
|
commands:
|
||||||
|
- "ansible-lint -c .ansible-lint ."
|
||||||
|
|
||||||
|
# markdownlint
|
||||||
|
- name: "markdownlint"
|
||||||
|
# renovate: datasource=docker depName=docker.io/davidanson/markdownlint-cli2
|
||||||
|
image: "cr.simoncor.net/dockerhub/davidanson/markdownlint-cli2:v0.22.1"
|
||||||
|
depends_on:
|
||||||
|
- "gitleaks"
|
||||||
|
commands:
|
||||||
|
- "markdownlint-cli2 --config .markdownlint-cli2.jsonc"
|
||||||
|
|
@ -5,8 +5,4 @@ galaxy_info:
|
||||||
description: "install and configure an pangolin server"
|
description: "install and configure an pangolin server"
|
||||||
license: "MIT"
|
license: "MIT"
|
||||||
role_name: "pangolin"
|
role_name: "pangolin"
|
||||||
dependencies:
|
dependencies: []
|
||||||
- name: "docker"
|
|
||||||
src: "https://gitlab.simoncor.net/ansible/ans-docker.git"
|
|
||||||
scm: "git"
|
|
||||||
version: "main"
|
|
||||||
|
|
|
||||||
26
playbook.yaml
Normal file
26
playbook.yaml
Normal file
|
|
@ -0,0 +1,26 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
# execute this role
|
||||||
|
- name: "install and configure Pangolin"
|
||||||
|
hosts: "all"
|
||||||
|
become: true
|
||||||
|
tasks:
|
||||||
|
|
||||||
|
# due to semaphore bug we need to do this ourselves
|
||||||
|
- name: "force-update requirements"
|
||||||
|
ansible.builtin.command:
|
||||||
|
cmd: "ansible-galaxy install -f -r roles/requirements.yml"
|
||||||
|
become: false
|
||||||
|
delegate_to: "localhost"
|
||||||
|
changed_when: false
|
||||||
|
failed_when: false
|
||||||
|
|
||||||
|
# execute the role
|
||||||
|
- name: "execute role: docker"
|
||||||
|
ansible.builtin.include_role:
|
||||||
|
name: "docker"
|
||||||
|
|
||||||
|
# execute the role
|
||||||
|
- name: "execute role: pangolin"
|
||||||
|
ansible.builtin.include_role:
|
||||||
|
name: "pangolin"
|
||||||
|
|
@ -1,3 +1,3 @@
|
||||||
# Ansible Role: Pangolin
|
# Ansible Role: Pangolin
|
||||||
|
|
||||||
Install and configure [Pangolin](https://digpangolin.com/) - a serverless web analytics tool.
|
Install and configure [Pangolin](https://digpangolin.com/) - a tunneled reverse proxy for homelabs.
|
||||||
|
|
|
||||||
9
roles/requirements.yml
Normal file
9
roles/requirements.yml
Normal file
|
|
@ -0,0 +1,9 @@
|
||||||
|
---
|
||||||
|
|
||||||
|
roles:
|
||||||
|
- name: "docker"
|
||||||
|
src: "https://git.simoncor.net/ansible/docker.git"
|
||||||
|
scm: "git"
|
||||||
|
- name: "pangolin"
|
||||||
|
src: "https://git.simoncor.net/ansible/pangolin.git"
|
||||||
|
scm: "git"
|
||||||
|
|
@ -29,7 +29,7 @@
|
||||||
pull: "always"
|
pull: "always"
|
||||||
state: "started"
|
state: "started"
|
||||||
name: "pangolin"
|
name: "pangolin"
|
||||||
image: "docker.io/fosrl/pangolin:1.18.1"
|
image: "cr.simoncor.net/dockerhub/fosrl/pangolin:1.18.4"
|
||||||
restart_policy: "unless-stopped"
|
restart_policy: "unless-stopped"
|
||||||
networks:
|
networks:
|
||||||
- name: "pangolin"
|
- name: "pangolin"
|
||||||
|
|
@ -62,7 +62,7 @@
|
||||||
pull: "always"
|
pull: "always"
|
||||||
state: "started"
|
state: "started"
|
||||||
name: "traefik"
|
name: "traefik"
|
||||||
image: "docker.io/library/traefik:v3.6"
|
image: "cr.simoncor.net/dockerhub/library/traefik:v3.7.0"
|
||||||
restart_policy: "unless-stopped"
|
restart_policy: "unless-stopped"
|
||||||
networks:
|
networks:
|
||||||
- name: "pangolin"
|
- name: "pangolin"
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue