As the devstack uses the self-signed certificate , we should
set swift_api_insecure to false by default to access the
swift service.
Change-Id: Idc2b8127dcfd589d48eb26d7624709a9fdc64029
As the previous jobs always timeout in the CI system, This commit
separates the task to multiple tests to prevent timeout.
This commit also adds replication tests for mysql
Depends-On: https://review.opendev.org/c/openstack/trove-tempest-plugin/+/899777
Change-Id: Ie555be434f773ac9e48022dd2ff763a16c2aaee7
this PR adds a network_isolation config option for trove,
with network_isolation enabled, trove guest agent will
plug the user-defined port to database container by
docker host_nic network driver which is implemented in this PR.
docker host_nic network driver is a simple driver to plug host
nic to a container. this driver supports ipv4,ipv6 and dual-stack.
for more details please see the story.
story: 2010733
task: 47957
Change-Id: I35d6f8b81a2c5e847cbed3f5bc6095dc1d387165
As we disabled docker bridge mode when install docker,
trove starts to failed to build the backup images.
because the docker build command uses the default network mode
which is bridge. this commit changes the network mode to host when
build the backup images.
Depends-On: https://review.opendev.org/c/openstack/trove/+/888640
Change-Id: Icfb9f1cef3a7e669cdeb2a7b501c1e991c2f0ffd
this PR builds the images during the devstack installation instead
of importing the registry tarball. so that we can test the backup
codes in zuul jobs.
Change-Id: I95c152a7abd715df72a6ac6604d7b5d9c6774b51
use rsync to synchronize guest logs to the controller node so that we can
find the logs even after the instance is deleted
Add a guest-log-collection timer, this timer triggers
guest-log-collection service every 10 seconds
Change-Id: I264235ce7b7df585358654c46bdac4dcd743fb3d
When the CI fails, specifically related to the Trove guest agent,
we are unable to find a way to debug it.
this patch synchronizes the guest agent logs to controller nodes.
Change-Id: I24695238075f9b1354ee4c54673d021de481a868
This PR changes wsgi script filename to app_wsgi.py.
Original problem is that mod_wsgi script not found after devstack
installation. This bug is created by #854356[1].
--
[1]: https://review.opendev.org/c/openstack/trove/+/854356
Story: 2010264
Task: 46163
Change-Id: I22883c8a8bb7e2818679d667b6868587a040a602
1. app.wsgi is a python script and should be end with py extension.
2. Generate trove-wsgi script which is needed by kolla to support
https and ipv6.
3. Ignore build directory in git
4. update docs
Change-Id: Ibbd6ecb8db25aa3a443d3f526f4cf6d418eb26f3
trove built image failed in devstack due to the bionic
os release. in 'Z' cycle, openstack doesn't support
bionic any more.
Change-Id: I1138c4dc346d4b4bbe4d72e72ff8ae59f2fce606
sometimes, ROUTER_GW_IP or IPV4_ADDRS_SAFE_TO_USE
may not defined in localrc, we add a check before
executing ip replace command.
Change-Id: I48ca40cc2259e21b8a8f0a9fa763746c30f0e8ab
* Added a periodic task for postgresql datastore to clean up the
archived WAL files.
* Added a check when creating incremental backups for postgresql.
* A new container image ``openstacktrove/db-backup-postgresql:1.1.2``
is uploaded to docker hub.
Story: 2009066
Task: 42871
Change-Id: I235e2abf8c0405e143ded6fb48017d596b8b41a1
As per the community goal of migrating the policy file
the format from JSON to YAML[1], we need to do two things:
1. Change the default value of '[oslo_policy] policy_file''
config option from 'policy.json' to 'policy.yaml' with
upgrade checks.
2. Deprecate the JSON formatted policy file on the project side
via warning in doc and releasenotes.
Also replace policy.json to policy.yaml ref from doc and tests.
[1]https://governance.openstack.org/tc/goals/selected/wallaby/migrate-policy-format-from-json-to-yaml.html
Change-Id: I790409da69df8479ad2fe152b15c32ba45067c23
image-tags was introduced in commit 1d24b65 but the implementation was
backward incompatible for the CLI `trove-manager datastore_version_update`.
This patch changes that by supporting an optional parameter `--image-tags`.
Change-Id: I583c296f15a453bdfadf10de5c678ac483cbd4dd
This patch is part of story 2008358 implementation.
1. DB schema change
2. trove-manage datastore_version_update subcommand change
3. API change for creating and listing datastore version.
Story: 2008358
Task: 41264
Change-Id: I8069e6f4b972497f2b8be540ea35047d5fb2f9a5
* MySQL 5.7 and MySQL 8.0 need different percona-xtrabackup package version.
Added Percona XtraBackup 8 support for MySQL 8.x backup and restore.
* Construct different backup container image names for MySQL 5.7 and MySQL 8.0
based on the default option value.
* Two docker images are uploaded for backup/restore:
openstacktrove/db-backup-mysql5.7:1.0.0 and
openstacktrove/db-backup-mysql8.0:1.0.0. Trove guest agent can automatically
choose the approriate one based on the datastore version.
* Added option "secure-file-priv=NULL" in MySQL config template to fix
https://github.com/docker-library/mysql/issues/541.
* Stop using IDENTIFIED BY in GRANT clause (also REVOKE). Starting with MySQL 8
creating a user implicitly using the GRANT command is not supported.
Story: #2008275
Task: #41143
Change-Id: Ibdec63324b1b39ba9b8a38dbe529da17bbb06767
Significant changes:
* Using docker image to install datastore.
* Datastore image is common to different datastores.
* Using backup docker image to do backup and restore.
* Support MariaDB replication
* Set most of the functional jobs as non-voting as nested
virtualization is not supported in CI.
Change-Id: Ia9c97a63a961eebc336b70d28dc77638144c1834
Include address type in getting instance response.
* Deprecate confip option network_label_regex as we don't reply on Nova
to get addresses, network names don't make any sense.
* Add 'addresses' in instance API response, keep 'ip' as is but mark
it deprecated in API doc, python-troveclient shouldn't break.
Story: 2007562
Task: 39445
Change-Id: Ia0458b5ddae8959ce29c17e444e1a51a026283cd
- Execute test groups in serial to make sure no more than 2 database
instance are created at the same time.
- Remove some unneccesary tests
- Remove unneeded datastore, e.g. 'Test_Datastore_1'
- Remove unsupported trovestack subcommands
- Move unsupported DIB elements to the 'deprecated-elements' folder
- Decrease default value of 'agent_call_high_timeout' to 5min
- Add initial_deplay for pooling task
- Use socket file to connect with database instead of using localhost
IP
Change-Id: Ie5030a671fbeb453eafa6cbe04e08da7b52e33c9
- 'HEALTHY' means the db service is responsive, 'ACTIVE' means the db
service is alive.
- Remove the CI job fakemodetests, but will add similar testing task in
the future.
- Fix the periodic CI job
- Remove MongoDB and related jobs
Change-Id: I5abe9091ba203297dc87db5fba139179166321f7
Deal with the situation when Trove fails to look for the Nova server
when waiting for the db instance ACTIVE
Change-Id: I484d45f24176c89d999864d3eb1c48860b3038bd
When building the guest image for dev_mode=true, the controller IP
address is injected to the image in order for the guest-agent to
download Trove code during initialization. As a result, we have to build
guest image each time in the Trove CI because the image build relies on
the devstack host IP address.
If we could remove the dependency, we can build the image(in
devmode=true) for a specific datastore once and use that image for all
related CI jobs, which could save some time for Trove CI.
Fix the current CI issue as well.
Change-Id: If23f4f179a6ab72cfb35e4c45d55142fedb76498