Allow to install web interface for OMSA

This commit is contained in:
Jeremy Gardais 2019-03-28 14:49:51 +01:00
parent e112630ca1
commit d97d73439f
Signed by: jegardai
GPG Key ID: E759BAA22501AF32
4 changed files with 51 additions and 3 deletions

View File

@ -1,6 +1,7 @@
## v1.X.Y ## v1.X.Y
### Enhancements ### Enhancements
* Allow to install web interface for OMSA.
* Install idrac8 (and above) package by default. * Install idrac8 (and above) package by default.
* Install libssl.1.0.0 from Dell repo as base package. * Install libssl.1.0.0 from Dell repo as base package.
* Install libxslt1.1 as dependency for om.* apps. * Install libxslt1.1 as dependency for om.* apps.

View File

@ -15,10 +15,12 @@ A role to manage Openmanage installation and configuration.
## Role Variables ## Role Variables
* **openmanage__repositories**: List of APT repositories that can provide OpenManage. Each entry is a dict [default: `See default/main.yml`]. * **openmanage__repositories**: List of APT repositories that can provide OpenManage. Each entry is a dict [default: `See default/main.yml`].
* **openmanage__deploy_state**: The desired state this role should achieve. [default for Dell hardware: `present`]. * **openmanage__deploy_state**: The desired state this role should achieve [default for Dell hardware: `present`].
* **openmanage__install_recommends**: If recommended packages should be install. [default: `False`]. * **openmanage__install_recommends**: If recommended packages should be install [default: `False`].
* **openmanage__dep_packages**: List of dependencies packages to be able to run racadm [default: `See default/main.yml`]. * **openmanage__dep_packages**: List of dependencies packages to be able to run racadm [default: `See default/main.yml`].
* **openmanage__base_packages**: List of base packages for all racadm base usage [default: `See default/main.yml`]. * **openmanage__base_packages**: List of base packages for all racadm base usage [default: `See default/main.yml`].
* **openmanage__webgui_state**: The desired state for web interface of OMSA [default : `absent`].
* **openmanage__webgui_packages**: List of packages to provide web interface to OMSA [default: `See default/main.yml`].
## Example Playbook ## Example Playbook
@ -31,12 +33,23 @@ A role to manage Openmanage installation and configuration.
tags: ['role::openmanage', 'ipr', 'idrac'] tags: ['role::openmanage', 'ipr', 'idrac']
``` ```
* Enable web interface for OMSA (on https://<ip_address>:1311/):
``` yaml
- hosts: mynode.DOMAIN
roles:
- role: ipr-cnrs.openmanage
openmanage__webgui_state: "present"
tags: ['role::openmanage', 'ipr', 'idrac']
```
## Configuration ## Configuration
This role will: This role will:
* Add an APT repository in order to provide OpenManage. * Add an APT repository in order to provide OpenManage.
* Install dependencies packages. * Install dependencies packages.
* Install basic packages for all racadm usage. * Install basic packages for all racadm usage.
* Install and enable web interface on https://<ip_address>:1311 if requested.
* Fix idrac7's executable permissions. * Fix idrac7's executable permissions.
* Fix libssl error RAC1170. * Fix libssl error RAC1170.

View File

@ -87,4 +87,25 @@ openmanage__base_packages:
- 'srvadmin-server-snmp' - 'srvadmin-server-snmp'
- 'srvadmin-storageservices' - 'srvadmin-storageservices'
# ]]] # ]]]
# .. envvar:: openmanage__webgui_state [[[
#
# What is the desired state for web interface of OMSA? Possible options:
#
# ``absent``
# Default. Ensure that service is stopped and packages related to web interface
# are uninstalled.
#
# ``present``
# Install related packages and start the service.
#
openmanage__webgui_state: "absent"
# ]]]
# .. envvar:: openmanage__webgui_packages [[[
#
# List of packages to provide web interface to OMSA.
#
openmanage__webgui_packages:
- 'srvadmin-webserver'
# ]]]
# ]]] # ]]]

View File

@ -53,7 +53,7 @@
until: pkg_dep_result is success until: pkg_dep_result is success
when: (openmanage__deploy_state == "present") when: (openmanage__deploy_state == "present")
## Manage base system packages ## Manage base system packages
- name: Ensure base packages are in there desired state - name: Ensure base packages are in there desired state
package: package:
name: '{{ item }}' name: '{{ item }}'
@ -64,6 +64,19 @@
register: pkg_base_result register: pkg_base_result
until: pkg_base_result is success until: pkg_base_result is success
## Manage webgui packages
- name: Ensure webgui packages are in there desired state
package:
name: '{{ item }}'
state: '{{ "present" if (openmanage__deploy_state == "present") and
(openmanage__webgui_state == "present")
else "absent" }}'
install_recommends: '{{ openmanage__install_recommends | bool }}'
with_flattened:
- '{{ openmanage__webgui_packages | to_nice_json }}'
register: pkg_webgui_result
until: pkg_webgui_result is success
# Executable [[[1 # Executable [[[1
## Fix some permissions ## Fix some permissions
- name: Ensure Executables can be run - name: Ensure Executables can be run