Skip to content

Commit 6bca514

Browse files
authored
Merge pull request #55 from stackhpc/update/integration-test-pulp-versions
Integration test against Pulp 3.21
2 parents f3debaa + 6aa9e65 commit 6bca514

File tree

3 files changed

+93
-78
lines changed

3 files changed

+93
-78
lines changed

.github/workflows/pull_request.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ jobs:
5151
matrix:
5252
pulp:
5353
- "3.16"
54-
- "3.18"
54+
- "3.21"
5555
steps:
5656
# Checks-out the repository under $GITHUB_WORKSPACE, so it's accessible to the job
5757
- uses: actions/checkout@v2

tests/pulp-in-one.sh

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,7 @@ set -o pipefail
88

99
mkdir -p settings
1010

11-
PULP_TAG=${PULP_TAG:3.18}
11+
PULP_TAG=${PULP_TAG:-"3.21"}
1212

1313
cat << EOF > settings/settings.py
1414
CONTENT_ORIGIN='http://$(hostname):8080'

tests/test_django_user.yml

Lines changed: 91 additions & 76 deletions
Original file line numberDiff line numberDiff line change
@@ -8,84 +8,99 @@
88
pulp_admin_password: password
99
pulp_validate_certs: true
1010
tasks:
11-
- name: Query groups
11+
- name: Get Pulp status
1212
uri:
13-
url: "{{ pulp_url }}/pulp/api/v3/groups/"
14-
user: "{{ pulp_admin_username }}"
15-
password: "{{ pulp_admin_password }}"
13+
url: "{{ pulp_url }}/pulp/api/v3/status/"
1614
method: GET
1715
body_format: json
1816
status_code: 200
19-
force_basic_auth: true
20-
register: groups_result
17+
register: pulp_status
2118

22-
- name: Create groups
23-
uri:
24-
url: "{{ pulp_url }}/pulp/api/v3/groups/"
25-
user: "{{ pulp_admin_username }}"
26-
password: "{{ pulp_admin_password }}"
27-
method: POST
28-
body:
29-
name: "{{ item }}"
30-
body_format: json
31-
status_code: 201
32-
force_basic_auth: true
33-
loop:
34-
- test_group1
35-
- test_group2
36-
when: item not in groups_result.json.results | map(attribute='name') | list
37-
38-
- include_role:
39-
name: pulp_django_user
40-
vars:
41-
pulp_django_users:
42-
- username: test_user
43-
password: correct horse battery staple
44-
groups:
45-
- test_group1
46-
47-
- name: Query user
48-
uri:
49-
url: "{{ pulp_url }}/pulp/api/v3/users/?username=test_user"
50-
user: "{{ pulp_admin_username }}"
51-
password: "{{ pulp_admin_password }}"
52-
method: GET
53-
status_code: 200
54-
force_basic_auth: true
55-
register: user_result
56-
57-
- name: Verify django user creation
58-
assert:
59-
that:
60-
- user_result.json.count == 1
61-
- user_result.json.results[0].username == "test_user"
62-
- user_result.json.results[0].groups | length == 1
63-
- user_result.json.results[0].groups[0].name == "test_group1"
64-
65-
# Update group membership.
66-
- include_role:
67-
name: pulp_django_user
68-
vars:
69-
pulp_django_users:
70-
- username: test_user
71-
password: correct horse battery staple
72-
groups:
73-
- test_group2
74-
75-
- name: Query user
76-
uri:
77-
url: "{{ pulp_url }}/pulp/api/v3/users/?username=test_user"
78-
user: "{{ pulp_admin_username }}"
79-
password: "{{ pulp_admin_password }}"
80-
method: GET
81-
status_code: 200
82-
force_basic_auth: true
83-
register: user_result
84-
85-
- name: Verify django user group update
86-
assert:
87-
that:
88-
- user_result.json.count == 1
89-
- user_result.json.results[0].username == "test_user"
90-
- user_result.json.results[0].groups | length == 1
91-
- user_result.json.results[0].groups[0].name == "test_group2"
19+
- name: Set Pulp version fact
20+
set_fact:
21+
pulp_version: "{{ pulp_status.json.versions | selectattr('component', 'equalto', 'core') | map(attribute='version') | first }}"
22+
23+
- name: Run Django user test on Pulp =< 3.18
24+
when: pulp_version is version('3.18', 'le', version_type='strict')
25+
block:
26+
- name: Query groups
27+
uri:
28+
url: "{{ pulp_url }}/pulp/api/v3/groups/"
29+
user: "{{ pulp_admin_username }}"
30+
password: "{{ pulp_admin_password }}"
31+
method: GET
32+
body_format: json
33+
status_code: 200
34+
force_basic_auth: true
35+
register: groups_result
36+
37+
- name: Create groups
38+
uri:
39+
url: "{{ pulp_url }}/pulp/api/v3/groups/"
40+
user: "{{ pulp_admin_username }}"
41+
password: "{{ pulp_admin_password }}"
42+
method: POST
43+
body:
44+
name: "{{ item }}"
45+
body_format: json
46+
status_code: 201
47+
force_basic_auth: true
48+
loop:
49+
- test_group1
50+
- test_group2
51+
when: item not in groups_result.json.results | map(attribute='name') | list
52+
53+
- include_role:
54+
name: pulp_django_user
55+
vars:
56+
pulp_django_users:
57+
- username: test_user
58+
password: correct horse battery staple
59+
groups:
60+
- test_group1
61+
62+
- name: Query user
63+
uri:
64+
url: "{{ pulp_url }}/pulp/api/v3/users/?username=test_user"
65+
user: "{{ pulp_admin_username }}"
66+
password: "{{ pulp_admin_password }}"
67+
method: GET
68+
status_code: 200
69+
force_basic_auth: true
70+
register: user_result
71+
72+
- name: Verify django user creation
73+
assert:
74+
that:
75+
- user_result.json.count == 1
76+
- user_result.json.results[0].username == "test_user"
77+
- user_result.json.results[0].groups | length == 1
78+
- user_result.json.results[0].groups[0].name == "test_group1"
79+
80+
# Update group membership.
81+
- include_role:
82+
name: pulp_django_user
83+
vars:
84+
pulp_django_users:
85+
- username: test_user
86+
password: correct horse battery staple
87+
groups:
88+
- test_group2
89+
90+
- name: Query user
91+
uri:
92+
url: "{{ pulp_url }}/pulp/api/v3/users/?username=test_user"
93+
user: "{{ pulp_admin_username }}"
94+
password: "{{ pulp_admin_password }}"
95+
method: GET
96+
status_code: 200
97+
force_basic_auth: true
98+
register: user_result
99+
100+
- name: Verify django user group update
101+
assert:
102+
that:
103+
- user_result.json.count == 1
104+
- user_result.json.results[0].username == "test_user"
105+
- user_result.json.results[0].groups | length == 1
106+
- user_result.json.results[0].groups[0].name == "test_group2"

0 commit comments

Comments
 (0)