Red Hat Bugzilla – Bug 975668
[Docs] [Tracker] Migrate ovirt-engine-setup and AIO plugin to otopi
Last modified: 2015-09-22 09:09 EDT
* Quick Start?
+++ This bug was initially created as a clone of Bug #967508 +++
cloned for RHEV-M 3.3 tracking
+++ This bug was initially created as a clone of Bug #911191 +++
engine-setup, engine-cleanup, engine-upgrade and the AIO plugin should be migrated to otopi.
--- Additional comment from Alon Bar-Lev on 2013-05-09 07:52:32 EDT ---
packaging: setup: re-write using otopi
We introduce a complete rewrite of ovirt-engine setup, which includes
engine-setup, engine-upgrade, engine-cleanup.
The new implementation is installed side-by-side, user may have a choice
which implementation to use.
Implementation are incompatible, once setup using legacy, upgrade and
cleanup will not work using the new implementation and vise versa.
Answer file is not compatible between implementations.
Implementation is not feature complete, setup is is almost complete,
cleanup needs more work to clean files that where partially modified,
currently, setup is not able to upgrade non-new implementation setup.
Fully support development environment installation.
Up until now, developers had maintained parallel environment, manually
customized, partial featured.
Now, developers may setup product much like production using unprivileged
user, custom location and custom database. For more information refer to
Platform independent implementation
The new implementation can/should be able to run in multiple
distributions, setting up valid engine environment. So far tested
fedora, rhel, centos, gentoo, ubuntu.
Split between host provisioning and database setup.
Host provisioning is the part setup can configure the database package on
host to be able to serve the application. The provisioning phase is now
completely optional and is supported only at legacy distributions.
Database setup is the part that a schema is created in existing
database. This enables the dba to provide ovirt administration
unprivileged database user and database for his use.
Pluggable, mission centric, consistent, modern, customizable implementation.
Reuse the otopi infrastructure that is also used for host-deploy, and
future reuse of setup for dwh and reports components.
Signed-off-by: Alon Bar-Lev <firstname.lastname@example.org>
Signed-off-by: Sandro Bonazzola <email@example.com>
Signed-off-by: Alex Lourie <firstname.lastname@example.org>
--- Additional comment from Alon Bar-Lev on 2013-05-10 05:19:35 EDT ---
During implementation, the pki configuration were moved from vdc_options to /etc/ovirt-engine/engine.conf[.d/*].
These are determine by setup and should not be changed, so there is no reason to store them in database, and handle setup/upgrade that are database related.
Another reason was that the root application (/) should serve some of these resources, and having root access database is undesired.
otopi -- oVirt Task Oriented Pluggable Installer/Implementation
Standalone plugin based installation framework to be used to setup
system components. The plugin nature provides simplicity to
add new installation functionality without the complexity of the state
and transaction management.
At the core of the implementation there is environment dictionary and
a flow of stages within plugins. The environment can be modified using
command-line parameters, configuration file, or dialog customization.
* otopi is a library for component installation.
* Modular, task oriented implementation.
* Supports pluggable manager dialog protocol, provides
human and machine dialogs.
* Localization support, gettext enabled.
* Local and remote execution modes are supported.
* Distribution independent implementation (core).
* Compatible with python-2.6, python-2.7, python-3.2
variables ::= name=type:value variables | APPEND:name=type:value | ''
type ::= none | bool | int | str | multi-str
APPEND: prefix appends as collon list string.
Set the following environment:
This will trigger command-line prompt before validation and
Refer to README.dialog for more information.
Configuration files used to override the environment.
Config files to be read:
default is applied during setup without override.
init is applied during setup with override.
override is applied before customization with override.
enforce is applied after customization with override.
type ::= none | bool | int | str | multi-str
Refer to README.environment
Using sudo it is possible to escelate priviledge. Use the following
user1 ALL=(ALL) NOPASSWD: /bin/sh
Edited topic Upgrading to Red Hat Virtualization Manager 3.3 [ 22421-558744 ] and added a note on the migration to otopi. Also changed the commands to 'engine-setup' to reflect the new command syntax. The screen output of step 4. was also updated to that actually seen on screen.
Edited topic Updating Red Hat Enterprise Virtualization Manager [ 7524-558768 ] and added a note on the migration to otopi. Also changed the commands to 'engine-setup' to reflect the new command syntax.
Edited topic Checking for Red Hat Enterprise Virtualization Manager Updates [ 9941-558748 ] and changed all screen output to that actually seen on screen. Also changed the update command to 'engine-upgrade-check' to reflect the new command syntax.
Moving to ON_QA.