Skip to content

Commit

Permalink
updating full rpm logic
Browse files Browse the repository at this point in the history
  • Loading branch information
Adam Leiner committed Jul 26, 2024
1 parent 2dc929f commit a10877e
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 45 deletions.
2 changes: 1 addition & 1 deletion roles/rke2/defaults/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -34,4 +34,4 @@ kubelet_node_name:
rke2_config: {}
metrics_running: false
node_ready: "false"
api_server_running: false
api_server_running: false
72 changes: 29 additions & 43 deletions roles/rke2/tasks/calculate_rke2_version.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
- name: "Determine latest version from internet"
when:
- rke2_install_version | length == 0
- rke2_versioned_yum_repo.baseurl | search ("rpm.rancher.io")
- '"rpm.rancher.io" in rke2_versioned_yum_repo.baseurl'
- rke2_install_local_tarball_path == ""
- rke2_install_tarball_url == ""
block:
Expand All @@ -22,27 +22,34 @@
args:
executable: /usr/bin/bash

- name: Set rke2_full_version fact
- name: Set rke2_full_version fact from internet source
ansible.builtin.set_fact:
rke2_full_version: "{{ rke2_full_version.stdout }}"

- name: Unset rke2_full_version if skipped
ansible.builtin.set_fact:
rke2_full_version: ""
when:
rke2_full_version is skipped

- name: Set rke2_full_version fact from variable source
ansible.builtin.set_fact:
rke2_full_version: "{{ rke2_install_version }}"
when:
- rke2_install_version | length > 0

- name: Set rke2_package_state to latest
ansible.builtin.set_fact:
rke2_full_version: "{{ rke2_full_version.stdout if (rke2_install_version | length == 0) else rke2_install_version }}"
rke2_package_state: "latest"
when:
- rke2_full_version | length == 0

- name: "Set install version for RPM"
when:
- install_method == "rpm"
- rke2_full_version | length > 0
block:

- name: Set dot version
ansible.builtin.shell:
cmd: set -o pipefail && echo {{ rke2_full_version }} | /usr/bin/cut -d'+' -f1
register: rke2_version_dot_tmp
changed_when: false
args:
executable: /usr/bin/bash

- name: Set rke2_version_dot fact
ansible.builtin.set_fact:
rke2_version_dot: "{{ rke2_version_dot_tmp.stdout }}"

- name: Set Maj.Min version
ansible.builtin.shell:
cmd: set -o pipefail && echo {{ rke2_full_version }} | /bin/awk -F'.' '{ print $1"."$2 }' | sed "s|^v||g"
Expand All @@ -67,37 +74,16 @@
ansible.builtin.set_fact:
rke2_version_rpm: "{{ rke2_version_rpm_tmp.stdout }}"

- name: Prepend 'dash' to version string
ansible.builtin.set_fact:
rke2_version_rpm: "{{ '-' + rke2_version_rpm }}"
when:
- rke2_version_rpm | length > 0

# - name: Describe versions
# ansible.builtin.debug:
# msg:
# - "Full version, with revision indication: {{ rke2_full_version }}"
# - "Version without revision indication: {{ rke2_version_dot }}"
# # - "Version without revision indication: {{ rke2_version_dot }}"
# - "Major and Minor Only: {{ rke2_version_majmin }}"
# - "RPM Version (tilde): {{ rke2_version_rpm }}"

- name: "Set install version for RPM"
when:
- install_method == "rpm"
block:

- name: Set RPM version
ansible.builtin.shell:
cmd: set -o pipefail && echo {{ rke2_install_version }} | sed -E -e "s/[\+-]/~/g" | sed -E -e "s/v(.*)/\1/"
register: rke2_version_rpm_tmp
changed_when: false
args:
executable: /usr/bin/bash
when:
- rke2_install_version | length > 0

- name: Set rke2_version_rpm fact
ansible.builtin.set_fact:
rke2_version_rpm_no_dash: "{{ rke2_version_rpm_tmp.stdout }}"
when:
- rke2_version_rpm_tmp is defined

- name: Prepend 'dash' to version string
ansible.builtin.set_fact:
rke2_version_rpm: "{{ '-' + rke2_version_rpm_no_dash }}"
when:
- rke2_version_rpm_no_dash is defined
6 changes: 5 additions & 1 deletion roles/rke2/tasks/rpm_install.yml
Original file line number Diff line number Diff line change
Expand Up @@ -20,10 +20,14 @@
gpgkey: "{{ rke2_versioned_yum_repo.gpgkey }}"
enabled: "{{ rke2_versioned_yum_repo.enabled }}"

- name: debug install
debug:
msg: installing {{ service_name }}{{ rke2_version_rpm }}

- name: YUM-Based Install
ansible.builtin.dnf:
name: "{{ service_name }}{{ rke2_version_rpm }}"
state: installed
state: "{{ rke2_package_state}}"
allow_downgrade: true
register: result
retries: 10
Expand Down
3 changes: 3 additions & 0 deletions roles/rke2/vars/main.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,3 +3,6 @@
rke2_installed: false
rke2_version_changed: false
rke2_reboot: false
rke2_version_majmin: ""
rke2_version_rpm: ""
rke2_package_state: "installed"

Check failure on line 8 in roles/rke2/vars/main.yml

View workflow job for this annotation

GitHub Actions / Lint for push

8:32 [new-line-at-end-of-file] no new line character at the end of file

0 comments on commit a10877e

Please sign in to comment.