50 Commits

Author SHA1 Message Date
Luigi Toscano
ca4e029f2a Remove the definition of trove-grenade
(and of its now unused parent trove-legacy-dsvm-base)

The job is not used in this repository anymore (since
I49bd6c824b837d22d9f3945a3e8c2343c831b352).
It was only used by grenade.git, but that usage has been removed
by I8f976041e98502de4770ece8cb7f04a928e8f3d9.

Moreover, it is a legacy job and it should be ported to a native
Zuul v3 job, and more important it doesn't really test the upgrade,
because there are no grenade plugins for trove.

An upgrade job is useful, but a grenade trove plugin should be written
first and a new native job should be created instead of restoring
the legacy one.

Depends-On: https://review.opendev.org/749212
Change-Id: Ib5ecc496aee28a6a2bbb01138e1f511bfc179302
2020-09-01 12:08:46 +02:00
Lingxian Kong
828e873846 Support backup strategy API
Change-Id: I0ddd7214dae6e29ddfaf045fdb282f4980a8afff
2020-07-17 11:35:53 +12:00
Zuul
3202b321b3 Merge "Set status to ERROR if heartbeat expires" 2020-06-04 02:57:23 +00:00
Lingxian Kong
dc117d8dd8 Set status to ERROR if heartbeat expires
Change-Id: Ib8f5062094c0ec7766d4c6c6e7c3c8168e15ebd6
2020-06-04 10:12:04 +12:00
Lingxian Kong
761fa7f819 Fix job publish-trove-guest-image-ubuntu-bionic-dev
Change-Id: Ibc3d6198e366cc3832639eae8e4e0de69e58056f
2020-05-29 22:06:11 +12:00
Lingxian Kong
e2b26fdd7d Trove doc and CI
Change-Id: I49bd6c824b837d22d9f3945a3e8c2343c831b352
2020-05-28 22:53:17 +12:00
Lingxian Kong
aa1d4d2246 Datastore containerization
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
2020-05-27 10:31:50 +12:00
Lingxian Kong
523d66e8fd Fix CI job
* Fix pep8: ambiguous variable name
* Install Python 3.7 for trove guest image. oslo.concurrency requires
  python 3.6 or newer. See
  https://bugs.launchpad.net/tripleo/+bug/1861803
* Mark tempest job non-voting temporarily because of some tempest bugs.

Change-Id: I6d316779cc7220a855ce187437056b667bbe1f75
2020-05-25 17:37:38 +12:00
f32c4c8ff1 Add Python3 victoria unit tests
This is an automatically generated patch to ensure unit testing
is in place for all the of the tested runtimes for victoria.

See also the PTI in governance [1].

[1]: https://governance.openstack.org/tc/reference/project-testing-interface.html

Change-Id: I21aa4561556571b5b6ac2790b954e8696abad20e
2020-04-24 08:49:06 +00:00
Lingxian Kong
c952838a9b Support to test non-dev guest image in CI
Make the job non-voting because it may fail when the guest agent code
changes.

Change-Id: Ibd595b5b5c02cf72f1e5f05c79469cd4cb15a3ca
2020-03-16 11:10:05 +13:00
Lingxian Kong
7d78c74158 Add python-troveclient in requirements.txt
Change-Id: I2bd0d81171df85c05423e19ab2e4afa82fcf880e
2020-03-15 20:57:39 +13:00
Lingxian Kong
602c4d42de Improve the function tests
- 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
2020-01-28 14:27:52 +13:00
Lingxian Kong
dacb400e0b Improve API doc
Change-Id: If48ef016c6fb7a875ceabc9f106e4cd85858d147
2019-12-24 22:15:09 +13:00
Lingxian Kong
a0a10f0b94 Support HEALTHY status for db instance
- '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
2019-12-14 12:55:56 +13:00
Lingxian Kong
5a149be4eb Add trove-tempest CI job
Change-Id: I87f3eba550326abcef1985a001a358125b6820a8
2019-12-09 19:38:11 +13:00
Zuul
e226ba68ab Merge "[ussuri][goal] Drop python 2.7 support and testing" 2019-12-06 10:06:41 +00:00
Lingxian Kong
637c900b87 Mark CI job trove-scenario-mariadb-single voting
Fix the current CI issue as well.

Change-Id: I7daafa68a03a3bf88c3651b6cab8c58cf5256b29
2019-12-06 11:21:45 +13:00
Ghanshyam Mann
e6f55c57d5 [ussuri][goal] Drop python 2.7 support and testing
OpenStack is dropping the py2.7 support in ussuri cycle.

Trove is ready with python 3 and ok to drop the
python 2.7 support.

Complete discussion & schedule can be found in
- http://lists.openstack.org/pipermail/openstack-discuss/2019-October/010142.html
- https://etherpad.openstack.org/p/drop-python2-support

Ussuri Communtiy-wide goal:
https://governance.openstack.org/tc/goals/selected/ussuri/drop-py27.html

Change-Id: I6b448747c873bfc9c0138c0f7e3ca67ddce02dee
2019-12-05 22:38:19 +13:00
Lingxian Kong
52bfbd641d Add CI job to build Ubuntu Xenial based Trove guest image for dev
Change-Id: I7beb6849abbfc889bae29668deb4ba7ae93df91d
2019-12-05 07:47:41 +13:00
Lingxian Kong
fc0c4fff4c Rename devstack variable TROVE_DISABLE_IMAGE_SETUP
Rename TROVE_DISABLE_IMAGE_SETUP to TROVE_ENABLE_IMAGE_BUILD to avoid
double negative definition.

Change-Id: Iede80c39bb2a7aaf3c0453bd67f85375fa5ee76c
2019-10-11 14:35:12 +13:00
Lingxian Kong
062871b7ed Add branch param for image building
Change-Id: I7874d498eb80c0b5cda802acb76e5fe399770e6a
2019-09-26 14:32:39 +12:00
Lingxian Kong
59be66ceaa Change imag build job to the periodic pipeline
Change-Id: I2628d924245e267ac950876be9ec34110db15e20
2019-09-20 22:49:33 +12:00
Lingxian Kong
757a873963 Some clean up
- Remove the unused variables in trovestack.rc which leads to
  module not found error.
- Remove non-voting gate job

Change-Id: I583945addb6cb0aa442db1c9d9c6ce3cb57793f7
2019-09-20 08:51:21 +12:00
Lingxian Kong
0cdf8b20b6 Add image build experimental CI job
Story: 2006553
Task: 36637
Change-Id: I3d909082fb887b24ed25c93e11792031d5053b1e
2019-09-17 22:23:43 +12:00
Ghanshyam Mann
86299525fb [train][goal] Run 'trove-tempest-ipv6-only' job
As part of Train community goal 'Support IPv6-Only Deployments and Testing'[1],
Tempest has defined the base job 'devstack-tempest-ipv6' which will
deploy services on IPv6.

Depends on commit has added the new job 'trove-tempest-ipv6-only'
which is derived from 'devstack-tempest-ipv6'.

Verification structure will be:
- 'devstack-IPv6' deploy the service on IPv6
- 'devstack-tempest-ipv6' run will verify the IPv6-only setting and listen address
- 'trove-tempest-ipv6-only' will run the tests.

Run the ipv6 job on trove gate also.

Depends-On: https://review.opendev.org/#/c/677014/

Story: #2005477
Task: #35937

[1] https://governance.openstack.org/tc/goals/train/ipv6-support-and-testing.html

Change-Id: I2ecfcef4a03ccc574d4fd3b026183342cb1fa242
2019-08-16 18:39:53 +00:00
Lingxian Kong
37e8dedac2 Remove the trove-tox-apiexamples CI job
- The job relies on python-troveclient, sometimes python-troveclient
  only changes the URL sending to Trove but neither request nor
  response.
- The job is hard to maintain, especially when there are changes
  relating the API. The recommended way is to manually update the API
  doc and add tests in trove-tox-fakemodetests job.
- Remove that trovestack subcommand as well.

Change-Id: I108203915ef79ef93bbfbb15acdb7480854878e0
2019-06-06 15:57:26 +12:00
ZhongShengping
b51f371d97 Update Python 3 test runtimes for Train
This goal is to implement the process set out in the 2018-10-24 Python
Update Process TC resolution[1], for the Train cycle to ensure unit
testing is in place for all of the Tested Runtimes for Train[2].
In practice, this generally means adding unit tests for Python 3.7 and dropping
unit tests for Python 3.5. Using the Zuul template for Train will ensure that
all projects that support Python3 will be tested against the agreed runtime
versions, and make it easier to update them in future.

[1]https://governance.openstack.org/tc/resolutions/20181024-python-update-process.html
[2]https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: I018f79c6819ead9ffee777addb7ba6b369304962
Depends-On: https://review.opendev.org/#/c/641878/
2019-05-09 17:34:56 +08:00
Zuul
f56329a4aa Merge "Skip image building in DevStack for functional tests" 2019-05-08 14:57:44 +00:00
ZhongShengping
4e63540245 Dropping the py35 testing
All the integration testing has been moved to
Bionic now[1] and py3.5 is not tested runtime for
Train or stable/stein[2].

As per below ML thread, we are good to drop the py35
testing now:
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/005097.html

[1] http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004647.html
[2]
https://governance.openstack.org/tc/reference/runtimes/stein.html
https://governance.openstack.org/tc/reference/runtimes/train.html

Change-Id: I0d0a3f62d652853963dc4fe204a413eec2bc1830
2019-04-28 15:36:48 +08:00
Lingxian Kong
aa836df310 Skip image building in DevStack for functional tests
DevStack builds a mysql guest image by default, but trovestack is used
heavily in Trove functional test and image building is also part of the
script.

This patch disables the image building in devstack for all functional
CI jobs except the mysql ones so we could save some time for those jobs.

Change-Id: Iefef03066c1a054bf760f83a66ce7795ad92c44a
Story: #2005490
Task: #30590
2019-04-26 10:30:36 +12:00
OpenDev Sysadmins
13711bd589 OpenDev Migration Patch
This commit was bulk generated and pushed by the OpenDev sysadmins
as a part of the Git hosting and code review systems migration
detailed in these mailing list posts:

http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003603.html
http://lists.openstack.org/pipermail/openstack-discuss/2019-April/004920.html

Attempts have been made to correct repository namespaces and
hostnames based on simple pattern matching, but it's possible some
were updated incorrectly or missed entirely. Please reach out to us
via the contact information listed at https://opendev.org/ with any
questions you may have.
2019-04-19 19:26:15 +00:00
Zuul
e7ef1dd722 Merge "Disable devstack image building for trove-scenario-mariadb-single CI job" 2019-04-11 00:12:37 +00:00
Ian Wienand
4367dd5e7a Merge "Replace openstack.org git:// URLs with https://" 2019-04-10 00:52:15 +00:00
Lingxian Kong
4fe95fbaf3 Disable devstack image building for trove-scenario-mariadb-single CI job
Trove mainly uses trovestack script to trigger the CI tests, including
the guest agent image building, so the image building in devstack could
be skipped to decrease the testing duration.

Change-Id: I26fa0adc1a5e39612be15b75d37d22ea1cca3be1
Story: #2005391
Task: #30380
2019-04-09 09:20:22 +12:00
ghanshyam
d98edf6798 Migrate legacy jobs to Ubuntu Bionic
We have migrated the zuulv3 job to Bionic during Dec/Jan month.
 - http://lists.openstack.org/pipermail/openstack-discuss/2018-December/000837.html
 - https://etherpad.openstack.org/p/devstack-bionic
