Adds a new yaql function 'decryptData' which pairs with 'encryptData' on
the dashboard side.
Requires a valid secret storage backend (e.g. Barbican) to be configured
via Castellan in murano.conf, e.g.
[key_manager]
auth_type = keystone_password
auth_url = <auth_url>
username = <username>
password = <password>
project_id = <project_id>
user_domain_name = <user_domain_name>
Murano will still work fine without this config but the encrypt/decrypt
functions will be unavailable.
Partially-Implements blueprint: allow-encrypting-of-muranopl-properties
Depends-On: I1be3a1e11e3f4c2170062927ad359bf679eb25d9
Change-Id: I09416b6d35ed2dafa823eca98262a4e23081e6eb
1.As mentioned in [1], we should avoid using six.iteritems to achieve
iterators. We can use dict.items instead, as it will return iterators
in PY3 as well. And dict.items/keys will more readable.
2.In py2, the performance about list should be negligible, see the
link [2].
[1] https://wiki.openstack.org/wiki/Python3
[2] http://lists.openstack.org/pipermail/openstack-dev/2015-June/066391.html
Change-Id: I45fa65427318e1c35bb521de46e81ea12ca7b770
Clients for various OpenStack services
were updated so that it would be
possible to specify region name explicitly.
If it is not provided then for clients that are
used internally by the core library it is taken
from the current region. Otherwise the default
environment region is used.
Change-Id: I289c7f8dc93a30ba1d5aa06d9da29a6af1308b9a
Magnum has changed its service name from 'containers' to 'container-infra'
which leads to failure of Magnum-app. So this fix changes the service
name in magnum_plugin.
Change-Id: If6a2d90e0f7071737ebdf722a565353a8b891d01
Closes-bug: #1595511
CONF does not have option 'api_version'.
Use CONF.images.api_version instead of CONF.api_version.
Change-Id: I44e89023631c43d3cca8213650037de508875cdd
Closes-Bug: #1595220
Remove explicit version definition to avoid errors of version mismatch
using pbr.
Change-Id: I73cfef4fb015f9b37a833f059497354af2622032
Closes-Bug: #1595130
To work with the latest Cloudify test environment, resource files
of NodeCellar example murano application should have version 3.2.1.
This patch fixes it in the app's README file, so user will use
correct version of files.
Change-Id: I9c663c94a8112512c30f4f7ad8d0f8af5048bf46
Closes-bug: #1587957
Magnum will remove all modules under magnumclient/openstack [1].
This plugin needs to update the import path.
[1] https://review.openstack.org/#/c/327200/
Change-Id: I3ec10edbaa6ed92d8875f990ca3be6e339d81310
To be able to use the latest Cloudify test environment, it is
needed to have Cloudify Python client of version 3.2.0.
Change-Id: I006718fd6f458e3c214a5c78701e99a4e348a731
Closes-bug: #1587952
Generated UIs of the non-muranoPL packages (HOT, cloudify_tosca and
CSAR) reference the type of object model's object by class FQNs.
However, when these packages are uploaded to glare, their class
contents are not indexed since the client which uploads them has no
knowledge of the generated classes.
To workaround this issue it is proposed to reference objects not just
by class FQNs but to include the package FQN and the version, so the
engine does not have to rely on Glare's indexes.
Change-Id: I6175e89b68bcdfc29d33ae3616d6ecba662f2509
Partial-bug: #1565805
This patch fixes a wrong import statement in
contrib/plugins/magnum_plugin/magnum_plugin/__init__.py where it
tried to import client from magnumclient which is actually invalid.
Change-Id: I24a1c03de25e514a870a12f47f478d6b7f816975
Closes-bug: #1572139
Remove explicit version definition to avoid errors of version mismatch
using pbr.
Change-Id: I19a263d0e66bcbcddc1a9d6fdd4457b708e45bd9
Closes-bug: #1572123
HeatStack class expects to be owned by some other and uses it to find
OpenStack region name it belongs to. If there is no owner provided then
the default region is used which is random for multi-region setups.
MuranoPL code that was generated from HOT and TOSCA provided that owner
on "deploy" phase but not on "destroy". So the stack that was
successfully created earlier could never be deleted in multi-region
OpenStack installations for non-default region.
Change-Id: I19ca0c7129b073fdd852b22a6a7f84f7ee377ee7
Closes-Bug: #1565777
Currently Murano fails to delete Magnum bay due to missing
bay_ident attribute in case when Magnum bay status is CREATE_FAILED.
This patch fixs this issue.
Change-Id: Iecbd0464bd8839f1a9f9ce428d7eaa1e130c9b2d
Closes-bug: #1566725
This app uses python-magnumclient to deploy a Magnum Bay.
This bay can any of Kubernetes, Swarm and Mesos.
Change-Id: Ifa8ad6142c86c416fb7cbadc07d548061c18f79b
Partially-Implements: blueprint magnum-murano-rationalization
Add a custom plugin to support importing Murano application definition
archives of TOSCA CSAR files into Murano application catalog, and
deploy them through the catalog to Heat.
Co-Authored-By: Tetiana Lashchova <tlashchova@mirantis.com>
Change-Id: Ibb9b7f22853040ef1c453db2cebae727f6514286
Partially-Implements: blueprint support-tosca-format
The Environment class got two additional properties:
region - name of the region where environment should be deployed. If
null then home region is used.
regionConfigs - config property (taken from class config) that specifies
region parameters. It is a dictionary of a form regionName -> regionSettings.
Currently the only setting available is a agentRabbitMq that is itself
a dictionary containing the same options as [rabbitmq] section of murano.conf
Thus the configuration file io.murano.Environment.yaml may look like:
regionConfigs:
RegionOne:
agentRabbitMq:
host: rabbitMqHostName
port: 5672
login: murano
password: murano
virtual_host: /
ssl: false
ca_certs: null
Implements Blueprint: assign-environment-to-region
Change-Id: I3c84c96f8eeae738f83ed7b3691be38100b30e1d
* MuranoType and MuranoObjectParameterType smart types
were merged into a single smart type because their functionality overlap
to a large degree. New smart type is called MuranoObjectParameter
* Other smart types were renamed to have the same name pattern:
ThisParameterType -> ThisParameter,
InterfacesParameterType -> InterfacesParameter
* For MuranoObjectInterface instead of saying obj.data().propertyName
the syntax now is obj.properties.propertyName
Change-Id: I3c925d1ba1a4ac0864987377a3e90c6f166823a7
* Single universal ClientManager class was dropped in favor of
of individual in-context methods to create OS clients without
ClientManager restrictions.
* Environment class was renamed to ExecutionSession to avoid
common confusion with io.murano.Environment
* execution_session_local module was introduced to simplify
keep of per-execution session (per-deployment) data. This
is similar to thread-locals with the difference that there can
be many threads in single session.
* All OS-clients related code was migrated to keystone client
sessions and API v3 (except for GLARE and Mistral that doesn't
support sessions). This increases performance and solves
authentication problems that could be caused by token expiration
even with trusts enabled.
* [DEFAULT]/home_region setting was introduced instead of
[murano]/region_for_services to configure what region
should be used by the clients by default (where Murano API
resides). All client factories respect this setting.
Change-Id: If02c7e5d7d39574d0621e0e8dc27d1f501a31984
Glare has been moved to a separate service and has been
renamed/refactored into glare namespace. This commit updates murano
plugin accordingly.
Related bp: move-v3-to-glare
Change-Id: Ie51440ef7dab044f2ac3ab1f06cbf93402cf1103