This repository has been archived on 2025-05-03. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
transip-client-ansible/tasks.yml

85 lines
2 KiB
YAML

- name: install packages
become: true
package:
name: '{{ item }}'
state: present
loop: '{{ packages }}'
- name: clone project
git:
repo: '{{ app_url }}'
dest: '{{ app_dir }}'
version: '{{ app_branch }}'
update: yes
- name: include poetry tasks
include_role:
name: common
tasks_from: 'poetry.yml'
vars:
poetry_user: '{{ ansible_user_id }}'
poetry_dir: '{{ ansible_env.HOME }}/.poetry'
- name: run poetry tasks
block:
- name: retrieve user $PATH
shell: 'echo $PATH'
register: path_stats
- name: set poetry user variables
set_fact:
poetry_user_path: '{{ path_stats.stdout }}'
- name: set default venv python version
command: 'poetry env use python3.9'
args:
chdir: '{{ app_dir }}'
environment:
PATH: '/home/{{ app_user }}/.local/bin:{{ poetry_user_path }}'
- name: install project dependencies
command: 'poetry install --no-dev --extras sentry'
args:
chdir: '{{ app_dir }}'
environment:
PATH: '/home/{{ app_user }}/.local/bin:{{ poetry_user_path }}'
- name: create ssh directory
file:
path: '{{ private_key_dir }}'
state: 'directory'
- name: copy private key
copy:
src: 'files/transip-client.key'
dest: '{{ private_key_dir }}/{{ private_key_name }}'
mode: 0600
- name: copy environment file
template:
src: 'templates/env.j2'
dest: '{{ app_dir }}/.env'
mode: 0600
- name: create systemd user directory
file:
path: '{{ systemd_dir }}'
state: 'directory'
- name: copy systemd templates
template:
src: '{{ item.src }}'
dest: '{{ item.dest }}'
mode: '{{ item.mode }}'
loop:
- {
src: 'templates/timer.j2',
dest: '{{ systemd_dir }}/transip-client.timer',
mode: '0644',
}
- {
src: 'templates/service.j2',
dest: '{{ systemd_dir }}/transip-client.service',
mode: '0644',
}
notify: enable transip-client timer