Group vars refactor
This commit is contained in:
parent
f7eb8dc56d
commit
755493d155
31 changed files with 355 additions and 398 deletions
|
|
@ -1,8 +1,8 @@
|
|||
- name: set package directory
|
||||
set_fact:
|
||||
- name: Set package directory
|
||||
ansible.builtin.set_fact:
|
||||
build_dir: '{{ aur_build_dir }}/{{ item.name }}'
|
||||
|
||||
- name: 'retrieve package name for {{ item.name }}'
|
||||
- name: 'Retrieve package name for {{ item.name }}'
|
||||
command:
|
||||
argv:
|
||||
- grep
|
||||
|
|
@ -12,7 +12,7 @@
|
|||
- "{{ build_dir }}/PKGBUILD"
|
||||
register: pkg_name
|
||||
|
||||
- name: 'retrieve package version for {{ item.name }}'
|
||||
- name: 'Retrieve package version for {{ item.name }}'
|
||||
command:
|
||||
argv:
|
||||
- grep
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
- "{{ build_dir }}/PKGBUILD"
|
||||
register: pkg_version
|
||||
|
||||
- name: 'retrieve package release for {{ item.name }}'
|
||||
- name: 'Retrieve package release for {{ item.name }}'
|
||||
command:
|
||||
argv:
|
||||
- grep
|
||||
|
|
@ -32,21 +32,22 @@
|
|||
- "{{ build_dir }}/PKGBUILD"
|
||||
register: pkg_release
|
||||
|
||||
- set_fact:
|
||||
- name: Set package filename & version
|
||||
ansible.builtin.set_fact:
|
||||
package_filename: '{{ pkg_name.stdout }}-{{ pkg_version.stdout }}-{{ pkg_release.stdout }}-{{ item.arch }}.pkg.tar.zst'
|
||||
installed_version: ansible_facts.packages[item.package_name].version|default('')
|
||||
|
||||
- name: 'build package {{ item.name }}'
|
||||
command: 'makepkg --syncdeps --rmdeps --clean --noconfirm --force'
|
||||
- name: 'Build package {{ item.name }}'
|
||||
ansible.builtin.command: 'makepkg --syncdeps --rmdeps --clean --noconfirm --force'
|
||||
args:
|
||||
chdir: '{{ build_dir }}'
|
||||
creates: '{{ build_dir }}/{{ package_filename }}'
|
||||
register: package_build
|
||||
when: item.version != installed_version
|
||||
|
||||
- name: 'install {{ item.name }}'
|
||||
- name: 'Install {{ item.name }}'
|
||||
become: true
|
||||
pacman:
|
||||
community.general.pacman:
|
||||
name: '{{ build_dir }}/{{ package_filename }}'
|
||||
state: present
|
||||
when: item.version != installed_version
|
||||
|
|
@ -1,19 +1,19 @@
|
|||
- name: retrieve directory stats
|
||||
stat:
|
||||
- name: Retrieve directory stats
|
||||
ansible.builtin.stat:
|
||||
path: '{{ aur_build_dir }}/{{ item.name }}'
|
||||
loop: '{{ aur_packages }}'
|
||||
|
||||
- name: clone aur packages
|
||||
- name: Clone aur packages
|
||||
become: true
|
||||
git:
|
||||
ansible.builtin.git:
|
||||
repo: '{{ item.url }}'
|
||||
dest: '{{ aur_build_dir }}/{{ item.name }}'
|
||||
update: true
|
||||
loop: '{{ aur_packages }}'
|
||||
|
||||
- name: change aur package directories owner
|
||||
- name: Change aur package directories owner
|
||||
become: true
|
||||
file:
|
||||
ansible.builtin.file:
|
||||
path: '{{ aur_build_dir }}/{{ item.name }}'
|
||||
state: directory
|
||||
owner: '{{ ansible_user_id }}'
|
||||
|
|
@ -21,6 +21,6 @@
|
|||
recurse: true
|
||||
loop: '{{ aur_packages }}'
|
||||
|
||||
- name: build & install aur packages
|
||||
include_tasks: 'tasks/aur-package.yml'
|
||||
- name: Build & install aur packages
|
||||
ansible.builtin.include_tasks: 'tasks/arch/aur-package.yml'
|
||||
loop: '{{ aur_packages }}'
|
||||
|
|
@ -10,7 +10,7 @@
|
|||
- name: Setup desktop configuration
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
path: 'files/docker-daemon.json'
|
||||
path: 'files/desktop/docker-daemon.json'
|
||||
dest: '/etc/docker/daemon.json'
|
||||
mode: '0755'
|
||||
when: ansible_hostname == 'desktop'
|
||||
6
tasks/arch/neovim.yml
Normal file
6
tasks/arch/neovim.yml
Normal file
|
|
@ -0,0 +1,6 @@
|
|||
- name: Install language servers
|
||||
become: true
|
||||
community.general.pacman:
|
||||
name: '{{ item }}'
|
||||
state: present
|
||||
loop: '{{ language_servers | map(attribute="package") | list }}'
|
||||
|
|
@ -1,13 +1,14 @@
|
|||
- set_fact:
|
||||
- name: Set NVM install directory
|
||||
ansible.builtin.set_fact:
|
||||
install_dir: '{{ xdg_config_dir }}/nvm'
|
||||
|
||||
- name: remove manually installed nvm install directory
|
||||
file:
|
||||
- name: Remove manually installed nvm install directory
|
||||
ansible.builtin.file:
|
||||
path: '{{ install_dir }}'
|
||||
state: absent
|
||||
|
||||
- name: remove nvm entry from bashrc
|
||||
lineinfile:
|
||||
- name: Remove nvm entry from bashrc
|
||||
ansible.builtin.lineinfile:
|
||||
path: '{{ ansible_env.HOME }}/.bashrc.override'
|
||||
line: >
|
||||
[ -s "{{ install_dir }}/nvm.sh" ] && \. "{{ install_dir }}/nvm.sh" # This loads nvm
|
||||
57
tasks/debian/neovim.yml
Normal file
57
tasks/debian/neovim.yml
Normal file
|
|
@ -0,0 +1,57 @@
|
|||
- name: Install language servers on debian hosts
|
||||
become: true
|
||||
community.general.npm:
|
||||
name: '{{ item }}'
|
||||
global: true
|
||||
loop: '{{ language_servers | map(attribute="package") | list }}'
|
||||
|
||||
- name: Create neovim install directory
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: '{{ neovim.install_path }}'
|
||||
owner: '{{ ansible_user_id }}'
|
||||
group: '{{ ansible_user_gid }}'
|
||||
mode: '0755'
|
||||
|
||||
- name: Register the current neovim version
|
||||
ansible.builtin.command:
|
||||
argv:
|
||||
- '{{ neovim.install_path }}/bin/nvim'
|
||||
- '--version'
|
||||
register: neovim_stats
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
|
||||
- name: Parse the current neovim version
|
||||
ansible.builtin.set_fact:
|
||||
neovim_installed_version: neovim_stats.stdout_lines[0] | regex_search('(v\d+\.\d+\.\d+)')
|
||||
when: neovim_stats.rc == 0
|
||||
|
||||
- name: Download neovim {{ neovim.version }}
|
||||
ansible.builtin.get_url:
|
||||
url: 'https://github.com/neovim/neovim/releases/download/{{ neovim.version }}/nvim-linux-x86_64.tar.gz'
|
||||
dest: /tmp/nvim-linux64.tar.gz
|
||||
mode: '0755'
|
||||
checksum: '{{ neovim.download_checksum }}'
|
||||
when: neovim_stats.rc > 0 or neovim_installed_version != neovim.version
|
||||
register: neovim_download
|
||||
|
||||
- name: Extract downloaded neovim version
|
||||
ansible.builtin.unarchive:
|
||||
src: /tmp/nvim-linux64.tar.gz
|
||||
dest: '{{ neovim.install_path }}'
|
||||
extra_opts:
|
||||
- '--strip-components=1'
|
||||
- '--show-stored-names'
|
||||
- '--overwrite'
|
||||
when: |
|
||||
neovim_download.state == 'file'
|
||||
and (neovim_installed_version is undefined or neovim_installed_version != neovim.version)
|
||||
|
||||
- name: Add neovim to PATH
|
||||
become: true
|
||||
ansible.builtin.template:
|
||||
src: 'templates/debian/nvim.profile.j2'
|
||||
dest: '/etc/profile.d/neovim.sh'
|
||||
mode: '0755'
|
||||
|
|
@ -37,22 +37,6 @@
|
|||
name: neovim
|
||||
global: true
|
||||
|
||||
- name: Install language servers
|
||||
become: true
|
||||
ansible.builtin.package:
|
||||
name: '{{ item }}'
|
||||
state: present
|
||||
loop: '{{ language_servers | map(attribute="package") | list }}'
|
||||
when: ansible_facts['os_family'] == 'Archlinux'
|
||||
|
||||
- name: Install language servers on debian hosts
|
||||
become: true
|
||||
community.general.npm:
|
||||
name: '{{ item }}'
|
||||
global: true
|
||||
loop: '{{ language_servers | map(attribute="package") | list }}'
|
||||
when: ansible_facts['os_family'] == 'Debian'
|
||||
|
||||
- name: Remove old neovim configuration file
|
||||
ansible.builtin.file:
|
||||
path: '{{ xdg_config_dir }}/nvim/init.vim'
|
||||
|
|
@ -136,57 +120,3 @@
|
|||
|
||||
- src: 'templates/nvim/lua/filetype.lua.j2'
|
||||
dest: '{{ xdg_config_dir }}/nvim/lua/_filetype.lua'
|
||||
|
||||
- name: Install neovim from archive
|
||||
when: ansible_facts['os_family'] == 'Debian'
|
||||
block:
|
||||
- name: Create neovim install directory
|
||||
become: true
|
||||
ansible.builtin.file:
|
||||
state: directory
|
||||
path: '{{ neovim.install_path }}'
|
||||
owner: '{{ ansible_user_id }}'
|
||||
group: '{{ ansible_user_gid }}'
|
||||
mode: '0755'
|
||||
|
||||
- name: Register the current neovim version
|
||||
ansible.builtin.command:
|
||||
argv:
|
||||
- '{{ neovim.install_path }}/bin/nvim'
|
||||
- '--version'
|
||||
register: neovim_stats
|
||||
changed_when: false
|
||||
ignore_errors: true
|
||||
|
||||
- name: Parse the current neovim version
|
||||
ansible.builtin.set_fact:
|
||||
neovim_installed_version: neovim_stats.stdout_lines[0] | regex_search('(v\d+\.\d+\.\d+)')
|
||||
when: neovim_stats.rc == 0
|
||||
|
||||
- name: Download neovim {{ neovim.version }}
|
||||
ansible.builtin.get_url:
|
||||
url: 'https://github.com/neovim/neovim/releases/download/{{ neovim.version }}/nvim-linux-x86_64.tar.gz'
|
||||
dest: /tmp/nvim-linux64.tar.gz
|
||||
mode: '0755'
|
||||
checksum: '{{ neovim.download_checksum }}'
|
||||
when: neovim_stats.rc > 0 or neovim_installed_version != neovim.version
|
||||
register: neovim_download
|
||||
|
||||
- name: Extract downloaded neovim version
|
||||
ansible.builtin.unarchive:
|
||||
src: /tmp/nvim-linux64.tar.gz
|
||||
dest: '{{ neovim.install_path }}'
|
||||
extra_opts:
|
||||
- '--strip-components=1'
|
||||
- '--show-stored-names'
|
||||
- '--overwrite'
|
||||
when: |
|
||||
neovim_download.state == 'file'
|
||||
and (neovim_installed_version is undefined or neovim_installed_version != neovim.version)
|
||||
|
||||
- name: Add neovim to PATH
|
||||
become: true
|
||||
ansible.builtin.template:
|
||||
src: 'templates/nvim.profile.j2'
|
||||
dest: '/etc/profile.d/neovim.sh'
|
||||
mode: '0755'
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue