* Add a CoreOS test class TestCoreosKubernetesAPIs
* Add a CoreOS test environment in tox.ini
* Create a base class BaseK8sTest and move OS-agnostic k8s testing
code to that class.
* Increase the disk size from 8G to 10G for m1.magnum and s1.magnum,
since CoreOS image requires more disk space to boot.
* Set os-distro property for CoreOS image.
Partial-Bug: #1546101
Change-Id: Ie56a9442ecebe05f39c7669bc950f5a6ca11df33
"m-api" is already used by Manila so switch to "magnum-api"
and "magnum-cond" for devstack.
Change-Id: I0f5e57dd263164652813088fe624f62cda664727
Closes-Bug: #1569879
Change the devstack image to the default Atomic 23 image.
Update templates not to rely on interface naming because the names
changed between Atomic 21 and Atomic 23 images.
Add a functional test to validate minion node registration.
Update docs to refer to a generic Atomic image.
Co-Authored-By: Hongbin Lu <hongbin.lu@huawei.com>
Implements: blueprint atomic23
Change-Id: Id67244e3f452b3c7c3c46fdabcca3a5c141a76c0
Currently, we use the users auth token, which expires after a while.
We need to use a trust instead.
Change-Id: Ie18e6a1371871720fbfd4af0bd43e166075b0c6d
Closes-Bug: #1503863
Partially-Implements: blueprint use-trust-for-tls-cert-generation
This patch does, basically, three things:
* Updates the default auth section to keystone_auth;
* Introduces keystoneauth sessions and plugins;
* Adds a deprecation warning and options when loading
legacy auth.
Config, tests and client code are also updated.
Co-Authored-By: Henrique Truta <henrique@lsd.ufcg.edu.br>
Co-Authored-By: Raildo Mascena <raildo@lsd.ufcg.edu.br>
Closes-Bug: 1496810
Closes-Bug: 1515014
Change-Id: I5c1cd24ca28d66ae7ae40e7f707b81870cf0e457
Looks like this function was not in use ever.
It adds nova networking related options to the magnum.conf,
which normally would belong to the nova.conf.
Change-Id: I8435c674db17af2d0641afcf3cab140830130784
This change replaces the hard coded WSGI app creation with a pipeline
of WSGI apps declared in a configuration file.
Paste Deploy was used to create the pipeline since it is used by many other
OpenStack projects and it is an active project
with new contributors and supports Python 3. Dependency on Paste is
localized so switching to another library would not be hard if OpenStack moves
to another package in the future.
Change-Id: I9a45f974c2c8c67a01748583639e6a6248003b85
Closes-Bug:#1551134
Previously,the mesos bay type did not support the Magnum Container
Volume Model. This patch adds support for volume through the following:
1. Add username, tenant_name, preempt, region_name, domain_name to
mesos bay type.
2. Add get_parameter to mesos.
3. Update mesos unit tests to support container volume.
4. Update mesos heat templates for container volume model
Change-Id: Icf7cb9fc38c7facb2d49904b6e52bbce974948f7
Partially-Implements: blueprint magnum-integrate-with-cinder
These two changes have to merge together to pass the gate.
Update import because of magnum client change
Magnum client has moved out apiclient and cliutils from
oslo-incubator, update the import reference here.
Refer to:
https://review.openstack.org/#/c/280050
for magnumclient change.
Change SERVICE_TENANT_NAME to SERVICE_PROJECT_NAME
Devstack is converting from TENANT to PROJECT[1]. This patch changes
SERVICE_TENANT_NAME to SERVICE_PROJECT_NAME in the devstack plugin to
match.
[1] https://review.openstack.org/#/c/281779/
Change-Id: Ib03e421e48a3aa40c11cbc892a3ca724cbd644e7
Closes-Bug: #1548634
Co-Authored-By: Yang Hongyang <hongyang.yang@easystack.cn>
Docker registry, k8s load balancer and volume driver have a similar
need to use trust, so we need to create a trustee for each bay.
Change-Id: If034e74ce2ea80a7faa886d4edf789e576c30eb5
Partially-Implements: blueprint create-trustee-user-for-each-bay
Option "notification_driver" from group "DEFAULT" is deprecated.
Use option "driver" from group "oslo_messaging_notifications"
Reference link:
[1] https://github.com/openstack/oslo.messaging/blob/master/
oslo_messaging/notify/notifier.py#L34
Change-Id: I3e211ac315bb582961ad03e2cf06d4409eb20ed3
Closes-Bug: #1535611
After this patch applied, we can pass MANGUM_GUEST_IMAGE_URL to devstack
environment to download a ubuntu image and upload it to glance with proper
os_distro set.
This is a preparation to add mesos function testing.
Implements: blueprint mesos-functional-testing
Change-Id: I98274cd2bf1cfb37f1a1c960d0a455d9c24d1e0b
Option "lock_path" from group "DEFAULT" is deprecated. Use option
"lock_path" from group "oslo_concurrency".
Change-Id: I306c8d909bc54dc6c6eb127a4a86d74dafd62236
Closes-Bug: #1528744
Bay will request Magnum API to get certificates, so
$MAGNUM_SERVICE_PORT must be opened.
This patch adds this rule to `devstack/lib/magnum`
instead of `magnum/tests/contrib/post_test_hook.sh`.
Ironic also adds same rules in devstack[1].
[1]: https://github.com/openstack-dev/devstack/blob/master/lib/ironic#L675
Change-Id: I24baf87475044a7f268811080b25032152152c39
Closes-Bug: #1515478
Magnum k8s functional testing will try to access m-api inside of a VM, the
default setting of SERVICE_HOST is 127.0.0.1 which is not accessable from VM.
This patch use HOST_IP instead of SERVICE_HOST.
Closes-Bug: #1514286
o-Authored-By: OTSUKA, Yuanying<yuanying@fraction.jp>
Change-Id: Ic409818e5f85e6612390e490f4eeb17963bf3805
devstack/lib/magnum#L184-188 was temporary work until barbican is
available, but they are still needed only for local cert manager when
barbican is not enabled.
Therefore move these lines into a location that runs only if it use
local cert manager.
By the way, remove the comments that no one need anymore and fixed
some indentations a little.
Change-Id: I74b4b82b26f6a80fd03a8055b9bd8c02715962a5
It is *never* acceptable to manipulate this variable. It defeats
devstack gate testing.
Depends-On: I810643ccf377a9351e6a0f2554d0c2c4860baa5d
Change-Id: I6b03524a3157be4f85c41312caa92068fa35b8e9
If barbican service is enabled, this patch enable barbican cert
manager to store certificate.
Change-Id: I93c60abac6e1542204434465b60c488eafcd8746
Partially-Implements: blueprint barbican-support
It looks api version 2 removed the option --property, which breaks
the functional gate. In addition, os-distro is not the right property
name. It should be os_distro instead.
Change-Id: I1607a330006ed59222a0086ccda87208360e7e60
Closes-Bug: #1470934
Closes-Bug: #1498797
Bay needs two certificates for CA and magnum conductor to support TLS
between Kubernetes API server to Magnum. This patch generates these
certs while creating bay.
Change-Id: Ide13a0a5dbb43f2acc085283859edf6373106d7f
Partial-Implements: blueprint magnum-as-a-ca
Magnum will use barbican to store CA and magnum client certs for
TLS support. This patch adds barbican service to devstack
configuration.
Change-Id: Id112699be08788466e7cd9806082e150cbdc15e2
Partial-Implements: blueprint magnum-as-a-ca
The OpenStack community decided to deprecate the config 'verbose',
so we remove it from Magnum.
Change-Id: Ia19728e080e1903b118bff33229689b1091d3891
Closes-Bug: #1486308
Magnum is going to send metrics/notifications to ceilometer. The
metrics will be leveraged to trigger ceilometer alarms, which is
needed to achieve autoscaling bay.
Change-Id: Ib80c9ab699a72701cefc4dfeb7f2542cecd8f2c9
Partially-Implements: blueprint autoscale-bay
Partially-Implements: blueprint magnum-notifications
Currently, we instruct users to manually configure IP tables for IP
masquerading. We should take a step forward to automatically configure
IP tables in Magnum's devstack plugin.
Note: The functional gate test needs this patch to allow internet access
inside the provisioned bay.
Change-Id: Ia2ca494f85bfed76a80027bc3310494494d704cd
Closes-Bug: #1478106
In Magnum devstack plugin, the 'sed' command didn't write to the Heat
policy file, which causes permission error.
Change-Id: I531b542ca3d4a78cb2ea1feb706bf0363c00984b
Closes-Bug: #1477800
This patch sets stacks:global_index to role:admin in /etc/heat/policy.json,
so that an admin role can look for all stacks in heat, which a magnum periodic
task will be benefited from it.
Partial-Implements: blueprint add-periodic-task
Change-Id: I4669ef355d302607f42df182bba680dc548e9618
When using admin creds in periodic task, the auth_uri is not correct.
Partial-Implements: blueprint add-periodic-task
Change-Id: I9febdc5831c8ab1c684268fa0d7b64f23b7ba238
This patch adds admin creds in magnum.conf, admin creds are used for periodic
task job to query bay status from heat service.
Partial-Implements: blueprint add-periodic-task
Change-Id: I11b8823ef7003bb850b74148f847d65dfabd335f
Problem description:
If DevStack is used to instantiate the magnum plugin, and the
devstack localrc/local.conf has the default values for:
LOG_COLOR (default value = True)
SYSLOG (default value = False)
then upon startup (i.e. running DevStack's stack.sh), the magnum devstack
lib calls the DevStack common setup_colorized_logging function, but
without passing the optional 'project_var' and 'user_var' arguments to
this function. As a result, the setup_colorized_logging
function uses its default values of "user_name" and "project_name"
when it defines the logging_context_format_string (which in turn gets
configured in /etc/magnum/magnum.conf). The problem is that "user_name"
and "project_name" are not defined in the API context used by Magnum,
so that whenever the magnum plugin does a logging call, a KeyError
exception for the non-existant key "user_name" is generated.
Fix description:
The fix is to modify the Magnum context to use "user_name" and
"project_name" attributes to be consistent with the default context
format string set up by DevStack.
Change-Id: Ia0c34899609735ff9d8b4597101e004e2684657e
Closes-Bug: #1464376
This patch introduce oslo.policy for magnum and also add policy
rules in a policy.json file.
we can define policy rules refer to
http://docs.openstack.org/developer/oslo.policy/api.html
Co-Authored-By: ShaoHe Feng <shaohe.feng@intel.com>
Change-Id: I37f8b0ba8108162e1f826780ff43c8d21f476209
Partial-implements: blueprint policy-enfore
This patch make logging_context_format_string option to use right
value in devstack script
Change-Id: I1e3456014fb22d4ba0ac6cb8de470f1406179f59
Closes-Bug: #1460269
Update iniset to put rabbit config under the "oslo_messaging_rabbit"
rather than "DEFAULT"
Change-Id: I7b2c69ed018886979e1f7f50737de57a3709930c
Closes-Bug: 1451226
Implements a distributed bay lock to avoid race conditions when
multiple conductors are deployed. A conductor should acquire a lock
when it is about to perform an operation on a bay. The lock
acquisition will succeed if the bay is not currently locked or the
conductor that owned the lock is dead. An ActionInProgress exception
will be raised if the lock acquisition fails.
Change-Id: I055696c43e356dc6fbd03996f1dd28e3c8c41594
Partial-Implements: blueprint horizontal-scale
Switch over to the new plugin style as documented here:
http://docs.openstack.org/developer/devstack/plugins.html
Makes it very easy to setup a CI job. Added a new
directory for functional job and the tests are run
from the post_test_hook.sh. There's even a "magnum bay-list"
in the shell script to show that we are actually making
calls to the magnum API endpoint and things are working
fine. Note that this is just the minimal plumbing needed
and there's a lot more effort needed to come up with
proper test cases for testing magnum functionality.
Closes-Bug: #1439621
Change-Id: I88d45015338ef55713b32de196f9071c8fc2031b