Commit graph

15212 commits

Author SHA1 Message Date
Zane Bitter
aa58fbcacf Load existing resources using correct environment
In convergence we were loading resources from the database using the
current environment. This is incorrect when a previous update has
failed, meaning the resources in the database were created with a
non-current template and environment. If an attempt was made to change
the type of a resource but that resource was never updated, this will
result in us loading a resource with the wrong type. If the type has
been removed then it can result in errors just trying to show the stack.

Note that the Resource.load() method used during a convergence traversal
already does the Right Thing - it only uses the new type if it is a
valid substitution for the old type, and UpdateReplace is later raised
in Resource.update_convergence() if the type does not match in that
specified in the new environment. So we don't see any problems with
stack updates, just with API calls.

Since we cannot change the signature of Resource.__new__() without also
modifying the signature of __init__() in every resource plugin that has
implemented it (many of which are out of tree), instead substitute the
stack definition for the duration of creating the Resource object. This
will result in stack.env returning the environment the resource was last
updated with.

Change-Id: I3fbd14324fc4681b26747ee7505000b8fc9439f1
Story: #2005090
Task: 29688
2019-04-01 14:21:44 +05:30
Zuul
7ffcda79da Merge "Handle unicode in constraints" 2019-03-27 22:56:23 +00:00
Zuul
740ca0d172 Merge "Replace openstack.org git:// URLs with https://" 2019-03-27 03:37:40 +00:00
Ian Wienand
bf2d14d8d1 Replace openstack.org git:// URLs with https://
This is a mechanically generated change to replace openstack.org
git:// URLs with https:// equivalents.