But that effort does not move all gate job to Bionic as there are
large amount of jobs are still legacy jobs. All the legacy jobs still
use Xenial as nodeset.

As per the decided runtime for Stein, we need to test everything on openstack
CI/CD on Bionic - https://governance.openstack.org/tc/reference/runtimes/stein.html

Below patch move the legacy base jobs to bionic which will move the derived jobs
automatically to bionic. These jobs are modified with branch variant so that they will use
Bionic node from stein onwards and xenial for all other stable branches
until stable/rocky.
- https://review.openstack.org/#/c/639096

This commit mofiy the parent job from devstack-xenial to devstack so that
all trove jobs will start running on bionic.

More Details: 
- https://etherpad.openstack.org/p/legacy-job-bionic
- http://lists.openstack.org/pipermail/openstack-discuss/2019-March/003614.html

Change-Id: I8c618cccc9f62665f0735ac5bd513e991e66d602
2019-03-29 10:55:00 +13:00
ZhongShengping
4309c72892 add python 3.7 unit test job
This is a mechanically generated patch to add a unit test job running
under Python 3.7.

See ML discussion here [1] for context.

[1] http://lists.openstack.org/pipermail/openstack-dev/2018-October/135626.html

Change-Id: Ia874ef366eb7330e6c5b5dd4fe7be1482aeb2735
2019-03-26 01:17:48 +00:00
Ian Wienand
007821e830 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: I7f2db9189611a1e2121d9e7bacd35c05382b5915
2019-03-24 20:36:20 +00:00
Marcin Piwowarczyk
84e159eca9 Use Ubuntu Xenial distro for integration tests
Default Ubuntu release which is used under devstack, has been changed
from Xenial to Bionic [1].
Fortunately, backward compatibility for Xenial was added.

Until we are not compatible with Bionic, we need to use older
Ubuntu distro.

[1] https://review.openstack.org/#/c/610977/

Change-Id: I66c63cf4fa6e5ac201a0fef1d4a8d26520b3b803
Signed-off-by: Marcin Piwowarczyk <m.piwowarczy@samsung.com>
2018-12-12 17:48:10 +01:00
Marcin Piwowarczyk
f28ded34cf Fix incorrect test_group in zull job definition
Both of mysql trove-scenario jobs performed the same tests
group (mysql-supported-single).

This change sets correct group for trove-scenario-mysql-multi job.

Furthermore, to be consistent, trove_test_datastore has been passed
explicite for trove-scenario-mysql-single job.

Change-Id: I377e17ebf690c79d1c369116697177f992b3df65
Signed-off-by: Marcin Piwowarczyk <m.piwowarczy@samsung.com>
2018-10-26 23:31:47 +02:00
Andreas Jaeger
947d4b5dab Cleanup zuul.yaml
Small cleanups:
* Use openstack-cover-jobs template to move cover job to check, remove
  post cover job. Mark it non-voting for now.
* Use openstack-lower-constraints-jobs, remove jobs
* Sort list of templates.

Change-Id: I2fad568f253a01a3ca272d2e0af4f747b9682b2c
2018-09-24 19:26:37 +02:00
Doug Hellmann
23278b1fdd add python 3.6 unit test job
This is a mechanically generated patch to add a unit test job running
under Python 3.6 as part of the python3-first goal.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: I8b1d6f970057175487253f43fdcbbd9f969fe2a7
Story: #2002586
Task: #24342
2018-09-23 14:01:07 +00:00
Doug Hellmann
2602ebc7e5 switch documentation job to new PTI
This is a mechanically generated patch to switch the documentation
jobs to use the new PTI versions of the jobs as part of the
python3-first goal.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Also, add docs tox environment so that the job works.

