diff --git a/playbooks/gitea-rename-setup-org.yaml b/playbooks/gitea-rename-setup-org.yaml new file mode 100644 index 0000000000..a4938842e1 --- /dev/null +++ b/playbooks/gitea-rename-setup-org.yaml @@ -0,0 +1,56 @@ +- name: Process org + debug: + msg: "Processing org {{ org }}" +- name: Create org + when: org not in gitea_orgs + uri: + url: "{{ gitea_url }}/api/v1/admin/users/root/orgs" + user: root + password: "{{ gitea_root_password }}" + force_basic_auth: true + validate_certs: false + status_code: 201 + method: POST + body_format: json + body: + username: "{{ org }}" +- name: Get org team list + uri: + url: "{{ gitea_url }}/api/v1/orgs/{{ org }}/teams" + user: root + password: "{{ gitea_root_password }}" + force_basic_auth: true + validate_certs: false + status_code: 200 + register: gitea_org_team_list +- name: Get org owners + uri: + url: "{{ gitea_url }}/api/v1/teams/{{ (gitea_org_team_list.json | selectattr('name', 'equalto', 'Owners') | list)[0]['id'] }}/members" + user: root + password: "{{ gitea_root_password }}" + force_basic_auth: true + validate_certs: false + status_code: 200 + register: gitea_org_members +- name: Add Gerrit user to org + when: "'gerrit' not in gitea_org_members.json | map(attribute='username')" + uri: + url: "{{ gitea_url }}/api/v1/teams/{{ (gitea_org_team_list.json | selectattr('name', 'equalto', 'Owners') | list)[0]['id'] }}/members/gerrit" + user: root + password: "{{ gitea_root_password }}" + force_basic_auth: true + validate_certs: false + status_code: 204 + method: PUT +- name: Get org repo list + uri: + url: "{{ gitea_url }}/api/v1/orgs/{{ org }}/repos" + user: root + password: "{{ gitea_root_password }}" + force_basic_auth: true + validate_certs: false + status_code: 200 + register: gitea_org_repo_list +- name: Parse org repo list + set_fact: + gitea_repos: "{{ gitea_org_repo_list.json | map(attribute='full_name') | list + gitea_repos | default([]) }}" diff --git a/playbooks/gitea-rename-tasks.yaml b/playbooks/gitea-rename-tasks.yaml index 85a6e1542a..9520894cdc 100644 --- a/playbooks/gitea-rename-tasks.yaml +++ b/playbooks/gitea-rename-tasks.yaml @@ -22,7 +22,7 @@ set_fact: gitea_orgs: "{{ gitea_org_list.json | map(attribute='username') | list }}" - name: "Make new gitea org" - include_tasks: roles/gitea-git-repos/tasks/setup-org.yaml + include_tasks: gitea-rename-setup-org.yaml vars: org: "{{ neworg }}" - name: "Get repo {{ oldorg }}/{{ oldproj }}"