This is in aid of a planned future move of the git hosting
infrastructure to a self-hosted instance of gitea (https://gitea.io),
which does not support the git wire protocol at this stage.

This update should result in no functional change.

For more information see the thread at

 http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003825.html

Change-Id: I84db79fd691b726fcf298b682be63b232127ede4
2019-03-24 20:33:45 +00:00
ricolin
8e41757bf7 Add code name for Train 13.0.0 in document
Change-Id: I4464db4b70bfa334fc9f0b497192f4165650d21d
2019-03-22 12:45:55 +08:00
ricolin
af9c2e4baa Add Code name for Stein 12.0.0 in document
Change-Id: Ieb5d2204b283d63dbf534752a40cb63231b267bf
2019-03-22 12:44:51 +08:00
Zuul
3b34ef05d2 Merge "Support tags for Octavia pool member" 2019-03-22 00:35:44 +00:00
Lingxian Kong
f3c08330fe Support tags for Octavia pool member
The API doc:
https://developer.openstack.org/api-ref/load-balancer/v2/index.html#create-member

Change-Id: I6c5aaf116916eb197a62d89561d4d20236006581
Story: #2005219
Task: #29998
2019-03-21 20:11:48 +00:00
Zuul
7b156dd846 Merge "Fix SoftwareDeployment on DELETE action" 2019-03-20 19:02:01 +00:00
OpenStack Release Bot
ff57ccdecc Update master for stable/stein
Add file to the reno documentation build to show release notes for
stable/stein.

Use pbr instruction to increment the minor version number
automatically so that master versions are higher than the versions on
stable/stein.

Change-Id: I51c12c8cbd90c913e928711bfb31e77ad636d8c7
Sem-Ver: feature
2019-03-20 13:48:19 +00:00
Zuul
acce80a257 Merge "Deprecate personality for OS::Nova::Server" 2019-03-18 09:23:50 +00:00
rabi
97f2636dc7 Use keystone session with heatclient in integration tests
Change-Id: I4c66927e3dd3e1a91cfab94f26a24dbe8932bde8
Related-Bug: #1695144
2019-03-15 09:13:17 +00:00
Zuul
faacff2d7e Merge "Migrate to bionic test image" 2019-03-14 15:34:05 +00:00
Zuul
6b2c398f1c Merge "Override ssl options for heatclient in RemoteStack" 2019-03-14 12:07:23 +00:00
ricolin
c737ed82fb Migrate to bionic test image
Depends-On: https://review.openstack.org/#/c/643093/
Change-Id: Ibd73389902935518fafda649b6d419881fe6349e
2019-03-14 16:45:01 +08:00
Zuul
b055400bd7 Merge "Support remote stack with another OpenStack provider" 2019-03-14 02:31:00 +00:00
Zuul
7d346302d9 Merge "Migrate tests from Xenial to Bionic" 2019-03-14 02:02:13 +00:00
ricolin
3ad7ab2884 Override ssl options for heatclient in RemoteStack
Allow the user to set the CA cert for SSL option for contacting the
remote Heat in the properties of an OS::Heat::Stack resource.

Story: #1702645
Task: #17270

Change-Id: I37528bb2b881a196216a7e6e23af871ab0f313d6
2019-03-14 01:23:58 +08:00
ricolin
6990331639 Support remote stack with another OpenStack provider
Allow OS::Heat::Stack to access remote stack from another OpenStack
provider. Also enable functional tests for multi-cloud.

Implement multi-cloud support as an extension to the existing multi-region
support. Allow operate a remote stack (from another OpenStack cloud) as a
resource in stack from local OpenStack cloud.

I propose we add multi cloud support into ``OS::Heat::Stack`` and change the
property schema for ``context``. Within context, we should adding
following properties:

* credential_secret_id: ID of Barbican Secret. Which stores authN
  information for remote cloud.

Service will use auth information from Barbican Secret to access
 Orchestration service in another OpenStack.
Must make sure you're able toget that secret from Barbican service when
provide `credential_secret_id` property.

Story: #2002126
Task: #26907
Depends-On: https://review.openstack.org/579750

Change-Id: I2f3de3e7c29cf7debb1474228c8a9a81725a72ed
2019-03-13 22:15:45 +08:00
ricolin
6c35f28365 Add tools for parse credential from Secret payload
Provide tools to grep credential from payload
context in Barbican secret.

Change-Id: Ib638cfe25c35ef002088d52c729238f2aba737e6
Story: #2002126
Task: #26906
2019-03-13 22:15:45 +08:00
Zuul
2e3091e5b6 Merge "Improve best existing resource selection" 2019-03-13 07:04:51 +00:00
ricolin
680d7a0ecf Deprecate personality for OS::Nova::Server
This patch deprecate personality property for `OS::Nova::Server`.
Since that property is deprecated by nova since version 2.57,
we should plan to Hidden that property soon.
please use ``user_data`` or ``metadata`` instead. If that
property really required, use config ``max_nova_api_microversion``
to set the maximum nova API microversion <2.57 for nova client
plugin to support personality property.

Add config option ``max_nova_api_microversion`` to set the maximum
nova API microversion for nova client plugin.

Story: #2004188
Task: #29979

Change-Id: I1852739e818ec67ac5a821e436e243eaa72f0938
2019-03-13 06:52:02 +00:00
Ethan Lynn
0e1ed1a4b2 Fix SoftwareDeployment on DELETE action
When we specify a sd on delete action, os-collect-config will not
get authentication because we didn't load access_allowed_handlers
after stack enter stack delete phrase. This patch will make sure
we load necessary access_allowed_handlers even if in stack delete
phrase.

Change-Id: I43c1a865f507f7cb7757e26ae5c503ce484ee280
Story: #2004661
Task: #28628
2019-03-13 06:18:17 +00:00
Zuul
cde369537c Merge "Add tools to get keystone auth plugin" 2019-03-12 17:01:46 +00:00
Zuul
1eca082f43 Merge "Allow update of previously-replaced resources" 2019-03-12 13:14:55 +00:00
ricolin
4ee754f359 Add tools to get keystone auth plugin
With directly provide auth string(with contain a json formate
with auth_type and auth info), we can release context to specific
auth_type and give user the ability to provide other Keystone
(or their own) authentication method (like using
`v3applicationcredential` or others).
The format for `auth` and `auth_type` follows exactly Keystone
plugins like in clouds.yaml file [1].

[1] https://docs.openstack.org/keystoneauth/latest/
plugin-options.html#additional-loaders

Change-Id: Ic4dc2292a82860b9bb54ecb9e3b1a4dc806dab2c
Story: #2002126
Task: #26904
2019-03-12 18:15:07 +08:00
Zuul
16e35cfbb0 Merge "Remove VolumeBackupRestoreIntegrationTest from skip list" 2019-03-12 07:15:24 +00:00
Zuul
31b19b2139 Merge "Allow users to disable the tests run by Grenade" 2019-03-08 23:52:02 +00:00
Zane Bitter
ef8d50856f Remove VolumeBackupRestoreIntegrationTest from skip list
We cannot run this test in the gate because the volume backup feature is
enabled. However, with a change to the Heat tempest plugin to allow this
feature to be automatically skipped based on the tempest config, we no
longer need this test to be explicitly included in the skip list.

Change-Id: Iaefa5c272c4322498330307ea9bd6843d276ef1b
Depends-On: https://review.openstack.org/632989
2019-03-08 02:53:19 +00:00
Zane Bitter
1941602092 Migrate tests from Xenial to Bionic
Switch all Ubuntu Xenial integration test jobs to Bionic (by depending
on the patch that changes them globally.

Change-Id: I5b6c870a12892950c3e8d3aeadffe23ffbf8219e
Depends-On: https://review.openstack.org/639096
2019-03-07 18:58:51 -05:00
Zuul
e7c2cbe340 Merge "Support Neutron L2Gateway resource" 2019-03-07 18:36:57 +00:00
Zuul
4cac915c28 Merge "Support Neutron L2GatewayConnection resource" 2019-03-07 18:07:50 +00:00
Jason Neatherway
0731857d0d Support Neutron L2Gateway resource
The Neutron extension for layer2 gateway (networking-l2gw) provides a API to
manage L2GW components. The proposed change is to implement two new Heat
resources to allow management of the L2GW and L2GW-connection resources.
This change implements the first of the two resources,
OS::Neutron::L2Gateway

Change-Id: Ib850f027833106cb39d3d1f6e644bbb1f79f1aac
Task: #19995
Story: #2002150
2019-03-08 02:32:29 +11:00
Jason Neatherway
7e53efc1a5 Support Neutron L2GatewayConnection resource
The Neutron extension for layer2 gateway (networking-l2gw) provides a API to
manage L2GW components. The proposed change is to implement two new Heat
resources to allow management of the L2GW and L2GW-connection resources.
This change implements the 2nd of two resources,
OS::Neutron::L2GatewayConnection

Change-Id: I2295acafa652ace7180d1250c85f8ee079351628
Task: #23118
Story: #2002150
2019-03-08 01:07:01 +11:00
Zuul
404ca3fad1 Merge "Add a Blazar Host resource" 2019-03-07 10:20:04 +00:00
Zuul
6c2df60e85 Merge "Add a Blazar Lease resource" 2019-03-07 08:16:57 +00:00
Luigi Toscano
2b580f4258 Allow users to disable the tests run by Grenade
Setting RUN_HEAT_INTEGRATION_TESTS=False disables the Heat
integration tests which are normally executed by Grenade
after the deployment of the base environment and after the upgrade.
This is useful when Heat is used in a Grenade job of another
component, where the focus of the testing is not Heat itself,
thus shortening the run-time of the overall Grenade job.

The default behavior is unchanged.

Change-Id: I47b258fecd45ebc08c82df179625bcfb57a32894
2019-03-01 22:47:28 +01:00
Zuul
6e89926921 Merge "Fix indentation in HOT specification" 2019-02-18 08:53:45 +00:00
Zuul
052c3ef774 Merge "Fix indentation in docs" 2019-02-18 08:53:19 +00:00
Zuul
143961ffce Merge "Don't translate event reason when adding hook event" 2019-02-18 07:42:05 +00:00
Zuul
3ad3be58c6 Merge "Add disk size to the flavors" 2019-02-18 06:49:46 +00:00
Kazunori Shinohara
8c46dacd6a Add a Blazar Host resource
Add a OS::Blazar::Host resource plugin to support Blazar which is a
resource reservation services in OpenStack.

Co-author: Asmita Singh <Asmita.Singh@nttdata.com>

Change-Id: Ie5b9373681943222268eb9144740f5733ffef750
Task: 22881
Story: 2002085
2019-02-18 06:41:23 +00:00
Kazunori Shinohara
809ac97439 Add a Blazar Lease resource
Add a OS::Blazar::Lease resource plugin to support Blazar which is a
resource reservation services in OpenStack.

Co-author: Asmita Singh <Asmita.Singh@nttdata.com>

Change-Id: I7683599d9e9443372d1f585985cee7c10fd08581
Task: 22882
Story: 2002085
2019-02-18 06:35:05 +00:00
Rabi Mishra
1cd8ce37c0 Don't translate event reason when adding hook event
We don't seem to do it anywhere else. TripleO uses hook
reason string comparsion which does not work if
internationalized.

Story: #2005035
Task: 29524
Change-Id: I3e8f4587966969084cbf1e38406cd3cff23eb9a6
2019-02-16 09:11:07 +05:30
Rabi Mishra
84c908ca9e Add disk size to the flavors
Nova has added a default policy
os_compute_api:servers:create:zero_disk_flavor to admin-only,
that will prevent non-admins from creating image-backed servers
with a flavor that has disk=0 which is potential a security
exposure.

Add appropriate disk size to flavors we use in tests.

Change-Id: I9c0af0b40fc5b5c33de7f0c690d156ed2bac2f15
2019-02-15 20:35:29 +05:30
David Rabel
267060ff58 Fix indentation in HOT specification
Change-Id: If1070ecdbadad83625620b222152db06c831e4c1
2019-02-15 15:01:59 +01:00
David Rabel
dd4337cca2 Fix indentation in docs
Change-Id: If7044bb0d349eea1633474583e6f4c78afc93667
2019-02-15 11:37:11 +01:00
Ludovic Logiou
f47748d4b6 Translate tenant_id to project_id in Octavia loadbalancer resource
Story: 2004650
Task: 28603
Change-Id: Iaead412604f53d7196949fd475f266711e11c8b5
2019-02-13 13:15:51 +00:00
Zuul
d19e0be516 Merge "Unit tests: Avoid deprecation warning for getargspec()" 2019-02-13 08:20:26 +00:00
Zuul
436279ea12 Merge "Add rbac_policy/subnetpool support for OS::Neutron::Quota resource" 2019-02-13 08:20:23 +00:00