diff --git a/doc/getting-started.md b/doc/getting-started.md index acdb5dfd..fe55503d 100644 --- a/doc/getting-started.md +++ b/doc/getting-started.md @@ -85,15 +85,16 @@ After Icinga2 is up and running you can move forward to add IcingaWeb2 UI. Pleas tags: icinga2-no-ui - role: icinga2-ansible-web2-ui + icinga2_db_pass: "CHANGEME" icinga2_web2_db_pass: "CHANGEME" icinga2_ido_mysql_configuration: | library "db_ido_mysql" object IdoMysqlConnection "ido-mysql" { - user = "{{ icinga2_web2_db_user }}" - password = "{{ icinga2_web2_db_pass }}" + user = "{{ icinga2_db_user }}" + password = "{{ icinga2_db_pass }}" host = "localhost" - database = "{{ icinga2_web2_db }}" + database = "{{ icinga2_db }}" } tags: icinga2-ansible-web2-ui diff --git a/icinga2-ansible-no-ui/defaults/main.yml b/icinga2-ansible-no-ui/defaults/main.yml index ca894e03..ab6c53f9 100644 --- a/icinga2-ansible-no-ui/defaults/main.yml +++ b/icinga2-ansible-no-ui/defaults/main.yml @@ -1,20 +1,20 @@ --- # defaults file for icinga2-ansible-no-ui -icinga2_key: "http://packages.icinga.org/icinga.key" +icinga2_key: "https://packages.icinga.org/icinga.key" icinga2_debmon_key: "http://debmon.org/debmon/repo.key" icinga2_deb_repos: - - { repo: "deb http://packages.icinga.org/{{ ansible_distribution|lower }} icinga-{{ ansible_distribution_release }} main" } - - { repo: "deb-src http://packages.icinga.org/{{ ansible_distribution|lower }} icinga-{{ ansible_distribution_release }} main" } + - { repo: "deb https://packages.icinga.org/{{ ansible_distribution|lower }} icinga-{{ ansible_distribution_release }} main" } + - { repo: "deb-src https://packages.icinga.org/{{ ansible_distribution|lower }} icinga-{{ ansible_distribution_release }} main" } icinga2_debmon_repo: "deb http://debmon.org/debmon debmon-{{ ansible_distribution_release }} main" icinga2_pkg: - { package: "icinga2" } - { package: "nagios-plugins" } -icinga2_url_yum: "http://packages.icinga.org/epel/ICINGA-release.repo" -icinga2_url_yum_fedora: "http://packages.icinga.org/fedora/ICINGA-release.repo" +icinga2_url_yum: "https://packages.icinga.org/epel/ICINGA-release.repo" +icinga2_url_yum_fedora: "https://packages.icinga.org/fedora/ICINGA-release.repo" icinga2_repo_yum: "/etc/yum.repos.d/ICINGA-release.repo" icinga2_yum: diff --git a/icinga2-ansible-no-ui/tasks/icinga2_configure.yml b/icinga2-ansible-no-ui/tasks/icinga2_configure.yml index efaec1bf..d51b4e01 100644 --- a/icinga2-ansible-no-ui/tasks/icinga2_configure.yml +++ b/icinga2-ansible-no-ui/tasks/icinga2_configure.yml @@ -6,6 +6,7 @@ owner=root group=root mode=0644 + when: "{{ icinga2_conf_global | default('') | length}}" notify: - restart icinga2 @@ -16,5 +17,6 @@ owner=root group=root mode=0644 + when: "{{ check_commands | default('') | length}}" notify: - restart icinga2 diff --git a/icinga2-ansible-web2-ui/README.md b/icinga2-ansible-web2-ui/README.md index d73c544e..6a97454a 100644 --- a/icinga2-ansible-web2-ui/README.md +++ b/icinga2-ansible-web2-ui/README.md @@ -43,6 +43,7 @@ Example Playbook - role: icinga2-ansible-web2-ui icinga2_db_pass: "CHANGEME" + icinga2_web2_db_pass: "CHANGEME" icinga2_ido_mysql_configuration: | library "db_ido_mysql" @@ -70,4 +71,3 @@ Author Information ------------------ Valentino Gagliardi - Icinga Dev Team - diff --git a/icinga2-ansible-web2-ui/defaults/main.yml b/icinga2-ansible-web2-ui/defaults/main.yml index cf3786c4..12168def 100644 --- a/icinga2-ansible-web2-ui/defaults/main.yml +++ b/icinga2-ansible-web2-ui/defaults/main.yml @@ -8,6 +8,13 @@ icinga2_mysql_schema_rh: "/usr/share/icinga2-ido-mysql/schema/mysql.sql" icinga2_ido_mysql_conf: "/etc/icinga2/features-available/ido-mysql.conf" icinga2_ido_mysql_configuration: "none" + +icinga2_web2_db: "icingaweb" +icinga2_web2_db_pass: "icingaweb" +icinga2_web2_db_user: "icingaweb" +icinga2_web2_mysql_schema_rh: "/usr/share/doc/icingaweb2/schema/mysql.schema.sql" + + enablerepo: "base" icinga2_web2_ui_rpm: diff --git a/icinga2-ansible-web2-ui/tasks/icinga2_web2_ui_RedHat_install.yml b/icinga2-ansible-web2-ui/tasks/icinga2_web2_ui_RedHat_install.yml index 78ea7fff..9daf59b0 100644 --- a/icinga2-ansible-web2-ui/tasks/icinga2_web2_ui_RedHat_install.yml +++ b/icinga2-ansible-web2-ui/tasks/icinga2_web2_ui_RedHat_install.yml @@ -9,22 +9,22 @@ state=latest when: ansible_pkg_mgr == "dnf" -- name: Create a Database for Icinga2 +- name: Create a IDO Database for Icinga2 mysql_db: name={{ icinga2_db }} state=present - register: icinga_web2_db + register: icinga_ido_db -- name: Create Icinga Database User and configure Grants - mysql_user: name={{ icinga2_db }} +- name: Create Icinga2 IDO Database User and configure Grants + mysql_user: name={{ icinga2_db_user }} password={{ icinga2_db_pass }} state=present - priv="{{ icinga2_db_user }}.*:GRANT,INSERT,SELECT,UPDATE,DELETE,DROP,CREATE VIEW,INDEX,EXECUTE" + priv="{{ icinga2_db }}.*:GRANT,INSERT,SELECT,UPDATE,DELETE,DROP,CREATE VIEW,INDEX,EXECUTE" - name: Import the IDO Schema on Icinga Web Database (only once) mysql_db: name={{ icinga2_db }} state=import - target={{ icinga2_web_mysql_schema_rh }} - when: icinga_web2_db.changed == true + target={{ icinga2_mysql_schema_rh }} + when: icinga_ido_db.changed == true - name: Configure Icinga2 Ido Mysql Feature template: src=ido-mysql.conf.j2 @@ -57,6 +57,32 @@ tags: icinga2-ansible-web2-ui-install when: ansible_pkg_mgr == "dnf" + +- name: Create a Web Database for Icinga2 + mysql_db: name={{ icinga2_web2_db }} + state=present + register: icinga_web_db + +- name: Create Icinga2 Web Database User and configure Grants + mysql_user: name={{ icinga2_web2_db_user }} + password={{ icinga2_web2_db_pass }} + state=present + priv="{{ icinga2_web2_db }}.*:GRANT,INSERT,SELECT,UPDATE,DELETE,DROP,CREATE VIEW,INDEX,EXECUTE" + +- name: Import the Web Schema on Icinga Web Database (only once) + mysql_db: name={{ icinga2_web2_db }} + state=import + target={{ icinga2_web2_mysql_schema_rh }} + when: icinga_web_db.changed == true + +- name: Configure Icinga2 Ido Mysql Feature + template: src=ido-mysql.conf.j2 + dest={{ icinga2_ido_mysql_conf }} + backup=yes + owner=icinga + group=icinga + mode=0640 + - name: Restart HTTPD and Icinga2 to Apply the Configuration service: name={{ item }} state=restarted