All checks were successful
continuous-integration/drone/push Build is passing
114 lines
3.2 KiB
YAML
114 lines
3.2 KiB
YAML
- name: Install packages
|
|
hosts: all
|
|
vars:
|
|
- user_name: "{{ ansible_env.USER }}"
|
|
- user_home: "/home/{{ user_name }}"
|
|
|
|
tasks:
|
|
|
|
- name: Stop packagekit
|
|
become: true
|
|
ansible.builtin.service:
|
|
name: packagekit
|
|
state: stopped
|
|
|
|
- name: Add third-party repository keys (non-ppa)
|
|
become: true
|
|
ansible.builtin.apt_key:
|
|
url: "{{ item.key_location }}"
|
|
state: present
|
|
loop: "{{ third_party_repos }}"
|
|
|
|
- name: Add third-party repositories (non-ppa)
|
|
become: true
|
|
ansible.builtin.apt_repository:
|
|
repo: "{{ item.repo }}"
|
|
state: present
|
|
filename: "{{ item.filename }}"
|
|
update_cache: true
|
|
loop: "{{ third_party_repos }}"
|
|
|
|
- name: Install packages from Debian
|
|
become: true
|
|
ansible.builtin.apt:
|
|
state: present
|
|
update_cache: true
|
|
pkg: "{{ pkgs_to_install }}"
|
|
|
|
- name: Download innernet binary
|
|
ansible.builtin.get_url:
|
|
url: https://git.fsfe.org/fsfe-system-hackers/innernet-playbook/raw/branch/master/roles/client/files/innernet.deb
|
|
dest: /tmp/innernet.deb
|
|
|
|
- name: Install innernet
|
|
become: true
|
|
ansible.builtin.apt:
|
|
deb: /tmp/innernet.deb
|
|
|
|
- name: Check gtimelog directory is existing
|
|
become: false
|
|
file:
|
|
owner: "{{ user_name }}"
|
|
group: "{{ user_name }}"
|
|
path: "{{ user_home }}/.local/share/gtimelog/"
|
|
state: directory
|
|
mode: "755"
|
|
|
|
- name: Download gtimelog utils
|
|
become: false
|
|
ansible.builtin.shell: git clone -b master https://git.fsfe.org/FSFE/gtimelog-utils.git "{{ user_home }}/gtimelog-utils"
|
|
tags:
|
|
- add_gtimelog_utils
|
|
|
|
- name: Add cron job
|
|
become: false
|
|
ansible.builtin.cron:
|
|
name: "hourly_check_of_timelog"
|
|
minute: "30"
|
|
hour: "*"
|
|
job: "bash {{ user_home }}/gtimelog-utils/check-timelog.sh"
|
|
tags:
|
|
- add_gtimelog_utils
|
|
|
|
- name: Get the latest RustDesk version tag
|
|
ansible.builtin.set_fact:
|
|
VER_TAG: "{{ lookup('url', 'https://api.github.com/repos/rustdesk/rustdesk/releases/latest') | from_json | json_query('tag_name') | regex_replace('\"', '')}}"
|
|
|
|
- name: Download RustDesk
|
|
ansible.builtin.get_url:
|
|
url: "https://github.com/rustdesk/rustdesk/releases/download/{{ VER_TAG }}/rustdesk-{{ VER_TAG }}-x86_64.deb"
|
|
dest: /tmp/rustdesk-{{ VER_TAG }}-x86_64.deb
|
|
|
|
- name: Install RustDesk
|
|
become: true
|
|
ansible.builtin.apt:
|
|
deb: /tmp/rustdesk-{{ VER_TAG }}-x86_64.deb
|
|
|
|
- name: Remove unneeded packages
|
|
become: true
|
|
ansible.builtin.apt:
|
|
state: absent
|
|
update_cache: true
|
|
pkg: "{{ pkgs_to_uninstall }}"
|
|
|
|
- name: Remove useless packages from the cache
|
|
become: true
|
|
ansible.builtin.apt:
|
|
autoclean: true
|
|
|
|
- name: Remove dependencies that are no longer required
|
|
become: true
|
|
ansible.builtin.apt:
|
|
autoremove: true
|
|
|
|
- name: Update all packages to their latest version
|
|
become: true
|
|
ansible.builtin.apt:
|
|
name: "*"
|
|
state: latest
|
|
update_cache: true
|
|
|
|
- name: Set default git behavior for merges
|
|
ansible.builtin.shell:
|
|
cmd: git config --global pull.rebase false
|