{"id":20504064,"url":"https://github.com/icinga/chef-icingaweb2","last_synced_at":"2025-04-13T20:48:24.576Z","repository":{"id":145046402,"uuid":"111073207","full_name":"Icinga/chef-icingaweb2","owner":"Icinga","description":"Chef cookbook for Icinga Web 2","archived":false,"fork":false,"pushed_at":"2018-10-23T06:50:53.000Z","size":39,"stargazers_count":3,"open_issues_count":9,"forks_count":7,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-13T20:48:09.809Z","etag":null,"topics":["chef","cookbooks","icingaweb2"],"latest_commit_sha":null,"homepage":null,"language":"Ruby","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Icinga.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-11-17T07:41:28.000Z","updated_at":"2018-12-11T15:57:03.000Z","dependencies_parsed_at":null,"dependency_job_id":"3da4bd4c-6460-4ab7-8d9f-ff3aedd529e4","html_url":"https://github.com/Icinga/chef-icingaweb2","commit_stats":null,"previous_names":[],"tags_count":1,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Icinga%2Fchef-icingaweb2","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Icinga%2Fchef-icingaweb2/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Icinga%2Fchef-icingaweb2/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Icinga%2Fchef-icingaweb2/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Icinga","download_url":"https://codeload.github.com/Icinga/chef-icingaweb2/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248782280,"owners_count":21160716,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["chef","cookbooks","icingaweb2"],"created_at":"2024-11-15T19:36:08.257Z","updated_at":"2025-04-13T20:48:24.548Z","avatar_url":"https://github.com/Icinga.png","language":"Ruby","funding_links":[],"categories":[],"sub_categories":[],"readme":"icingaweb2 Cookbook\n================\n\n[![Cookbook](https://img.shields.io/github/tag/Icinga/chef-icingaweb2.svg)](https://github.com/Icinga/chef-icingaweb2) [![Build Status](https://travis-ci.org/Icinga/chef-icingaweb2.svg?branch=master)](https://travis-ci.org/Icinga/chef-icingaweb2)\n\n[Icinga Logo](https://www.icinga.com/wp-content/uploads/2014/06/icinga_logo.png)\n\nThis is a [Chef] cookbook to manage [Icingaweb2].\n\n\n\u003e\u003e For Production environment, always prefer the [most recent release](https://supermarket.chef.io/cookbooks/icingaweb2).\n\n\n## Icingaweb2 Setup\n\nCurrently, `icingaweb2` can only be configured by accessing `/icingaweb2/setup`.\n\nAutomated configuration is not fully tested. Check out Github open [Issues] for more information.\n\n\n## Most Recent Release\n\n```ruby\ncookbook 'icingaweb2', '~\u003e 1.0.0'\n```\n\n\n## From Git\n\n```ruby\ncookbook 'icingaweb2', github: 'Icinga/chef-icingaweb2',  tag: 'v1.0.0'\n```\n\n\n## Repository\n\n```\nhttps://github.com/Icinga/chef-icingaweb2\n```\n\n\n## Supported OS\n\n- Amazon Linux\n- CentOS\n- Ubuntu\n\n\n## Supported Chef\n\n- Chef 12\n- Chef 13\n\n\n## Cookbook Dependency\n\n- icinga2repo\n- icinga2\n\n\n## Recipes\n\n- `icingaweb2::attributes` - icingaweb2 evaluated attributes\n\n- `icingaweb2::install` - install icingaweb2 packages\n\n- `icingaweb2::config` - icingaweb2 configuration files\n\n- `icingaweb2::ido` - configure icinga2 ido packages and load db schema\n\n- `icingaweb2::packages` - install icingaweb2 package dependencies\n\n- `icingaweb2::apache` - configure apache web server\n\n- `icingaweb2::default` - run_list recipe\n\n\n## Prepare Database\n\nThis cookbook requires a running database server. Database setup is not part of this cookbook and must be setup separately.\n\n### MySQL\n\nWhen using MySQL Database, a database and database user must be created with proper privileges for `icinga2 ido` and `icingaweb2`.\n\n```shell\ne.g. icinga2 ido database\ndatabase name : icinga\ndatabase user: icinga\ndatabasepassword: icinga\n\nmysql\u003e CREATE DATABASE icinga;\nmysql\u003e GRANT ALL PRIVILEGES ON icinga.* TO 'icinga'@'localhost' IDENTIFIED BY 'icinga';\nmysql\u003e FLUSH PRIVILEGES;\n```\n\n```shell\ne.g. icingaweb2 database\ndatabase name : icingaweb2\ndatabase user: icingaweb2\ndatabasepassword: icnigaweb2\n\nmysql\u003e CREATE DATABASE icingaweb2;\nmysql\u003e GRANT SELECT, INSERT, UPDATE, DELETE, DROP, CREATE VIEW, INDEX, EXECUTE ON icingaweb2.* TO 'icingaweb2'@'localhost' IDENTIFIED BY 'icingaweb2';\nmysql\u003e FLUSH PRIVILEGES;\n\n```\n\n### PgSQL\n\nTODO\n\n\n## How to Load Database Schema\n\nSet below attributes to `true` to load db schema using cookbook.\n\n- default['icingaweb2']['ido_db']['load_schema']\n- default['icingaweb2']['web2_db']['load_schema']\n\n\n## Cookbook Attributes\n\n * `default['icingaweb2']['setup_epel']` (default: `true`): if set includes recipe `yum-epel`\n\n * `default['icingaweb2']['setup_config']` (default: `false`): [Experimental] if set creates ini configuration files and also enable modules\n\n * `default['icingaweb2']['modules']` (default: `%w[doc monitoring translation]`): enable icingaweb2 modules\n\n * `default['icingaweb2']['install_method']` (default: `package`): icingaweb2 install method, options: package, source\n\n * `default['icingaweb2']['source_url']` (default: `git://git.icinga.org/icingaweb2.git`):\n\n * `default['icingaweb2']['ignore_version']` (default: `false`): ignore icingaweb2 package version\n\n * `default['icingaweb2']['web_engine']` (default: `apache`): icingaweb2 web server\n\n * `default['icingaweb2']['version']['icingaweb2']` (default: `2.4.2-1`): icingaweb2 package version\n\n * `default['icingaweb2']['version']['icingacli']` (default: `2.4.2-1`): icingacli package version\n\n * `default['icingaweb2']['version']['icinga-ido']` (default: `2.8.0-1`): icinga-ido package version\n\n * `default['icingaweb2']['user']` (default: `calculated`): icingaweb2 user\n\n * `default['icingaweb2']['group']` (default: `calculated`): icingaweb2 user group\n\n * `default['icingaweb2']['web_root']` (default: `/usr/share/icingaweb2`): icingaweb2 web root location\n\n * `default['icingaweb2']['web_uri']` (default: `/icingaweb2`): icingweb2 web uri\n\n * `default['icingaweb2']['conf_dir']` (default: `/etc/icingaweb2`): icingaweb2 config directory\n\n * `default['icingaweb2']['log_dir']` (default: `/var/log/icingaweb2`): icingaweb2 log directory\n\n * `default['icingawe2']['apache_modules']` (default: `calculated`): apache2 modules\n\n * `default['icingawe2']['apache_web2_template']` (default: `apache.vhost.icinga2_web2.erb`): apache2 vhost config template file\n\n * `default['icingawe2']['apache_conf_cookbook']` (default: `icingaweb2`): resource cookbook name\n\n * `default['icingawe2']['version_suffix']` (default: `calculated`): icingaweb2 package version suffix\n\n * `default['icingaweb2']['mysql_home']` (default: `/etc/mysql`): sets value for environment variable `MYSQL_HOME` for schema load\n\n * `default['icingaweb2']['mysql_version']` (default: `5.7`): if set true, install mysql client\n\n * `default['icingaweb2']['install_mysql_client']` (default: `false`): install mysql client using mysql official repository\n\n * `default['icingaweb2']['db_type']` (default: `mysql`): icinga2 database type for ido and web2, options: `mysql pgsql`\n\n\n## Icinga2 IDO Database Attributes\n\n * `default['icingaweb2']['ido_db']['load_schema']` (default: `false`): if set true, loads icinga2 ido db schema (`mysql.sql`)\n\n * `default['icingaweb2']['ido_db']['db_host']` (default: `localhost`): icinga2 ido db host\n\n * `default['icingaweb2']['ido_db']['db_port']` (default: `3306`): icinga2 ido db port\n\n * `default['icingaweb2']['ido_db']['db_name']` (default: `icinga`): icinga2 ido db name\n\n * `default['icingaweb2']['ido_db']['db_user']` (default: `icinga`): icinga2 ido db user\n\n * `default['icingaweb2']['ido_db']['db_password']` (default: `icinga`): icinga2 ido db password\n\n\n## Icingaweb2 Database Attributes\n\n  * `default['icingaweb2']['web2_db']['load_schema']` (default: `false`): if set true, loads icingaweb2 db schema (`mysql.schema.sql`)\n\n  * `default['icingaweb2']['web2_db']['db_host']` (default: `localhost`): icingaweb2 db host\n\n  * `default['icingaweb2']['web2_db']['db_port']` (default: `3306`): icingaweb2 db port\n\n  * `default['icingaweb2']['web2_db']['db_name']` (default: `icingaweb2`): icingaweb2 db name\n\n  * `default['icingaweb2']['web2_db']['db_user']` (default: `icingaweb2`): icingaweb2 db user\n\n  * `default['icingaweb2']['web2_db']['db_password']` (default: `icingaweb2`): icingaweb2 db password\n\n\n## Mysql Repository attributes\n\n * `default['icingaweb2']['mysql_repo']['yum']['description']` (default: `MySQL Community`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['yum']['gpgcheck']` (default: `true`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['yum']['enabled']` (default: `true`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['yum']['gpgkey']` (default: `https://raw.githubusercontent.com/Icinga/chef-icinga2/master/files/default/mysql_pubkey.asc`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['yum']['action']` (default: `:create`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['yum']['baseurl']` (default: `calculated`): yum repo resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['repo']` (default: `MySQL Community`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['keyserver']` (default: `keyserver.ubuntu.com`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['components']` (default: `calculated`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['deb_src']` (default: `false`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['action']` (default: `:add`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['uri']` (default: `http://repo.mysql.com/apt/#{node['platform']}/`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['distribution']` (default: `node['lsb']['codename']`): apt repository resource attribute\n\n * `default['icingaweb2']['mysql_repo']['apt']['key']` (default: `5072E1F5`): apt repository resource attribute\n\n\n## Contributing\n\n1. Fork the repository on Github\n2. Create a named feature branch (like `add_component_x`)\n3. Write your change\n4. Write tests for your change (if applicable)\n5. Run the tests (`rake \u0026 rake knife`), ensuring they all pass\n6. Write new resource/attribute description to `README.md`\n7. Write description about changes to PR\n8. Submit a Pull Request using Github\n\n\n## Copyright \u0026 License\n\nAuthors:: Virender Khatri and [Contributors]\n\n\u003cpre\u003e\nLicensed under the Apache License, Version 2.0 (the \"License\");\nyou may not use this file except in compliance with the License.\nYou may obtain a copy of the License at\n\n    http://www.apache.org/licenses/LICENSE-2.0\n\nUnless required by applicable law or agreed to in writing, software\ndistributed under the License is distributed on an \"AS IS\" BASIS,\nWITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\nSee the License for the specific language governing permissions and\nlimitations under the License.\n\u003c/pre\u003e\n\n\n[Chef]: https://www.chef.io/\n[Icingaweb2]: https://www.icinga.com/\n[Contributors]: https://github.com/Icinga/chef-icingaweb2/graphs/contributors\n[Issues]: https://github.com/Icinga/chef-icingaweb2/issues\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficinga%2Fchef-icingaweb2","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Ficinga%2Fchef-icingaweb2","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Ficinga%2Fchef-icingaweb2/lists"}