Adding 'X-Forwarded-For' header support to enable Heat API
proxying
Implements: blueprint proxying-heat-api
Change-Id: I36a0d3dd3f672a485c4a9c0cd541b705033e9025
When deleting a stack during an abandon we want to refrain from deleting
the underlying resources, but there is no need to modify their templates to
do so. In fact, that is highly undesirable because it leaves the system in
an incoherent state, and causes problems for moving away from
templates-as-dictionaries to having an internal template API.
Change-Id: Iddbb3c53342da66f0edadb1e7a314c29a3eff75b
When autoscaling reloads a LoadBalancer, it adjusts the configuration by
manipulating the LoadBalancer's json_snippet in-place, which is a very bad
policy.
Instead, make a copy of the LoadBalancer resource's template, and use that
that to perform an update.
Change-Id: I0141c3ebc41462f797eb19182a949da0bb4b76a9
This patch introduces simple schema class for attributes.
There are two options avaliable for this schema:
- description
- support status
It gives ability for adding support status for each attribute.
Change-Id: I46cbf776f315cbe6414005cbee65da1cefdc5f7d
Closes-Bug: #1305584
resource_data_get_all queries the database for the data, and
transforms the results to a decrypted dict.
If the data is already loaded then it is unnecessary to do the
database query again.
This change allows data to be passed in as an optional argument.
If the passed data is not None then no database call will be made
and the dict transformation will occur on passed data.
Change-Id: I579225d9a3f3b038e0ca41a5900c58413d6e25ac
Related-Bug: #1306743
Adding info message in Stack state_set method.
This message would help in searching log files for stack
operations.
Change-Id: Idf462286530f235b954c2bf7fda134a8e02b0bd2
All existing resources use property schema, where all properties defined
before they will be used. So Docker resource should have same
definition.
Change-Id: Ie18204569a207f6f168f468446fb0151f309ea25
The patch removes the default for enable_snat in the Router resource and
removes the value if not specified, to make it possible for non-admin
users to create routers: a policy rule in neutron forbids non-admin to
pass the enable_snat value.
It doesn't break backward compatibility as enable_snat is the default in
neutron.
Co-Authored-By: ala.rezmerita@cloudwatt.com
Closes-Bug: #1306593
Change-Id: Ib9d31f7e0a246bcaa663aaa74755526f8e31df7e
The WaitConditionTimeout message was using size of the reason
string as input instead of the actual number of status reasons.
Change-Id: I9ad1813755eda6924ffeff116eaeda9f36b601d1
Closes-Bug: #1297230
Every time self.metadata is read, it triggers a refresh from the database.
We were accessing it multiple times in a loop, which is not only wasteful
but can get very O(n^2) for a WaitCondition with a high Count.
Partial-Bug: #1306743
Change-Id: I1a82afac6c4ef56dbf87722648034c05abef4010
The software_deployment resources lazy loads data via the
heatclient _get() function. Not only is this function private
but the oslo-incubator recently reverted things such that
get() should once again be used for lazy loading details.
See oslo-incubator commit 04a1abe59ac39890f57d2eed57d3d1b12bb5d757
This was merged into heatclient master in:
72017c566850da589f7dc7dc275871986aadbd54
This patch makes it so that heat will work with both versions
of heatclient.
Change-Id: I1799636d39cea410b55ffe72eeecba4f4a7a0f80
Closes-bug: #1308770
There were two different behaviours during template validation and creation
stack (with template validation). In first case error was raised if
template did not have any resources. However user could create stack
without error using this such kind of template.
This patch make behaviour equal for both variant and gives ability to
create and successfully validate stack with template which does not have
resources.
Change-Id: I4dc30ccdc45e0fa7ff678b434106e056dba5f3b4
Closes-Bug: #1278090
This patch moves the status change of stack update to the very end of
the update task, to avoid a race condition where the status of the stack
is UPDATE_COMPLETE but stack-show could return the previous resources.
Change-Id: I04abcf2e876d1de36a36bcd1596a2fd510669744
Closes-Bug: #1308682
When updating or validating a AutoScaleGroup,
'DesiredCapacity' is ignored if the value is 0.
- Add validation for 'DesiredCapacity' if the value is 0,
- Don't ignore zero when updating.
Change-Id: I830aaf97ebed6b2c77c72b18dc8d222ce23f9a28
Partial-Bug: #1304423
We should give the suggestion about the corresponding versions if the template
version is invalid while initializing a template object, instead giving the
all versions.
Change-Id: Ic1a11903e0142c68a713bd7e05c517466923571b
This patch moves some template validation code to the Template class'
validate() method which has been introduced in change
https://review.openstack.org/#/c/83758 .
Going forward, this should make it easy to perform specific
validtion in Template sub-classes (HOT, CFN).
Change-Id: Iaf86f48d462231a7aa51adb642ea8920f9f43892
Replace nova calls for attaching and detaching volumes
with native cinder API calls.
Closes-Bug: #1298350
Change-Id: I628b4a0dd559389f66ab25b6030a9ad6fc927e39
Don't catch exceptions when creating events and instead let the error
propagate. Exceptions when storing events could hide programming errors
and doesn't seem to protect against real issues. The patch also fixes
the tests breaking.
Change-Id: I5eef34c0ed20f9700756e479ace6408304d2cebe
'message' attribute of SupportStatus class has default value equal None.
If you use support_status value in Schema class without providing
'message', you will get in documentation warning in form: DEPRECATED - None.
It looks confused and in such case we should display only 'status'
attribute: DEPRECATED.
Change-Id: I482fe6a9ca134e9e3bc54282b4b10ed98c29b028