Commit Graph

21 Commits

Author SHA1 Message Date
Michael Johnson f4935ea128 Accommodate stable branches with scoped tokens
This patch updates the Designate tempest plugin to accommodate stable
branches that still have keystone scoped tokens. The "Direction
change"[1] means scoped tokens were dropped in the Bobcat (2023.2)
release. However the stable branches back to Wallaby will still have
scoped tokens available as a configuration option.

[1] https://governance.openstack.org/tc/goals/selected/consistent-and-secure-rbac.html#direction-change

Change-Id: Ia57b5126dbc9fbe98cbcaa7ad0e11d36c21a14da
2023-04-11 17:07:07 +00:00
Michael Johnson 288cdcf697 Update designate-tempest-plugin "direction change"
The RBAC goal has changed[1] and system scope is no longer going to be
used. This patch updates Designate tempest plugin to align to this change in
direction by removing the system scope from the policy tests.

[1] https://governance.openstack.org/tc/goals/selected/consistent-and-secure-rbac.html#direction-change

Change-Id: I4e5c56630d5cca96278fe67232519c067356da23
2023-03-31 16:24:24 +00:00
Ghanshyam Mann ed18e74a69 Add project_reader in new RBAC tests
Tempest is fixing the bug#1964509 (depends-on) where
project_reader user will be created under the same project
as primary, project_member, project_admin users.

'primary', 'project_admin', 'project_member', and 'project_reader'
creds will be created in same projects. All the alt creds will be
created under the new projects. non alt and alt creds will use
different project, for example, 'project_alt_member' and
'project_member' creds will be created in different project.

Related-Bug: #1964509

Depends-On: https://review.opendev.org/c/openstack/tempest/+/871018
Change-Id: I143e69c1e150ddf7fa1757dea7bced6bff6739a9
2023-02-23 19:07:30 +00:00
Michael Johnson 73065cdaca Add API version check capabilities
This patch adds a method that allows us to get the current Designate API version under test for use in test classes to skip tests against new features introduced in a specific API version.
This patch also centralizes the "primary" zones client to be instantiated once and updates the tests to use a standardized name for the client.
Finally, it adds a missing requirement of oslo.serialization to requirements.txt.

Change-Id: I240911c0ab9b9bad7851268865d6a8e867627673
2023-02-19 18:11:49 +02:00
Lilach Avraham ced8704b75 Transfer Request - refactoring and new test cases
1) Refactoring:
   - Replace Python underscore variable with indexing.
   - Remove the "message" assertion
2)"test_create_transfer_request_404"
   - Try to create a transfer request with random id
3)"test_zone_transfer"
   - Validation that transfer_accept deleted
     after the transfer_request delete

Change-Id: If7aa1033d52b71a6e01559b6cd468d2f5e6ddf9c
2022-06-27 21:21:57 +03:00
Michael Johnson 568dc60a27 Expand Designate RBAC testing - zone transfer req
This patch adds RBAC testing for allowed and disallowed credentials.
This is one of a series of patches adding testing. This patch covers the
zone transfer request API.

Depends-On: https://review.opendev.org/c/openstack/designate/+/836217
Change-Id: I7699e44ced5462267fe45cac78b1ee148f6603f6
2022-05-27 15:03:45 +00:00
Michael Johnson ade263cd1e Fix TLD issues for test concurrency
Currently there are intermittent test failures due to inconsistent
management of TLDs across the test classes. This is due to some test
classes using the same TLD and cleaning them up or cases where a TLD is
expected to exist, but may not have been created yet.

This patch established a dedicated TLD for each test class that creates
zones. Inside each test case, a zone name will be created with the test
name and the test class TLD. This creates the required TLD isolation to
allow successful test concurrency.

The patch also changes the base TLD from 'org' to the RFC 2606 reserved 'test'.
This should allow for easier identification of test related resources.

Change-Id: I3509767ec0ce6be6b6f15a1bc15a730a4a144b09
2022-05-23 21:07:16 +00:00
Michael Johnson 0182365e0b Adds an API test for list transfer requests sudo
This patch adds an API test the lists transfer requests using the
x-auth-sudo-project-id header and validates that the correct transfer
request is returned.

Change-Id: Ib4cfd1221f128ec4e37ba32e9118b2f88d924561
2021-11-16 23:59:23 +00:00
Michael Johnson a3a236331c Make the API tests compatible with scoped tokens
This patch makes the API tests compatible with keystone scoped
tokens and the new RBAC defaults.

For example, admin system scoped tokens do not have a project_id associated
with them requiring some tests to be updated to not assume the admin
credential always has a project_id.

This patch also makes some sections consistently ordered across files.

