mirror of
https://github.com/ansible-collections/community.general.git
synced 2024-09-14 20:13:21 +02:00
dd0b54b9b5
* feat(gitlab-deploy-key): automatically update ... ... the public key * add integrity test * fix sanity issues * added changelog fragment Co-authored-by: Mirko Wilhelmi <Mirko.Wilhelmi@sma.de>
73 lines
2.2 KiB
YAML
73 lines
2.2 KiB
YAML
####################################################################
|
|
# WARNING: These are designed specifically for Ansible tests #
|
|
# and should not be used as examples of how to write Ansible roles #
|
|
####################################################################
|
|
|
|
- name: Install required libs
|
|
pip:
|
|
name: python-gitlab
|
|
state: present
|
|
|
|
- name: Create {{ gitlab_project_name }}
|
|
gitlab_project:
|
|
server_url: "{{ gitlab_host }}"
|
|
validate_certs: False
|
|
login_token: "{{ gitlab_login_token }}"
|
|
name: "{{ gitlab_project_name }}"
|
|
state: present
|
|
|
|
- name: Cleanup deploy key to {{ gitlab_project_name }}
|
|
gitlab_deploy_key:
|
|
login_token: "{{ gitlab_login_token }}"
|
|
project: "{{ gitlab_project_name }}"
|
|
server_url: "{{ gitlab_host }}"
|
|
title: "{{ gitlab_project_name }}"
|
|
key: "{{ gitlab_deploy_key }}"
|
|
state: absent
|
|
|
|
|
|
- name: Add deploy key to {{ gitlab_project_name }}
|
|
gitlab_deploy_key:
|
|
login_token: "{{ gitlab_login_token }}"
|
|
project: "root/{{ gitlab_project_name }}"
|
|
server_url: "{{ gitlab_host }}"
|
|
title: "{{ gitlab_project_name }}"
|
|
key: "{{ gitlab_deploy_key }}"
|
|
state: present
|
|
register: deploy_key_status
|
|
|
|
- assert:
|
|
that:
|
|
- deploy_key_status is changed
|
|
- deploy_key_status.deploy_key.key == gitlab_deploy_key
|
|
|
|
|
|
- name: Update public key {{ gitlab_project_name }} (change expected)
|
|
gitlab_deploy_key:
|
|
login_token: "{{ gitlab_login_token }}"
|
|
project: "root/{{ gitlab_project_name }}"
|
|
server_url: "{{ gitlab_host }}"
|
|
title: "{{ gitlab_project_name }}"
|
|
key: "{{ gitlab_deploy_key_new }}"
|
|
state: present
|
|
register: deploy_key_status
|
|
|
|
- assert:
|
|
that:
|
|
- deploy_key_status is changed
|
|
- deploy_key_status.deploy_key.key == gitlab_deploy_key_new
|
|
|
|
- name: Update public key {{ gitlab_project_name }} (no change expected)
|
|
gitlab_deploy_key:
|
|
login_token: "{{ gitlab_login_token }}"
|
|
project: "root/{{ gitlab_project_name }}"
|
|
server_url: "{{ gitlab_host }}"
|
|
title: "{{ gitlab_project_name }}"
|
|
key: "{{ gitlab_deploy_key_new }}"
|
|
state: present
|
|
register: deploy_key_status
|
|
|
|
- assert:
|
|
that:
|
|
- not deploy_key_status.changed
|
|
- deploy_key_status.deploy_key.key == gitlab_deploy_key_new
|