Skip to content

Commit 447003c

Browse files
Merge branch 'ADZ-3280_product_cleanup' into ADZ-3283_handle_company_apps
2 parents 8d2856d + acba799 commit 447003c

7 files changed

Lines changed: 13 additions & 28 deletions

File tree

ansible/filter_plugins/apigee_helpers.py

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -25,11 +25,21 @@ def apigee_apps_to_product_map(apps_list: List[dict], product_filter: str = None
2525
if api_product not in result:
2626
result[api_product] = []
2727

28+
company_exists = "companyName" in app.keys()
29+
developer_exists = "developerId" in app.keys()
30+
if developer_exists and not company_exists:
31+
owner = app["developerId"]
32+
elif company_exists and not developer_exists:
33+
owner = app["companyName"]
34+
else:
35+
raise RuntimeError(f"Invalid owner for app {app['appId']}")
36+
2837
result[api_product].append(
2938
dict(
3039
appId=app["appId"],
3140
appName=app["name"],
32-
developerId=app["developerId"],
41+
owner=owner,
42+
ownerEndpoint="companies" if company_exists else "developers",
3343
consumerKey=cred["consumerKey"],
3444
apiproduct=api_product
3545
)

ansible/roles/remove-old-pr-products/tasks/main.yml

Lines changed: 0 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -1,16 +1,4 @@
11

2-
- name: "get developers"
3-
uri:
4-
url: "{{ developers_uri }}?expand=true"
5-
headers:
6-
Authorization: "Bearer {{ APIGEE_ACCESS_TOKEN }}"
7-
return_content: yes
8-
register: get_developers
9-
10-
- name: "map developers"
11-
set_fact:
12-
dev_id_to_email: "{{ get_developers.json.developer | dict_list_to_map('developerId', 'email') }}"
13-
142
- name: "get apps"
153
uri:
164
url: "{{ apps_uri }}?expand=true"

ansible/roles/remove-old-pr-products/tasks/remove-product.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@
4242
- block:
4343
- name: "remove product apps {{ product_slug }}"
4444
uri:
45-
url: "{{ developers_uri }}/{{ dev_id_to_email[item.developerId] }}/apps/{{ item.appName | urlencode }}/keys/{{ item.consumerKey }}/apiproducts/{{ product_slug }}"
45+
url: "{{ org_uri }}/{{ item.ownerEndpoint }}/{{ item.owner | urlencode }}/apps/{{ item.appName | urlencode }}/keys/{{ item.consumerKey }}/apiproducts/{{ product_slug }}"
4646
method: DELETE
4747
headers:
4848
Authorization: "Bearer {{ APIGEE_ACCESS_TOKEN }}"
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
org_uri: "https://api.enterprise.apigee.com/v1/organizations/{{ APIGEE_ORGANIZATION }}"
22
products_uri: "{{ org_uri }}/apiproducts"
33
apps_uri: "{{ org_uri }}/apps"
4-
developers_uri: "{{ org_uri }}/developers"
54
retain_hours: "{{ (lookup('env', 'retain_hours') or 72) }}"

ansible/roles/remove-target-products/tasks/main.yml

Lines changed: 0 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,3 @@
1-
- name: "get developers"
2-
uri:
3-
url: "{{ developers_uri }}?expand=true"
4-
headers:
5-
Authorization: "Bearer {{ APIGEE_ACCESS_TOKEN }}"
6-
return_content: yes
7-
register: get_developers
8-
9-
- name: "map developers"
10-
set_fact:
11-
dev_id_to_email: "{{ get_developers.json.developer | dict_list_to_map('developerId', 'email') }}"
121

132
- name: "get apps"
143
uri:

ansible/roles/remove-target-products/tasks/remove-product.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
- block:
1414
- name: "remove product apps {{ product_slug }}"
1515
uri:
16-
url: "{{ developers_uri }}/{{ dev_id_to_email[item.developerId] }}/apps/{{ item.appName | urlencode }}/keys/{{ item.consumerKey }}/apiproducts/{{ product_slug }}"
16+
url: "{{ org_uri }}/{{ item.ownerEndpoint }}/{{ item.owner | urlencode }}/apps/{{ item.appName | urlencode }}/keys/{{ item.consumerKey }}/apiproducts/{{ product_slug }}"
1717
method: DELETE
1818
headers:
1919
Authorization: "Bearer {{ APIGEE_ACCESS_TOKEN }}"
Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,4 @@
11
org_uri: "https://api.enterprise.apigee.com/v1/organizations/{{ APIGEE_ORG }}"
22
products_uri: "{{ org_uri }}/apiproducts"
33
apps_uri: "{{ org_uri }}/apps"
4-
developers_uri: "{{ org_uri }}/developers"
54
force_remove_from_apps: "{{ lookup('env', 'force_remove_from_apps') }}"

0 commit comments

Comments
 (0)