Change-Id: Ie2c7402967f40bb90e0d97dad1c3d59f82cb6d80
2021-09-23 21:48:41 +00:00
Michael Johnson df9fda1c88 Update service client access in tempest tests
All the Designate service clients are registered via the plugin interface[1],
that way Tempest register and create the lazy initialization of registered
clients so that they can be access from there in consistent way.

But designate-tempest-client create a separate instance of those and access
instead of accessing the registered service client in Tempest. This commit
makes all the service clients access from Tempest registry and remove the
separate objects.

[1] https://github.com/openstack/designate-tempest-plugin/blob/master/designate_tempest_plugin/plugin.py#L78

Change-Id: I4b65ca16cd53ff4c6bece642764a4abe2a469c01
2021-09-23 21:02:30 +00:00
Michael Johnson 65ebf4bbe7 Fix list-all-project tests for pagination limit
Designate has a fairly small default pagination limit of 20.
Some tests were making list API calls with the all-projects header,
which with parallel test execution could cause the list to exceed the
default pagination limit of 20. This would cause the tests to intermittently
fail.
This patch sets the request parameter "limit" to 1000 for these tests
to allow for parallel test execution which may cause lists to include
more than twenty entries.

Change-Id: Ic074c2c4dc5a5f97c609aac5992f78557722bb71
2021-06-21 23:43:27 +00:00
Arkady Shtempler 5ec73286a2 Adding new test cases to: "Zone Ownership Transfers" test suite.
1) test_show_transfer_request_impersonate_another_project
   Test is based on: "x-auth-sudo-project-id" HTTP header
2) test_list_transfer_requests_all_projects
   Test is based on: "x-auth-all-projects" HTTP header
3) test_zone_transfer_target_project
   Test validates that only targeted project is able to
   accept the transfer request.
4) Improving the existing scenario test: "test_zone_transfer"
   Zone ownership transfer shouldn't work more than once.

Change-Id: I1b345de2c9756ba1bcb0ec7b361c90baff3acb60
2021-04-29 11:08:52 +03:00
Maksym Shalamov 2da1d6e6c9 Fix deleting zones after tests
these tests create zones as part of the test but do clean them up
afterward slowly. This leads to these and following tests in the thread
to fail with over quota when default zone quota is sufficiently low.

Change-Id: Iebe15ca6d0d3101237a92e011b081c38647a8de6
2019-02-21 14:26:32 +00:00
Zuul 8a3b02adbd Merge "Do not create network resources for API tests" 2018-03-16 08:41:02 +00:00
Graham Hayes bbc01e3510
Fix credential naming
Change-Id: Ica935f22ed30792033c6c36742abead20de66363
2018-02-15 18:12:05 +00:00
Ritesh Anand f015ecb1de Do not create network resources for API tests
We need to call set_network_resources() from class with API tests, to
avoid creating network resources. Which are not needed for API tests.

Change-Id: Ia93303390d9887722fa2cfde7757e5e9103ae585
Closes-Bug: #1689415
2018-01-12 18:41:21 -08:00
Kiall Mac Innes 21715d1467 Add more Zone Transfer tests
Port tests from Designate repo

Change-Id: I843701655f3fd07245b79e37fa286f05f20bf7a3
Depends-On: I5fdefa64480f118dad898ed4651036f9b9b16fe9
Depends-On: Id2d093891953efcbb125560ea1113b8a9e613a9c
2016-10-28 12:52:59 +00:00
sonu.kumar 187dc2fc8a Add negative testcases for ownership transfer_request and tsigkey
Change-Id: Ib23e081301e4f7544558410c1e9660547149c03a
2016-07-14 09:02:57 +00:00
Emilien Macchi ddb13fe2c5 Reduce the number of "smoke" tests
This reduces the number of smoke tests to < 10. It includes v1 tests, v2
tests and one scenario test to check that a zone goes to active.

Change-Id: I9233a5d783649fe2bfad8e772f4165bdc4e1c619
2016-07-07 14:33:28 +00:00
Kiall Mac Innes 24df485be7 Replace idempotent_id decorator with tempest.lib version
Useage of the tempest.lib version is preferred, as it's considered
API stable, unlike the tempest.test version.

Change-Id: Ida2efd9fdd9ce095aaa33ce41c90f93efbcf0970
2016-06-09 16:13:10 +01:00
sonu.kumar e9785c919b Add zones ownership transfer request to Designate tempest plugin
This patch adds zone transfer_request_client's methods and tests
to Designate tempest plugin.

Partially-Implements: blueprint designate-tempest-plugin

Change-Id: I0c5b4a5796c398fb1d24cde124203c865ea21833
2016-05-17 10:56:47 +09:00