Since the later logic will add role if the user role is not
found. "die_if_not_set" check will exit the main script.
Closes-Bug: #1389714
Change-Id: I995cf357d09267fee55e44575e3e301bcffebca3
This adds builtin rpc and db traces to Heat, as well as
some toplevel stack methods to aid in reading the output.
A 'profiler' config group is added to enable profiling.
Change-Id: Ie5c1c8f1931f59e4d4bcf1ec3b791f55984eb6d2
Closes-bug: #1363782
This is a legacy script from the tools/openstack days, so we don't
need it now as that script no longer exists.
Change-Id: Iddcd76739447e65fcbf4f4bac517cf4fd919fac9
Closes-Bug: #1376712
This also adds a deprecation warning.
This also changes the default to use Ceilometer.
Release message:
Anyone deploying Heat should not be using OS::Heat::CWLiteAlarm, but
OS::Ceilometer::Alarm.
CWLiteAlarm should be explictly disabled in /etc/heat/heat.conf by
setting "enable_cloud_watch_lite=false". This will stop Heat from
running a period task check for alarms.
DocImpact
Change-Id: I2a10c14772bdafc001e211d7e94502ac1f6b32b1
Closes-bug: #1322128
This change does the following:
- reverts commit 04de60093b602c2eac4a612df5d4a2e31424a25d
- reimplements Resource.is_using_neutron to check for neutron by
attempting to create a neutron client
- fix mocking in tests for changes which landed after 04de600
If there is no 'network' entry in the service catalog then
keystoneclient will raise an EndpointNotFound. The context will
already have a keystone client cached which has a full service catalog
locally, so calling is_using_neutron should have no particular overhead.
This fixes a tripleo regression where the autodetection is triggered
before keystone is ready, so that heat-engine fails to start. This
race does not affect devstack as keystone is fully configured before
heat services are started.
Not adding config option networking_service will also prevent
extra work required by downstream installation tools.
Change-Id: I45a6154fa560f672d8d1942bf57f39601110bfc6
Closes-Bug: #1362812
Adds a heat.conf option to set the OpenStack component responsible for
networking, and makes heat-engine auto-discover the networking service
on start up if such option is not set.
Also adds a convenience method to Resource class to let resources decide
what networking service to use.
Implements blueprint discover-networking-service
Change-Id: If7121089068cc2d2774bedb73e4e252b520eb5b3
This patch makes the default logging level of heat-keystone-setup-domain
to be WARNING and the 'urllib3.connectionpool' logging level to be
WARNING as well.
The intent is to remove unncecessary logging information from urllib3
library.
Closes-Bug: 1358093
Change-Id: I650e80aa1093c8c7e7c5dac3694d58139d2ec260
This patch added additional exception handling so that a non-admin user
will understand why his/her attempt to run this script failed.
Change-Id: I20a593f613931de0b3c13094a2e0b6c2f2b0eea1
Closes-Bug: 1354687
Build upon cceda95a35f18f5f7b52daaf0662a4cd3768b3ac apply Oslo systemd
module. It was imported in aef33d2d716c064f1f571c334fd36b1ea5928d5c. It
also drops heat.common.systemd and deprecates onready configuration
parameter.
Oslo commit 53e1214c092f09e3851b1a1b55289a93a72b09ec
Change-Id: I80f325c9be9c171c2dc8d5526570bf64f0f87c78
When using keystoneclient (heat.common.heat_keystoneclient) to
perform actions, support the use of domain_name instead of
exclusively domain_id.
The new config option to use domain_name instead of domain_id
is ``stack_user_domain_name``. If ``stack_user_domain_id`` option
is set (renamed from ``stack_user_domain``), the new
domain_name-specific option will be ignored.
Change-Id: I0d3937a98b95100ccaaaf7a46d3ed722aba27de3
Closes-Bug: #1313003
heat-keystone-setup-domain is logging
the password to the log file. This patch
removes the logging as it's security concerns
Change-Id: I0f017a9c114ac60ea9f5e0df012334ead8cb434a
Closes-bug: #1336225
oslo.config provides api register_cli_opts
to register multiple opts at once and same
is used in this patch to replace the
register_opts
Change-Id: I80b9bf37308c9e7085947200bc7c393c15e5e29d
Closes-bug: #1336224
Move from oslo RPC to oslo.messaging.
Implements: blueprint oslo-messaging
Co-Authored-By: sdake@redhat.com
Change-Id: I2d222c248dd2cd405b8ec35c4c8198ed001fb69f
Overriding CONF.default_log_levels means we loose some explicitly set
default values such as 'iso8601=WARN'. Also explicitly overriding
CONF.default_log_levels means that default_log_levels cannot be set in a
config file.
Change-Id: Ib5103b88ec3f9ccd9d516032c6a13dc2fa4bcb5e
Currently we create the ThreadGroupManager and EngineListener
objects in the service constructor, which is not necessarily
going to work if multiple worker processes are specified in
the config file (which fork multiple workers after the constructor).
The ThreadGroupManager appears to work, even when it is created before
the fork, but this is due to some magic in the oslo ProcessLauncher
implementation which decouples parent/child use of the eventlet hub.
So instead, we move all service startup code into the start() method,
which is the entry point for services, triggered via the oslo Services
class run_service method:
- Don't create anything common to the workers in the constructor
- Move ThreadGroup and EngineListener creation into start()
- Create the periodic tasks from bin/heat-engine, which means
the periodic tasks will only be created by the parent, not
duplicated in every worker process.
These changes should mean we work correctly with both the ServiceLauncher
(num_engine_workers==1) and ProcessLauncher(num_engine_workers>1) oslo
abstractions, and solves the issues observed when running multiple
workers with the impl_qpid rpc_backend.
Change-Id: If3a11050a03660560a364dec871f85c4b56c1c25
Closes-Bug: #1321303
Updated a set of files to add missing translation support in the
log messages.
Change-Id: I58d561c5e1ecff550483ee0be696999e927c98ad
Partial-Bug: #1321283
After enhancements to Oslo Message class, re-enable lazy translation to
enable REST API responses to be translated to the requested user locale.
bp i18n-messages
Change-Id: I4be508858547029d454412746609fd380af415c1
This patch fixes all the missed and newly introduced violations of the H306
style checking rule and enables it in tox.
Change-Id: I5566e66421d5397c0103958f02ea38e6e3c68892
Implements: blueprint reduce-flake8-ignored-rules (partial)
This reverts commit 56041687844c7c04bfcad974a07ac3ff35f99e5c.
Problems have been reported on systems using QPID. The gate only tests
RabbitMQ.
Change-Id: Iaf83dc7582835ce5bf4534116c918640da7373aa
Partial-Bug: #1321303
The engine is single-threaded and thus needs more workers to handle more
concurrent requests on a single machine.
Change-Id: I36117c3876f84a2ff7ba5576444fdbf7716cc69e
Rename it to heat-keystone-setup-domain and ship it in bin with the
other helper scripts. This will make it consumable by automated systems
and packaging.
Change-Id: I7914869377cd08b6201007aa0eb6b8a70d763254
This mirrors work done in other OpenStack projects
to add systemd notification support to signal that
a given process is ready to accept requests.
The heat-api, heat-api-cfn, heat-engine, and
heat-api-cloudwatch processes are all covered by
a new, single, 'onready' configuration file option.
Additionally, the sample configuration file has been
updated to match.
Implements: blueprint systemd-integration
Change-Id: I90d2b915e2568a65ed9ed78923c9982e19f9c948
Signed-off-by: Lon Hohberger <lhh@redhat.com>
Revert enabling lazy translation, which doesn't work in many places
because we're doing string concatenation.
This reverts commit 1864efa320aadbb4f5503c15345dd363bb3691c1, reversing
changes made to 92e3e3ce74dc1e3f75d51600072227c2e44016a6.
Closes-Bug: #1281644
Change-Id: Iac0be685f8bb60f81715c0dd3dbe35787e38ee39
After enhancements to Oslo Message class, re-enable lazy translation to
enable REST API responses to be translated to the requested user locale.
bp i18n-messages
Change-Id: I15ecffd678393c27c34336035d37915655e9f350
The heat-db-setup script wasn't creating the heat database with default
character set utf-8 which can cause the migrations to fail.
Closes-Bug: #1276880
Change-Id: I35861af66d70314285fa76bb148e403aeea4b654
Unset OS_SERVICE_TOKEN and OS_SERVICE_ENDPOINT temporarily to make
sure this command can run even if the OS_SERVICE_TOKEN and
OS_SERVICE_ENDPOIN exist in shell environment.
Remove die_if_not_set in get_data function, because there maybe no
data in get_data function, for example, if the heat user does not
exist, the die_if_not_set will be in error.
Remove die_if_not_set after keystone user-list for the same reason.
Change-Id: I132f975ac2da21e6ad7431ae326ad9bd538e4696
Closes-Bug: #1266670
get_column_num function searches the second line of command output,
to get the field number for a specific field.
But output of 'keystone user-list' may have an extra line: 'WARNING:
Bypassing authentication using a token & endpoint ...'
This messes up the functionality of get_column_num function
Closes-bug: #1260556
Change-Id: I8c6e7f939466154c5e31e6f019e20fb855e15878
Warn users, if heat-keystone-setup can only use localhost as $SERVICE_HOST.
And remove an extra whitespace.
Change-Id: I1b2a1b93212b6ab0ca092bb6c834255ee75176ca
Make sure heat-manage does not use heat.conf logging
in the heat-db-setup script as the logging directory
might not be setup yet.
Change-Id: I16db3fde1c7bfe5f027c77f2a25ffa2104d15491
Closes-bug: #1191925
Oslo version 96d1f887dda21b43ba4376187f31953dee6f5273
This commit just migrates Heat to new db related code from Oslo
Partially implements blueprint oslo-db-support
Change-Id: Ib0de40a70857fb3e029a2282f06746269a628c71
Late in the Havana cycle bug 1225099 was found in the lazy
translation code, and to be safe it was decided to disable lazy
translation for Havana. This change does that.
Change-Id: Ia934a7df9386baf6ae8eb9ff48c24386c47ecd23
Partial-bug: 1225099