You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
54 lines
1.7 KiB
YAML
54 lines
1.7 KiB
YAML
# Note: we don't use the GitHub API to retrieve the latest version because
|
|
# it has rate limits which are hard to avoid in CI (we need a token, authenticate
|
|
# with the API, etc.). Instead, we browse the latest release url which redirects
|
|
# to the release page, where we can find the version number in the URL.
|
|
- become: false
|
|
delegate_to: localhost
|
|
run_once: true
|
|
block:
|
|
- name: Get latest release information from GitHub
|
|
uri:
|
|
url: '{{ mergerfs_github_releases_url }}/latest'
|
|
register: mergerfs_github_release_page
|
|
- name: Set latest mergerfs version fact
|
|
set_fact:
|
|
mergerfs_version: "{{ mergerfs_github_release_page['url'].split('/')[-1] }}"
|
|
when: mergerfs_version == "latest"
|
|
|
|
- name: Determine package download url
|
|
set_fact:
|
|
mergerfs_package_url: '{{ mergerfs_github_releases_url }}/download/{{ mergerfs_version
|
|
}}/{{ mergerfs_pkg_prefix }}{{ mergerfs_version }}{{ mergerfs_pkg_suffix }}'
|
|
|
|
- name: Install xz-utils package for .deb package installation
|
|
become: true
|
|
apt:
|
|
name: xz-utils
|
|
state: present
|
|
update_cache: true
|
|
when: ansible_pkg_mgr == 'apt'
|
|
|
|
- name: Install mergerfs package with apt
|
|
become: true
|
|
apt:
|
|
deb: '{{ mergerfs_package_url }}'
|
|
state: present
|
|
update_cache: true
|
|
when: ansible_pkg_mgr == 'apt'
|
|
|
|
- name: Install mergerfs package with yum
|
|
become: true
|
|
yum:
|
|
name: '{{ mergerfs_package_url }}'
|
|
state: present
|
|
disable_gpg_check: true # the package is not signed
|
|
when: ansible_pkg_mgr == 'yum'
|
|
|
|
- name: Install mergerfs package with dnf
|
|
become: true
|
|
dnf:
|
|
name: '{{ mergerfs_package_url }}'
|
|
state: present
|
|
disable_gpg_check: true # the package is not signed
|
|
when: ansible_pkg_mgr == 'dnf'
|