Duologic.sentry

Duologic.sentry

构建状态

此角色用于配置和安装使用 Python 的 Sentry。

要求

你可能需要安装 Postgresql 和 Redis 来运行 Sentry,见示例剧本。

注意:为机器提供足够的内存(2GB+),因为 Sentry 升级时有内存泄漏的问题。 (见 getsentry/sentry#8862

角色变量

你可能想生成一个强大的密钥:

sentry_secret_key: 'UNSAFE'

你可以在虚拟环境中使用 pip 安装额外的软件包,例如插件包:

sentry_extra_pip_packages:
  - 'sentry-plugins==9.0.0'

额外的软件包/插件可能需要一些额外的配置:

sentry_extra_conf_py: |
    GITHUB_APP_ID = 'GitHub 应用程序客户端 ID'
    GITHUB_API_SECRET = 'GitHub 应用程序客户端密钥'
    GITHUB_EXTENDED_PERMISSIONS = ['repo']

你可能想设置是否运行 清理 以及保留数据的天数,可以通过以下设置实现:

sentry_schedule_cleanup: true # 是否计划清理,默认是 true
sentry_cleanup_days: 30 # 保留旧数据的天数

请注意,这不会删除组织和项目配置等元数据。

请查看 defaults/main.yml 获取更多配置选项。

示例剧本

---
- become: true
  hosts: servers
  tasks:
    - name:  EL 上为 Redis 角色启用 EPEL repo
      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: 刷新处理程序,以便在 Sentry 安装之前重启服务
      meta: flush_handlers
    - import_role:
        name: sentry
      vars:
        sentry_db_user: 'sentry'
        sentry_secret_key: 'SAFE'
        sentry_extra_pip_packages:
            - 'sentry-plugins==9.0.0'

支持的发行版

该项目在 CentOS 7、Debian 9 和 Ubuntu 18.04 上进行了测试。

在其他发行版上已知的问题:

  • CentOS 6:python2.7 不可用
  • Ubuntu 16.04:redis-server 不可用
  • Debian 8:加密模块(可能还有 setuptools)存在问题

请查看这个 构建

测试

创建一个 Python 的 虚拟环境 并运行

pip install molecule docker-py
molecule test

许可证

MIT

作者信息

Jeroen Op 't Eynde, jeroen@simplistic.be

关于项目

Sentry installation with Python.

安装
ansible-galaxy install Duologic.sentry
许可证
mit
下载
10.7k
拥有者
Freelance Linux System engineer