Duologic.sentry
Duologic.sentry
Ten rol konfiguracji instaluje Sentry przy użyciu Pythona.
Wymagania
Prawdopodobnie będziesz potrzebować Postgresql i Redis, aby uruchomić Sentry. Zobacz przykład playbooka.
Uwaga: Zapewnij maszynie wystarczającą ilość pamięci (2GB+) ponieważ aktualizacja Sentry ma wyciek pamięci. (zobacz getsentry/sentry#8862)
Zmienne roli
Prawdopodobnie chcesz wygenerować silny klucz tajny:
sentry_secret_key: 'NIEBEZPIECZNY'
Możesz zainstalować dodatkowe pakiety za pomocą pip w wirtualnym środowisku, na przykład pakiet pluginów:
sentry_extra_pip_packages:
- 'sentry-plugins==9.0.0'
Dodatkowe pakiety/pluginy mogą wymagać dodatkowej konfiguracji:
sentry_extra_conf_py: |
GITHUB_APP_ID = 'ID klienta aplikacji GitHub'
GITHUB_API_SECRET = 'Sekret aplikacji GitHub'
GITHUB_EXTENDED_PERMISSIONS = ['repo']
Możesz ustawić, czy uruchomić cleanup i liczbę dni, przez które dane mają być przechowywane, ustawiając:
sentry_schedule_cleanup: true # czy zaplanować czyszczenie. Domyślnie true
sentry_cleanup_days: 30 # liczba dni przechowywania starych danych
Uwaga: to nie usuwa metadanych, takich jak konfiguracje organizacji i projektów.
Zobacz defaults/main.yml po więcej opcji konfiguracyjnych.
Przykład Playbooka
---
- become: true
hosts: servers
tasks:
- name: Włącz repo EPEL na EL dla roli Redis
yum: pkg=epel-release state=present
when: ansible_os_family == 'RedHat'
- import_role:
name: geerlingguy.redis
- import_role:
name: Duologic.postgresql_repository
vars:
postgres_repo_version: '9.5'
- import_role:
name: geerlingguy.postgresql
vars:
postgresql_hba_entries:
- {type: local, database: sentry, user: sentry, auth_method: trust}
- {type: local, database: all, user: postgres, auth_method: peer}
postgresql_databases:
- name: sentry
postgresql_users:
- name: sentry
db: sentry
role_attr_flags: SUPERUSER
- name: Opróżnij handlerów, aby usługi były zrestartowane przed instalacją Sentry
meta: flush_handlers
- import_role:
name: sentry
vars:
sentry_db_user: 'sentry'
sentry_secret_key: 'BEZPIECZNY'
sentry_extra_pip_packages:
- 'sentry-plugins==9.0.0'
Obsługiwane dystrybucje
Ten projekt jest testowany na CentOS 7, Debianie 9 oraz Ubuntu 18.04.
Znane problemy z innymi dystrybucjami:
- CentOS 6: python2.7 niedostępny
- Ubuntu 16.04: redis-server niedostępny
- Debian 8: problemy z kryptografią (i możliwie setuptools)
Zobacz tę budowę.
Testowanie
Utwórz wirtualne środowisko Pythona virtualenv i uruchom
pip install molecule docker-py
molecule test
Licencja
MIT
Informacje o autorze
Jeroen Op 't Eynde, jeroen@simplistic.be
ansible-galaxy install Duologic.sentry