| Commit message (Collapse) | Author | Age | Files | Lines |
|\ |
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
SwiftClientPlugin.get_temp_url has the potential to race with
itself when storing a new tempurl key to the swift account,
leading to tempurls being built with a key that has been
overridden.
This change always fetches the key from swift before creating a
temp URL.
Change-Id: Id5897fdd834cc5d3b74fda8d2317d084a5564c51
Closes-Bug: #1413366
|
|\ \ |
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
stack_user_project_id is currently never exposed by heat, so the user
has no way of discovering what it is.
This has a couple of implications:
- The user can't call the REST API create_software_deployment unless
they know the stack_user_project_id of the stack that the server
resource belongs to
- user can't do manual cleanup of stack_user_project_id when necessary
This change adds stack_user_project_id to the formatted output of
the stack-show REST API call.
Change-Id: I0a2d337401c164eb58dbce63e01f68f98f8d467e
Closes-Bug: #1413398
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This prevents "foo" getting passed into the metadata.
This can happen when using get_attr() to return a dynamic value.
Change-Id: I17eab659e65a51963e510add4d71fbc90a3a3a53
Closes-bug: #1338811
(cherry picked from commit 22df43e2f1e4dd6050e61f0808e6970b0cb05dac)
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This copies the code snippet from instance.py, which refreshes
the metadata when we get a signal on a referenced resource.
Note: a functional test is coming in a later commit.
Closes-bug: 1418942
Change-Id: I5980c9cf4dc355b9bfa93273bc26a768ab9abdb8
(cherry picked from commit e5ffaff0b3326bcf2840f781501b9f7bb6513ccd)
|
|\ \ \
| | | |
| | | |
| | | | |
stable/juno
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When updating a template resource, we weren't taking into account the
possibility that the new environment could be mapping the resource to a
different template path. This change ensures we recalculate the template
name from the new environment before reloading the template during an
update.
Change-Id: I5f84f6fd60925d3dba0b8e8dec867657c8c5c9ef
Closes-Bug: #1452534
(cherry picked from commit 686f317ccae280bd8b536379e89ba743746ae159)
|
|\ \ \
| |_|/
|/| |
| | | |
stable/juno
|
| |/
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
While we're in the process of updating a stack, we set the stack's
environment to the new, updated values. However, we don't want to change
existing resources' idea of their own values until we have explivitly done
an update of them to bring them into line with the new
template/environment. So when parsing a template snippet containing the
get_file intrinsic, store the files dict to which it will refer. get_file
will resolve to the new file only when the template has been updated.
Closes-Bug: #1445170
Change-Id: I8ec32b0e38389cd314e4b2b2d8c65f61f8a9c41e
(cherry picked from commit e4447e7b66cf4691218b067643b5e25de72e31ba)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
In an environment where reclaim_instance_interval is set to
non-zero in nova, an delete request will only soft delete an
instance.(status=SOFT_DELETED, so that the instance can be reclaimed
if required by using 'nova restore <instance_id>')
Now in the above environment, when an delete stack is requested by
user, stack will hang until reclaim_instance_inerval or timeout.
Hence status=SOFT_DELETED for an instance should be handled by heat, which
this patch proposes.
Closes-Bug: #1377290
Change-Id: I86ea788131f113e3deb7aebfccecd7f5e4957ae5
(cherry picked from commit 633a6bb14413b6a8523b6c142df32a7289e05a93)
|
|\ \
| |/
|/| |
|
| |
| |
| |
| | |
Change-Id: Ib422941aa023d8bcdc4b9aaa7af8e386e822cdda
|
|\ \
| |/
|/|
| | |
stable/juno
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
There are cases where it takes a long time to create a new resource as
requested by the scaling operation on an ASG resource, for instance, a
nova server creation followed by a complex SoftwareDeployment. During
this process, additional alarms may come in but failed to be blocked
by the current cooldown checking mechanism because the very first
timestamp has yet to be generated. This is leading to unexpected size
adjustment to the ASG.
This patch augments the existing cooldown checking mechanism with a
scaling-in-progress test so that additional alarms arriving during
the very first scaling operation will be ignored.
Change-Id: Ib8aa83eed366df7097c9cbb9247eca866ae4b620
Co-Authored-By: Zane Bitter <zbitter@redhat.com>
Closes-Bug: #1375156
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | | |
Change-Id: I77f56ec544a82e13cd5a00a3adcfde6c0dda822e
(cherry picked from commit 0f368be6b9069d829a7f6b57b39d37d2d5830b44)
|
|\ \ \ |
|
| | |/
| |/|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
The patch changes the approach of resource backup during stack
update. It stores the definition of resource that needs to be
updated in-place to backup stack(if it was not created before).
Without this functionality, InvalidTemplateReference will be thrown
every time when update-replaced resource has a reference to updated
in-place resource and stack update was failed. In this case, backup
stack has a resource that refers to not-presented another resource
and backup stack deletion generates an exception.
Change-Id: I436c44a579bb4df3031d1a17b9ca5b62da37afeb
Closes-bug: #1446575
(cherry picked from commits da3777342a344a2dafb9244b7afca8722a398caa
and 3786262aed62d81ad35de3d4f703c38223907ffd)
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When a update is being performed, the existing template is updated
incrementally as resources change. Now if update fails, template will
have mix of resources from existing and new template. Hence we need to
ensure we have the user params of both.
Closes-Bug: #1477812
Change-Id: I9e6831c58b167809e3faed519d2fb4f7c61244fc
(cherry picked from commit cb3734bf906e5c5677e499820c5d513b33aca64f)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Currently the template data is assigned to the files dict regardless
of whether the data has changed or not.
This has no consequence on Liberty, but the files dict in Kilo
and Juno is a sqlalchemy MutableDict so these assignments are triggering
updates to the raw_template table. These updates are even triggered for
calls to heat resource-list. With large raw_template records this can make
heat unusable.
Therefore this fix is presented here as having no effect (and being
harmless) to git master, but high priority backports for Kilo and Juno.
Change-Id: Ibb714a9c5dc9f6879ff108419127da985a57897b
Closes-Bug: #1494108
(cherry-picked from 779ba8e431aecac3c451c08aedcc0ad8cf0a4449)
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The part of a ResourceDefinition that lists explicit dependencies was not
round-trip stable. As a result, when we copied a new resource definition
into the existing template during a stack update, we would end up rewriting
the template unnecesarily (i.e. even though we check for changes) every
time if depends_on was not specified in the resource originally. At the end
of each update, we write the new template to the DB in its entirety, which
removes these extra lines again, ensuring that we will experience the same
problem on every update. This was causing a *lot* of unnecessary writes.
This change ensures that the definition remains stable across a round-trip,
so that no unnecessary changes appear in the template.
Change-Id: If7292e49755db0153d7d0db9f7d3875fa9c1d408
Partial-Bug: #1494108
(cherry-picked from 9ebac709e2d3e8814fdee9de99ff49a4681b0ab2)
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
When during update one resource is deleted and another independent
resource takes long to update itself, deleting such stack when it is
UPDATE_IN_PROGRESS led to a stack being stuck in DELETE_IN_PROGRESS as
deleting backup stack was not finding the already deleted resource.
Change-Id: Ib0c42b718a88ac994c53165362a38da2ad5b6b41
Closes-Bug: #1384750
(cherry picked from commit e44629dab01057c65a14218f5d3ae19d5cdcf9e0)
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If there is no snapshot data, no need to start a task runner
of rsrc.delete_snapshot.
Change-Id: I1b868eda8a7a0a2ed5f30aa01a41f4c9820193a5
Closes-Bug: #1437588
(cherry picked from commit 42727797d379007ebddb51d96959b08c3c80cd9b)
|
|\ \ \
| |/ / |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
TypeError: call() takes exactly 3 arguments(5 given) is raised
during cancel stack update, this patch will fix the problem.
Change-Id: If85389150a15575d9e01466d950f8c07b8fa2717
Closes-Bug: #1448384
(cherry picked from commit 72403962033d15bfe910eae14f01a4461d1789e9)
|
|/ /
| |
| |
| | |
Change-Id: I9a931c9de7c411a1784d8981395e871e2e46dbf6
|
| |
| |
| |
| | |
Change-Id: I79959dfe890d028ad0ee407d716592f450a77a1a
|
|\ \
| | |
| | |
| | | |
stable/juno
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If v3 keystone unauthorized error raise during creating stack,
then this stack will remaid in status of create_in_progress. This
patch modify heat keystoneclient to catch unauthorized error and
set stack status to failed.
Closes-Bug: #1376213
Closes-Bug: #1450923
Change-Id: I9a34c20fc6ac3ce235aaba4eac25a6d5ceb43f5f
(cherry picked from commit dca8e37e651c32aca7224fda208e1241efbf23f2)
|
|/ /
| |
| |
| | |
Change-Id: Ide20474871d903f22f9af6c3f27770066d00d9dd
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This was only working for one heat engine as it was sending
the listener messages to a topic of "engine_id".
Change-Id: Ib542d1ebb85b004f5a67213e678882c5a723dc0e
Closes-bug: 1433821
(cherry picked from commit f19c54dd9a906a538b527268b6746daa162da5ad)
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This patch add oslo.serialization to heat requirements.txt.
It's required for patch: Ibd64b3607721487be5b0562cdb54e6c76db51149
where this library is used.
Change-Id: If417206bd5f5df892d44db3b899bc87f18510d79
Closes-Bug: #1477908
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If env loaded from outer file, there is probability
that this outer file will be deleted. So, if template
uses some resource with resource registry env, we need
to store this env in db.
Change-Id: Ib0c191db2dccac6d467a9961062424bc1f924c24
Closes-bug: #1429141
(cherry picked from commit d8fe35eee518036eab7f73aca28cf4d770ae7dc1)
|
| | |
| | |
| | |
| | |
| | |
| | | |
Change-Id: I6501395ab458b75ba7d27c8ce9643bd6d18cb203
Closes-Bug: #1463531
(cherry picked from commit 4d2b275358cd010c0ba19697d5e623a1edef3daf)
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
default_client_name has been missed, so stack fails
to delete, if server, from which floating ip association
depends, not exist.
Change-Id: I01bb91f8afaeb483e1a4bb55653dc3189a62bf12
Closes-bug: #1396982
(cherry picked from commit 898f94347dc011aba7f2cb03b1ff5d384691aeda)
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
The loguserdata.py file gets uploaded to the servers created by Heat to run
under cloud-init. Since the default versions of Python installed on the
user's server may be very old (e.g. RHEL 5 defaults to Python 2.4), avoid
using the octal syntax introduced for Python 3.0 and backported only as far
as Python 2.6. (Also avoid the old syntax, which will break on Python 3.x.)
Also remove use of the "with" statement from loguserdata.py and
part-handler.py. This statement is only available from Python 2.6 on (or in
Python 2.5 via "from __future__ import with_statement").
Finally, remove use of the "except ExceptionType as value" syntax for
catching exceptions. Again, this was only backported to Python 2.6.
Change-Id: I89e86d00993d51e2514b1e589503c6d966909403
Partial-Bug: #1375864
(cherry picked from commit 95ec13c5725ccc19dfe910fe83eb9bc6799d482e)
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Currently we have a somewhat bogus internal equivalence between the
"json" parameter type and the MAP property type. This is a problem
when exposing json parameters via provider resources, because the
schema of the exposed property does not exactly match the capabilities
of the underlying parameter.
Specifically, json parameters can take strings (json serialized list or
map), and also lists and maps directly. Currently, we can only pass
maps, which means some data, for example a list of maps (which is possible
when interacting directly with a json parameter) is not possible when
using the same parameter abstracted via a TemplateResource.
To work around this add a flag which relaxes the type rules and enables
some coercion of map values, only when they're going via a schema derived
from a json parameter.
Changes required for backport:
* Changed import of oslo_serialization.jsonutils to
heat.openstack.common.jsonutils.
Change-Id: I8eff36c4343a07b644b84aa9f2f74eceeb62b4a9
Closes-Bug: #1420196
(cherry-picked from 413fde3247b804e408a9ea9fd863d85391e326aa)
|
|\ \ |
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
If someone choses a string length of over 255 we overflow the DB
id field causing an error, so instead use the physical name
for the resource_id.
The actual string is already stored (encrypted) in the resource_data
so it's probably better anyway to refer to the value in one place
and just override FnGetRefId to maintain the existing interface behavior.
(Combined cherry-pick from Ide8899a2aa0a9fed037835dc46225f52c291ace6
and I233476b8411612350c884c4480a8e2f5cc8c2ab5)
Change-Id: I0c55f1fa026de20b096b845e21095e91ac6bf166
Closes-Bug: #1392359
|
|\ \ \ |
|
| |/ /
| | |
| | |
| | | |
Change-Id: I81eaffda9bf3463b9216430b38df1abf63ae1a9f
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
This change makes the authentication process that requests a domain user
token provide user_id and password instead of username and password.
Authenticating with the user_id is more reliable, as that works even when
the username is truncated or modified in any other way before it is passed
to Keystone.
Conflicts:
heat/common/heat_keystoneclient.py
Change-Id: I7b2897c2be1e4ad7f55549449b1791991572a7f1
Closes-bug: 1402894
(cherry picked from commit 0ba4dacbe292a182ac4ccd69f1133aa6cdba8045)
|
|/ /
| |
| |
| |
| |
| |
| |
| |
| |
| | |
Disable the strict requirements checking in pkg_resources by telling
stevedore to bypass it. This avoids issues with devstack configurations
where the "wrong" version of a library is installed, even though it is
functional.
Closes-Bug: #1454572
Change-Id: Idbdbdd2548ad39325d8058eb19ee398f732c2e44
|