Files
@ 291d8ccb5379
Branch filter:
Location: ChaosStuff/cnc-dashboard/roles/initial/tasks/aur.yml - annotation
291d8ccb5379
1.8 KiB
text/x-yaml
PR: Shellcheck warning fix (metalgamer)
c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac c3309581c2ac | ---
# https://gist.github.com/cahna/45bb9eee92c5f1fce66f
- name: AUR | get metadata from AurJson api
connection: local
sudo: no
uri: >
url=https://aur.archlinux.org/rpc.php?type=info&arg={{ pkg_name | mandatory }}
return_content=yes
timeout=6
register: api_info
- assert:
that:
- api_info.status == 200
- api_info.json is defined
- api_info.json.type == 'info'
- api_info.json.resultcount == 1
- api_info.json.results is defined
- name: AUR | {{ pkg_name }} | download tarball
sudo: no
connection: local
get_url: >
url='https://aur.archlinux.org{{ api_info.json.results.URLPath }}'
dest='/tmp/'
register: aur_tarball
- name: AUR | {{ pkg_name }} | upload tarball to host and extract it
sudo: yes
sudo_user: "{{ makepkg_nonroot_user }}"
unarchive: >
src={{ aur_tarball.dest }}
dest=/tmp/
register: extracted_pkg
# This will break if run as root. Set user to use with makepkg with 'makepkg_user' var
- name: AUR | {{ pkg_name }} | build package, including missing dependencies
when: extracted_pkg | changed
sudo: yes
sudo_user: "{{ makepkg_nonroot_user }}"
command: >
makepkg --noconfirm --noprogressbar -mfs
chdir=/tmp/{{ pkg_name }}
register: aur_makepkg_result
# Shameless variable declaration hack
- shell: ls -1 /tmp/{{ pkg_name | quote }} | grep pkg.tar
register: compiled_package_name
- name: AUR | {{ pkg_name }} | install newly-built aur package with pacman
when: aur_makepkg_result | changed
sudo: yes
shell: >
pacman --noconfirm --noprogressbar --needed -U {{ compiled_package_name.stdout | quote }}
chdir=/tmp/{{ pkg_name }}
register: pacman_install_result
changed_when: pacman_install_result.stdout is defined and pacman_install_result.stdout.find('there is nothing to do') == -1
|