From 9c2cf94ea210d58604606f80e71acec81504f4ff Mon Sep 17 00:00:00 2001 From: Thomas Basler Date: Sat, 8 Jan 2022 03:04:42 +0100 Subject: [PATCH] xrdp_apphost: Split role into different files --- roles/xrdp_apphost/tasks/estlcam.yml | 36 ++++++++++ roles/xrdp_apphost/tasks/lightburn.yml | 23 ++++++ roles/xrdp_apphost/tasks/main.yml | 96 ++------------------------ roles/xrdp_apphost/tasks/samba.yml | 12 ++++ roles/xrdp_apphost/tasks/xrdp.yml | 23 ++++++ 5 files changed, 98 insertions(+), 92 deletions(-) create mode 100644 roles/xrdp_apphost/tasks/estlcam.yml create mode 100644 roles/xrdp_apphost/tasks/lightburn.yml create mode 100644 roles/xrdp_apphost/tasks/samba.yml create mode 100644 roles/xrdp_apphost/tasks/xrdp.yml diff --git a/roles/xrdp_apphost/tasks/estlcam.yml b/roles/xrdp_apphost/tasks/estlcam.yml new file mode 100644 index 0000000..e13790e --- /dev/null +++ b/roles/xrdp_apphost/tasks/estlcam.yml @@ -0,0 +1,36 @@ +--- + +- name: Enable contrib repositories + apt_repository: + repo: deb http://deb.debian.org/debian {{ ansible_distribution_release }} contrib + +- name: Add i386 Architecture + command: dpkg --add-architecture i386 + args: + creates: /var/lib/dpkg/arch + when: ansible_architecture != 'i386' + register: archrc + +- name: Update APT Cache for i386 + apt: + update_cache: true + when: archrc is defined and archrc.changed + +- name: Install Estlcam dependencies + apt: + name: + - winetricks + - wine32 + - xfwm4 + +- name: Create Estlcam group + group: name={{ estlcam_group }} + +- name: Create Estlcam user + user: name={{ estlcam_user }} password={{ estlcam_pass | password_hash('sha512', estlcam_salt) }} home=/home/{{ estlcam_user }} group={{ estlcam_group }} + +- name: Create Estlcam .xsession + template: src=estlcam_xsession.j2 dest=/home/{{ estlcam_user }}/.xsession + +- name: Create Estlcam data directory + file: path=/home/{{ estlcam_user }}/data state=directory mode=0755 owner={{ estlcam_user }} group={{ estlcam_group }} \ No newline at end of file diff --git a/roles/xrdp_apphost/tasks/lightburn.yml b/roles/xrdp_apphost/tasks/lightburn.yml new file mode 100644 index 0000000..846ad19 --- /dev/null +++ b/roles/xrdp_apphost/tasks/lightburn.yml @@ -0,0 +1,23 @@ +--- + +- name: Install LightBurn dependencies + apt: + name: + - libpulse-mainloop-glib0 + - libnss3 + +- name: Create LightBurn group + group: name={{ lightburn_group }} + +- name: Create LightBurn user + user: name={{ lightburn_user }} password={{ lightburn_pass | password_hash('sha512', lightburn_salt) }} home=/home/{{ lightburn_user }} group={{ lightburn_group }} + +- name: Create LightBurn .xsession + template: src=lightburn_xsession.j2 dest=/home/{{ lightburn_user }}/.xsession + +- name: Create LightBurn data directory + file: path=/home/{{ lightburn_user }}/data state=directory mode=0755 owner={{ lightburn_user }} group={{ lightburn_group }} + +- name: Download LightBurn binary + get_url: url={{ lightburn_url }} dest={{ lightburn_target }} checksum={{ lightburn_checksum }} mode=0755 + notify: Install LightBurn \ No newline at end of file diff --git a/roles/xrdp_apphost/tasks/main.yml b/roles/xrdp_apphost/tasks/main.yml index 40af3d3..b0e9d14 100644 --- a/roles/xrdp_apphost/tasks/main.yml +++ b/roles/xrdp_apphost/tasks/main.yml @@ -1,97 +1,9 @@ --- -- name: Install main dependencies - apt: - name: - - xrdp - - libasound2 - - matchbox-window-manager - -- name: Configure xrdp.ini - template: src=xrdp.ini.j2 dest=/etc/xrdp/xrdp.ini - notify: Restart xrdp - -- name: Configure sesman.ini - template: src=sesman.ini.j2 dest=/etc/xrdp/sesman.ini - notify: Restart xrdp - -- name: Create xrdp directory - file: path=/usr/local/share/xrdp/ state=directory mode=0755 owner=root group=root - -- name: Copy Binary Kitchen Logo - copy: src={{ xrdp_ls_logo_filename }} dest=/usr/local/share/xrdp/{{ xrdp_ls_logo_filename }} - notify: Restart xrdp - - -- name: Install samba - apt: - name: - - samba - -- name: Configure samba - template: - src: smb.conf.j2 - dest: /etc/samba/smb.conf - notify: Reload smbd - - -- name: Install LightBurn dependencies - apt: - name: - - libpulse-mainloop-glib0 - - libnss3 - -- name: Create LightBurn group - group: name={{ lightburn_group }} - -- name: Create LightBurn user - user: name={{ lightburn_user }} password={{ lightburn_pass | password_hash('sha512', lightburn_salt) }} home=/home/{{ lightburn_user }} group={{ lightburn_group }} - -- name: Create LightBurn .xsession - template: src=lightburn_xsession.j2 dest=/home/{{ lightburn_user }}/.xsession - -- name: Create LightBurn data directory - file: path=/home/{{ lightburn_user }}/data state=directory mode=0755 owner={{ lightburn_user }} group={{ lightburn_group }} - -- name: Download LightBurn binary - get_url: url={{ lightburn_url }} dest={{ lightburn_target }} checksum={{ lightburn_checksum }} mode=0755 - notify: Install LightBurn - - -- name: Enable contrib repositories - apt_repository: - repo: deb http://deb.debian.org/debian {{ ansible_distribution_release }} contrib - -- name: Add i386 Architecture - command: dpkg --add-architecture i386 - args: - creates: /var/lib/dpkg/arch - when: ansible_architecture != 'i386' - register: archrc - -- name: Update APT Cache for i386 - apt: - update_cache: true - when: archrc is defined and archrc.changed - -- name: Install Estlcam dependencies - apt: - name: - - winetricks - - wine32 - - xfwm4 - -- name: Create Estlcam group - group: name={{ estlcam_group }} - -- name: Create Estlcam user - user: name={{ estlcam_user }} password={{ estlcam_pass | password_hash('sha512', estlcam_salt) }} home=/home/{{ estlcam_user }} group={{ estlcam_group }} - -- name: Create Estlcam .xsession - template: src=estlcam_xsession.j2 dest=/home/{{ estlcam_user }}/.xsession - -- name: Create Estlcam data directory - file: path=/home/{{ estlcam_user }}/data state=directory mode=0755 owner={{ estlcam_user }} group={{ estlcam_group }} +- include: xrdp.yml +- include: lightburn.yml +- include: estlcam.yml +- include: samba.yml - name: Create tsadmin group diff --git a/roles/xrdp_apphost/tasks/samba.yml b/roles/xrdp_apphost/tasks/samba.yml new file mode 100644 index 0000000..d6ad354 --- /dev/null +++ b/roles/xrdp_apphost/tasks/samba.yml @@ -0,0 +1,12 @@ +--- + +- name: Install samba + apt: + name: + - samba + +- name: Configure samba + template: + src: smb.conf.j2 + dest: /etc/samba/smb.conf + notify: Reload smbd \ No newline at end of file diff --git a/roles/xrdp_apphost/tasks/xrdp.yml b/roles/xrdp_apphost/tasks/xrdp.yml new file mode 100644 index 0000000..4e8ec8c --- /dev/null +++ b/roles/xrdp_apphost/tasks/xrdp.yml @@ -0,0 +1,23 @@ +--- + +- name: Install main dependencies + apt: + name: + - xrdp + - libasound2 + - matchbox-window-manager + +- name: Configure xrdp.ini + template: src=xrdp.ini.j2 dest=/etc/xrdp/xrdp.ini + notify: Restart xrdp + +- name: Configure sesman.ini + template: src=sesman.ini.j2 dest=/etc/xrdp/sesman.ini + notify: Restart xrdp + +- name: Create xrdp directory + file: path=/usr/local/share/xrdp/ state=directory mode=0755 owner=root group=root + +- name: Copy Binary Kitchen Logo + copy: src={{ xrdp_ls_logo_filename }} dest=/usr/local/share/xrdp/{{ xrdp_ls_logo_filename }} + notify: Restart xrdp \ No newline at end of file