On the effort to make Sahara more user and operators friendly
we are splitting the plugins from Sahara core.
The main goal of this change is to facilitate installation,
maintainance and upgrade of plugins. With the plugins outside
the main Sahara code, operators will be able to install a subset
of plugins, as well as upgrade to newer versions of the plugins
without having to wait for a new version of OpenStack to be
released. As well, it aims to facilitate new contributors to
develop and maintain their own plugins.
Sahara Spec: https://specs.openstack.org/openstack/sahara-specs/specs/rocky/plugins-outside-sahara-core.html
Change-Id: I7ed0945fd82e37daaf6b29f947d3dba06db9d158
The stable link for artifacts is going to be tarballs.openstack.org/sahara-extra,
which matches the name of the repository and it is more consistent
with the way the publishing system works.
Also use https.
Change-Id: Iacce6e6397b2d8d812964d56a33f9ea82901a3d6
Move the common part of CDH plugin code into base class
to make it easier to upgrade new CDH version.
Change-Id: I233f64e473b35291459ddeaddaeecc4f297ae408
Partial-implements: bp refactor-cdh-plugin
In module config_helper of CDH plugin, we have a config SWIFT_LIB_URL
and EXTJS_LIB_URL. Improve their config descriptions by:
1. 'VM' should be 'VMs'.
2.' downloaded from' to 'downloaded by' '
Change-Id: Iae5522d37f78172bf75a9b52acb8b48164d81e6a
Closes-Bug: #1550135
This commit encapulate CDH plugin config_helper into class for a better
extensibility.
Changes in config_helper:
* Create sahara/plugins/cdh/config_helper.py and move general parts to
ConfigHelper.
* Make ConfigHelper a singleton.
* Provide an instance of ConfigHelper to minimize changes outside.
* Remove function _prepare_value and use lambda instead.
* Add method _load_and_init_configs to load files and convert dict to
Config object.
* Move some long string into file.
Changes outside config_helper:
* change mudules depending on config helper to import config_helper.config
Partially Implements: blueprint cdh-plugin-refactoring
Change-Id: I09c36c4716c4f5ac382a9687a4a45857e912d2ae
We use v5 and v5.3.0 to put different python files for CDH5 and
CDH5.3.0. CDH5 is CDH5.0.0, we use the name "CDH5" instead of
"CDH5.0.0" for backward support. Currently since CDH5.0.0 does
not support cm_api>6, we cannot use first_run API in CDH5.0.0, so
we only implemented parts of the services that we implemented in
CDH5.3.0.
implements bp: cdh-version-management
Change-Id: I3b3058f25912ddf6206d64db88ac40138a45a53f
We add more services support in CDH plugin, including Flume, Key-Value
Store Indexer, Sentry, SOLR, SQOOP, and Impala.
implements bp:add-cdh-more-services
Change-Id: I4262810026b0d65ef195829549f8c99bdfe94c2f
Features:
* cluster provisioning
* scaling
* edp
* validation
* swift support
TODO (in other CRs):
* unit tests
* integration tests
* data locality
partially implement: blueprint cdh-plugin
Change-Id: Ie231c434d61ba9a379a6ee2fd0f0bf2af21ce44d