8640466183
This adds three roles which can be used to build a docker image promotion system. Change-Id: Iefd9278cdb90bbbaab93a4d23c055e9289fde5ba
21 lines
807 B
YAML
21 lines
807 B
YAML
- name: List tags
|
|
uri:
|
|
url: "https://hub.docker.com/v2/repositories/{{ image.repository }}/tags?page_size=1000"
|
|
status_code: 200
|
|
register: tags
|
|
- name: Set cutoff timestamp to 24 hours ago
|
|
command: "python3 -c \"import datetime; print((datetime.datetime.utcnow()-datetime.timedelta(days=1)).strftime('%Y-%m-%dT%H:%M:%fZ'))\""
|
|
register: cutoff
|
|
- name: Delete all change tags older than the cutoff
|
|
no_log: true
|
|
loop: "{{ tags.json.results }}"
|
|
loop_control:
|
|
loop_var: docker_tag
|
|
when: docker_tag.last_updated < cutoff.stdout and docker_tag.name.startswith('change_')
|
|
uri:
|
|
url: "https://hub.docker.com/v2/repositories/{{ image.repository }}/tags/{{ docker_tag.name }}/"
|
|
method: DELETE
|
|
status_code: 204
|
|
headers:
|
|
Authorization: "JWT {{ jwt_token.json.token }}"
|