35 lines
1.3 KiB
YAML
35 lines
1.3 KiB
YAML
# code: language=ansible
|
|||
|
|
|
||
|
|
- name: Get latest release of technitium from GitHub API
|
||
|
|
ansible.builtin.uri:
|
||
|
|
url: https://api.github.com/repos/TechnitiumSoftware/DnsServer/releases/latest
|
||
|
|
register: technitium_version_response
|
||
|
|
|
||
|
|
- name: Parse version from GitHub API response
|
||
|
|
ansible.builtin.set_fact:
|
||
|
|
technitium_version: "{{ technitium_version_response.json.tag_name }}"
|
||
|
|
technitium_version_numeric: "{{ technitium_version_response.json.tag_name | regex_replace('^v', '') }}"
|
||
|
|
|
||
|
|
- name: Debug technitium version
|
||
|
|
ansible.builtin.debug:
|
||
|
|
msg: |
|
||
|
|
Latest Technitium release version is {{ technitium_version }} ({{ technitium_version_numeric }})
|
||
|
|
|
||
|
|
- name: Get release hash
|
||
|
|
ansible.builtin.uri:
|
||
|
|
return_content: true
|
||
|
|
url: https://download.technitium.com/dns/archive/{{ technitium_version_numeric }}/DnsServerPortable.tar.gz.sha256
|
||
|
|
register: technitium_hash_response
|
||
|
|
|
||
|
|
- name: Debug release hash
|
||
|
|
ansible.builtin.debug:
|
||
|
|
var: technitium_hash_response.content
|
||
|
|
|
||
|
|
- name: Download release
|
||
|
|
ansible.builtin.get_url:
|
||
|
|
checksum: "sha256:{{ technitium_hash_response.content }}"
|
||
|
|
decompress: true
|
||
|
|
dest: /tmp/technitium_{{ technitium_version }}.tar
|
||
|
|
mode: '0644'
|
||
|
|
url: https://download.technitium.com/dns/archive/{{ technitium_version_numeric }}/DnsServerPortable.tar.gz
|