... because it was deprecated in foavor of the http_proxy_to_wsgi
middleware[1].
[1] 67ec67698074ef54c9c474228fec92b68015f884
Change-Id: If9ab4d4a02f55015cb81eb69f479b181397290a5
We can simplify connection creation now. The Connection constructor
understands not to load yaml or env vars if it doesnt' receive a cloud
argument - so this can all be done in one step.
Update the mocks in the tests to work for the new calling pattern.
Finally - isoformat wasn't processing UTC+00:00. There are some
dark issues with how isoformats get passed around OpenStack, but this
fixes the unittest matching to account for UTC+00:00.
openstacksdk has been working on merging the code from shade and
os-client-config. Part of this will result in the removal of the
Profile object in favor of the CloudRegion object from the new
openstack.config.
This updates the Connection construction code to code that should work
with both old and new versions of openstacksdk.
Temporarily mask some jobs to get this in. Will need to revise the
tempest plugin to fix gate jobs later.
Related-Bug: #1681620
Co-Authored-By: tengqm <tengqim@cn.ibm.com>
Change-Id: I10c74ca48b1ddb848a5a68cc4360431a21e0a2cc
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format[1].
This commit will move all default policies to code for:
- actions
- events
- services
- webhooks
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: I0919eb5dc84c0e134b4918f477923b53dc9fbbbb
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format[1].
This commit will move all default policies to code for:
- cluster_policies
- receivers
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: Ib0c3fa45a3b0ec9b616b290f5d554893e9529637
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format[1].
This commit will move all default policies to code for:
- node
- policies
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: I94be99906238a5453421b7babe8dd7d5ad03b4fa
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format[1].
This commit will move all default policies to code for:
- clusters
- profiles
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: I995d0485c36d0aa0e775ce88b803cf6a84d0e72a
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format[1].
This commit will move all default policies to code for:
- build_info
- policy_types
- profile_types
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: I5c27e199e607e9def23db21b1a3050c2413da00a
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
This commit will prepare for implementing policies in code [1].
Like oslo.config, with oslo.policy, we can define all of
default rules in code base and only change some rules
via policy file. Another thing that we should use yaml
format instead of json format.
[1] https://governance.openstack.org/tc/goals/queens/policy-in-code.html
Change-Id: I8cd6e148d9b6bb1dc61e2cb1728acafc325bca65
Co-authored-By: Hieu LE <hieulq@vn.fujitsu.com>
This patch allow user use receiver-update api interface
change receiver params
Implements: blueprint add-receiver-update
Change-Id: Iba959a57e7c5c0ba8736581a61a4300dc4f35084
Signed-off-by: Yuanbin.Chen <cybing4@gmail.com>
This patch adds API layer support to node adoption, including the
preview mode of node adoption.
Blueprint: senlin-adopt-function
Change-Id: If670b6f898fcc06d78b6ab5d2cc7fad827e6cbda
This sets up the HTTPProxyToWSGI middleware in front of senlin-api. The
purpose of this middleware is to set up the request URL correctly in
the case there is a proxy (For instance, a loadbalancer such as HAProxy)
in front of senlin-api.
So, when TLS connections are terminated at the proxy, and one tries to
get the versions from the '/' resource from senlin-api, one will notice
that the protocol is incorrect; It will show 'http' instead of 'https'.
So this middleware handles such cases, thus helping Keystone discovery
work correctly.
The HTTPProxyToWSGI is off by default and needs to be enabled via a
configuration value.
Change-Id: Ia65ecdcc07084514884258661f840e6edcb200a4
Closes-Bug: #1590608
Co-Authored-By: pallavi <pallavi.s@nectechnologies.in>
Add option to enable osprofiler to measure performance of Senlin.
Change-Id: Ib828c73b99a83d29440caeaaf26d639330e81ace
Implements: blueprint senlin-osprofiler
This patch adds a new api 'policies/validate' for policy
validation.
APIImpact
Change-Id: Iee50946bdca893b3f50dcbf82b3230eb27339d9e
blueprint: validate-profile-policy
This patch adds a new api `profiles/validate` for profile
validation.
Example of request body:
{
"profile":{
"spec":{
"type":"os.nova.server",
"version":"1.0",
"properties":{
"flavor":"t1"
}
}
}
}
APIImpact
blueprint: validate-profile-policy
Change-Id: I8564a3400a63dd80d29de418a5ea88aaf8b1d09a
This patch moves the middleware filter resources to the middleware
subdirectory to avoid circular imports when future changes to wsgi is
introduced.
Partial-bp: api-microversioning
Change-Id: Id04f0054ab1d930327fb7b349626fcfaeafbc422
Previously, the wsgi app controller was somewhat hidden inside the
"__init__.py" module. It is causing confusion to developers thus a bad
practice. This patch proposes moving it into a dedicated module for
clarity.
Change-Id: Ic89c091ca3f4f856c8ca4e55f946d1705751a0ce
This patch moves wsgi into api module, merge JSON serializers and
deserializers into the same module for easier maintenance.
Change-Id: I579de8701c69ef6e231762b9eb3192dc3208a9de
This patch adds Receiver support at the API layer.
Change-Id: I400f9d34737d443e1cc4b7f4fcc6f6241ff96bd2
partial-blueprint: support-general-receiver-abstraction
As senlin.conf.sample is in git tree, gitignore couldn't ignore it.
This patch remove senlin.conf.sample to make gitingore work.
Closes-Bug: #1526578
Change-Id: I06b9e4f1b197f8cd847145c8173e2d05b2a832d0
This patch fixes default JSON file used for policy checking. Policy
checking at this layer is not deemed useful from the community. It may
eventually go away. This also fixes some other issues introduced by
previous changes.
Change-Id: I6823303c24c716dd97434f3ebcfb52414fc61341
This option is used to define the default cloud backend that Senlin
will talk with to create real resources.
Partially implement: blueprint reimplement-senlin-drivers-as-plugin
Change-Id: I4e1c4a8e43dcb48fb028fa3066a7aed434579f9a
Previously, we have been stealing configuration options from the
keystonemiddleware. This is dangerous. The keystonemiddleware package
may deprecate options at any time. This patch proposes some options for
Senlin to do role delegations.
Change-Id: Iea0571ffc63b7ec1504e440bb1e0dd3a2ce85a71
Some configuration options are never used in Senlin. Delete them from
the config module and the sample config file.
Change-Id: I0ef4f63d4c77397bf2a346c1f13547dfa45d44fc
We are separating middleware logic out of the common modules. This will
help improve the code layout for maintenance.
Change-Id: I5540df2b0da7e68708411b75052f330a6c56c63d