Update to 2022-08-03 16:00

This commit is contained in:
Daniel Berteaud
2022-08-03 16:00:16 +02:00
parent a11f21e9c6
commit 5715cdb046
18 changed files with 198 additions and 11 deletions

View File

@@ -0,0 +1,11 @@
---
# Version of the CNI plugins to install
cni_version: 1.1.1
# Archive where the pre compiled bin archive will be downloaded
cni_archive_url: https://github.com/containernetworking/plugins/releases/download/v{{ cni_version }}/cni-plugins-linux-amd64-v{{ cni_version }}.tgz
# Expected checksum of the archive
cni_archive_sha256: b275772da4026d2161bf8a8b41ed4786754c8a93ebfb6564006d5da7f23831e5
# Where the plugins will be installed (binaries will be extracted in a /bin sub-directory)
cni_root_dir: /opt/cni

View File

@@ -0,0 +1,14 @@
---
- name: Compress previous version
command: tar cf {{ cni_root_dir }}/archives/{{ cni_current_version }}.tar.zst ./ --use-compress-program=zstd
args:
chdir: "{{ cni_root_dir }}/archives/{{ cni_current_version }}"
warn: False
environment:
ZSTD_CLEVEL: 10
tags: cni
- name: Remove archive dir
file: path={{ cni_root_dir }}/archives/{{ cni_current_version }} state=absent
tags: cni

View File

@@ -0,0 +1,14 @@
---
- name: Create the archive dir
file: path={{ cni_root_dir }}/archives/{{ cni_current_version }} state=directory
tags: cni
- name: Archive current version
synchronize:
src: "{{ cni_root_dir }}/bin"
dest: "{{ cni_root_dir }}/archives/{{ cni_current_version }}/"
compress: False
delete: True
delegate_to: "{{ inventory_hostname }}"
tags: cni

View File

@@ -0,0 +1,7 @@
---
- name: Remove tmp and obsolete files
file: path={{ item }} state=absent
loop:
- "{{ cni_root_dir }}/tmp/cni-plugins-linux-amd64-v1.1.1.tgz"
tags: cni

View File

@@ -0,0 +1,13 @@
---
- name: Create directories
file: path={{ item.dir }} state=directory mode={{ item.mode | default(omit) }}
loop:
- dir: "{{ cni_root_dir }}"
- dir: "{{ cni_root_dir }}/bin"
- dir: "{{ cni_root_dir }}/archives"
- dir: "{{ cni_root_dir }}/meta"
mode: 700
- dir: "{{ cni_root_dir }}/tmp"
mode: 700
tags: cni

View File

@@ -0,0 +1,12 @@
---
# Detect installed version (if any)
- block:
- import_tasks: ../includes/webapps_set_install_mode.yml
vars:
- root_dir: "{{ cni_root_dir }}"
- version: "{{ cni_version }}"
- set_fact: cni_install_mode={{ install_mode }}
- set_fact: cni_current_version={{ current_version | default('') }}
tags: cni

View File

@@ -0,0 +1,18 @@
---
- when: cni_install_mode != 'none'
block:
- name: Download the CNI plugins
get_url:
url: "{{ cni_archive_url }}"
dest: "{{ cni_root_dir }}/tmp"
checksum: sha256:{{ cni_archive_sha256 }}
- name: Extract archive
unarchive:
src: "{{ cni_root_dir }}/tmp/cni-plugins-linux-amd64-v{{ cni_version }}.tgz"
dest: "{{ cni_root_dir }}/bin/"
remote_src: True
tags: cni

View File

@@ -0,0 +1,24 @@
---
- include_tasks: directories.yml
tags: always
- include_tasks: facts.yml
tags: always
- include_tasks: archive_pre.yml
when: cni_install_mode == 'upgrade'
tags: always
- include_tasks: install.yml
tags: always
- include_tasks: write_version.yml
tags: always
- include_tasks: archive_post.yml
when: cni_install_mode == 'upgrade'
tags: always
- include_tasks: cleanup.yml
tags: always

View File

@@ -0,0 +1,5 @@
---
- name: Write installed version
copy: content={{ cni_version }} dest={{ cni_root_dir }}/meta/ansible_version
tags: cni