Verified Commit 33366591 authored by Silvio Rhatto's avatar Silvio Rhatto
Browse files

Feat: initial import

parents
Loading
Loading
Loading
Loading

.gitignore

0 → 100644
+1 −0
Original line number Diff line number Diff line
__pycache__

.gitlab-ci.yml

0 → 100644
+74 −0
Original line number Diff line number Diff line
---
# Docker-in-Docker CI workflow.
#
# GitLab CI config adapted from
# https://ansible.readthedocs.io/projects/molecule/ci/#gitlab-ci
#
# Disabled, since Tor's GitLab don't support DinD, as of 2024-10-09:
#
# * https://gitlab.torproject.org/tpo/tpa/renovate-cron/-/issues/2
# * https://gitlab.torproject.org/tpo/core/onionmasq/-/issues/112
#
#pytest_docker:
#  stage: test
#
#  image: docker:stable-dind
#
#  services:
#    - docker:dind
#
#  before_script:
#    - apk add --no-cache
#      python3 python3-dev py3-pip gcc git curl build-base
#      autoconf automake py3-cryptography linux-headers
#      musl-dev libffi-dev openssl-dev openssh
#    - python3 -m pip install ansible molecule-plugins[docker] pytest-ansible
#    - python3 --version
#    - ansible --version
#    - molecule --version
#    - pytest --version
#    - docker info
#
#  script:
#    - pytest -k docker -r A

# Podman CI workflow
# This may also need privileged containers.
pytest_podman:
  stage: test

  image:
    name: containers.torproject.org/tpo/tpa/base-images/podman:bookworm
    docker:
      user: root

  before_script:
    - apt-get update
    - apt install -y sudo python3-pip ansible
    - python3 -m pip install molecule-plugins[podman] pytest-ansible --break-system-packages
    - sudo -u podman python3 --version
    - sudo -u podman ansible --version
    - sudo -u podman molecule --version
    - sudo -u podman pytest --version
    - sudo -u podman podman info

  script:
    - sudo -u podman pytest -k podman -r A

# Run Ansible tests directly in the CI containers
pytest_local:
  stage: test

  image: debian:bookworm

  before_script:
    - apt-get update
    - apt install -y python3-pip ansible
    - python3 -m pip install molecule pytest-ansible --break-system-packages
    - python3 --version
    - ansible --version
    - molecule --version
    - pytest --version

  script:
    - pytest -k local -r A

LICENSE

0 → 100644
+674 −0

File added.

Preview size limit exceeded, changes collapsed.

README.md

0 → 100644
+10 −0
Original line number Diff line number Diff line
# Ansible role for Onionprobe

This [Ansible][] role manages [Onionprobe][] installations.

## Variables

Check [defaults/main.yml](defaults/main.yml) for a commented list of variables.

[Ansible]: https://ansible.com
[Onionprobe]: https://gitlab.torproject.org/tpo/onion-services/onionprobe

defaults/main.yml

0 → 100644
+52 −0
Original line number Diff line number Diff line
---
#
# Basic
#

# Control the managed node's mode of operation
onionprobe_project_name: onionprobe-monitor
onionprobe_mode: monitor
onionprobe_config_generation_script: ''
onionprobe_config: ''
onionprobe_configurator_entrypoint: ''
onionprobe_configurator_params: ''
onionprobe_container_runtime: 'docker'

#
# Monitor mode
#

# Whether to automatically enable the service
onionprobe_monitor_enable_service: true

# User, group and folder
onionprobe_monitor_user: onionprobe-monitor
onionprobe_monitor_service: onionprobe-monitor
onionprobe_monitor_uid: 2000
onionprobe_monitor_gid: 2000
onionprobe_monitor_path: /var/lib/onionprobe-monitor

# Repository
onionprobe_repo: https://gitlab.torproject.org/tpo/onion-services/onionprobe.git

# Prometheus
onionprobe_monitor_prometheus_web_external_url: 'http://localhost:9090'

# Grafana
onionprobe_monitor_grafana_database_password: unsafe-password-please-change
onionprobe_monitor_grafana_smtp_enabled: false
onionprobe_monitor_grafana_smtp_host: localhost:25
onionprobe_monitor_grafana_smtp_user: ''
onionprobe_monitor_grafana_stmp_password: ''
onionprobe_monitor_grafana_smtp_starttls_policy: ''
onionprobe_monitor_grafana_server_domain: ''
onionprobe_monitor_grafana_server_root_url: ''
onionprobe_monitor_grafana_plugins_enable_alpha: false

# Alertmanager
onionprobe_monitor_alertmanager_template: alertmanager/alertmanager.yml.j2
onionprobe_monitor_smtp_smarthost: mail.example.org:587
onionprobe_monitor_smtp_email: changeme@example.org
onionprobe_monitor_smtp_username: changeme
onionprobe_monitor_smtp_auth_password: changeme
onionprobe_monitor_altermanager_default_recipient_email: changeme@example.org
Loading