Change-Id: I8dd911d46623c0185d238b293e0218cfa435ed46
Story: #2002586
Task: #24342
2018-09-23 14:00:58 +00:00
Doug Hellmann
ef4bf4e6b3 import zuul job settings from project-config
This is a mechanically generated patch to complete step 1 of moving
the zuul job settings out of project-config and into each project
repository.

Because there will be a separate patch on each branch, the branch
specifiers for branch-specific jobs have been removed.

Because this patch is generated by a script, there may be some
cosmetic changes to the layout of the YAML file(s) as the contents are
normalized.

See the python3-first goal document for details:
https://governance.openstack.org/tc/goals/stein/python3-first.html

Change-Id: Ida3b1bc70fbd6ab958d8669e925de1d3151f69ff
Story: #2002586
Task: #24342
2018-09-09 05:59:33 -04:00
Zhao Chao
d2868a59cb Migrate to Zuul v3 native job definitions
This patch migrates the legacy gate jobs to Zuul v3 native ones(a new
trove-devstack role is created for all those legecy jobs, and the
previous way of running gate jobs is still kept as we still cannot
migrate the genade job to a Zuul v3 native one), following the
documents below:
https://docs.openstack.org/infra/manual/zuulv3.html
https://docs.openstack.org/devstack/latest/zuul_ci_jobs_migration.html

Change-Id: I10a1adae3a79b7322118fce180119f0ee5ff2e1b
Signed-off-by: Zhao Chao <zhaochao1984@gmail.com>
2018-07-17 10:29:55 +08:00
Doug Hellmann
6eaa305cf6 add lower-constraints job
Create a tox environment for running the unit tests against the lower
bounds of the dependencies.

Create a lower-constraints.txt to be used to enforce the lower bounds
in those tests.

Add openstack-tox-lower-constraints job to the zuul configuration.

See http://lists.openstack.org/pipermail/openstack-dev/2018-March/128352.html
for more details.

Change-Id: I5352398603e5755d46c9c033b05af637e379eea0
Depends-On: https://review.openstack.org/555034
Signed-off-by: Doug Hellmann <doug@doughellmann.com>
2018-03-22 19:07:53 -04:00
Zhao Chao
03c5738068 Only launch in-tree zuul jobs when necessary
Adding 'irrelevant-files' attribute for the in-tree zuul jobs to avoid
unnecessary launching. Also add new abstract jobs to hold common
attributes among similar jobs.

Change-Id: I047412f7fee494e7638f9bdabe0c022619e5fb33
Signed-off-by: Zhao Chao <zhaochao1984@gmail.com>
2018-02-23 15:46:43 +08:00
Zhao Chao
690aa0c23f Add bandit-baseline check job.
As bandit-baseline check just call tox to run tests, adding it to
in-tree checks instead of gate jobs.

Closes-Bug: #1618549
Change-Id: If6848c69e09117789d566ae47977034d5503fa09
Signed-off-by: Zhao Chao <zhaochao1984@gmail.com>
2018-02-07 18:10:30 +08:00
James E. Blair
e8cdc26f42 Zuul: Remove project name
Zuul no longer requires the project-name for in-repo configuration.
Omitting it makes forking or renaming projects easier.

Change-Id: Id890fde91a7e2b3ec9a6cf5ebe540d4fd65938bc
2018-02-05 23:43:27 -08:00
Andreas Jaeger
366ce38eb1 Import experimental Zuul jobs
Import all experimental jobs for trove.

Also, rename jobs to drop the unneeded dsvm to follow the Zuul v3 naming
conventions. For details, see
https://docs.openstack.org/infra/manual/drivers.html#consistent-naming-for-jobs-with-zuul-v3

Change-Id: Iee42e3b667aa114f6c9a6ff03b7da6f0c4708812
2018-01-13 07:28:27 +01:00
Chandan Kumar
a4784a0753 Move legacy trove zuul jobs to trove project
Change-Id: I58e6a5e6c8ce6eb660729cabe6bbcd7d2746129a
2018-01-05 16:42:23 +05:30