a bit of cleaning and testing, pipeline successful
This commit is contained in:
@ -15,6 +15,9 @@ main_packages:
|
||||
- python-is-python3
|
||||
- apache2
|
||||
- php
|
||||
- docker
|
||||
- docker-compose
|
||||
- docker.io
|
||||
|
||||
autologin_packages:
|
||||
- kde-plasma-desktop
|
||||
|
||||
@ -2,20 +2,20 @@
|
||||
|
||||
###############################################
|
||||
# Install Chrome
|
||||
- name: Chrome - Chrome - Check if installed
|
||||
- name: carputer - Chrome - Check if chrome installed
|
||||
command: dpkg -l google-chrome-stable
|
||||
register: chrome_installed
|
||||
ignore_errors: true
|
||||
|
||||
- name: Chrome - Chrome - Set chrome_present variable
|
||||
- name: carputer - Chrome - Set chrome_present variable
|
||||
set_fact:
|
||||
chrome_present: "{{ chrome_installed.rc == 0 }}"
|
||||
|
||||
- name: Chrome - Install Chrome
|
||||
- name: carputer - Chrome - Install Chrome
|
||||
include_tasks: /var/jenkins_home/ansible/roles/install_apps/tasks/chrome.yaml
|
||||
when: not chrome_present | bool
|
||||
|
||||
- name: Chrome - Create User Service Folder
|
||||
- name: carputer - Chrome - Create User Service Folder
|
||||
file:
|
||||
path: /home/cosmos/.config/systemd/user
|
||||
state: directory
|
||||
@ -23,8 +23,9 @@
|
||||
group: cosmos
|
||||
mode: '0700'
|
||||
|
||||
- name: Chrome - clear user cache
|
||||
shell: "rm -R /home/cosmos/.config/google-chrome"
|
||||
#- name: carputer - Chrome - clear user cache
|
||||
# shell: "rm -R /home/cosmos/.config/google-chrome"
|
||||
|
||||
|
||||
###############################################
|
||||
# Configure Kiosks
|
||||
|
||||
@ -3,15 +3,26 @@
|
||||
###############################################
|
||||
# Install KDE and other additional packages
|
||||
|
||||
# Stop SDDM if running
|
||||
- name: carputer - cosmos autologin - stop sddm
|
||||
systemd:
|
||||
name: sddm
|
||||
enabled: yes
|
||||
state: stopped
|
||||
ignore_errors: yes
|
||||
|
||||
- name: carputer - cosmos autologin - purge user account
|
||||
shell: "rm -R /home/cosmos"
|
||||
|
||||
# Install Packages
|
||||
- name: prereqs - install packages including KDE, will be slow
|
||||
- name: carputer - cosmos autologin - install packages including KDE, will be slow
|
||||
apt:
|
||||
name: "{{ item }}"
|
||||
state: present
|
||||
loop: "{{ autologin_packages }}"
|
||||
|
||||
# Set sddm as def
|
||||
- name: prereqs - enable sddm in xdm
|
||||
- name: carputer - cosmos autologin - enable sddm in xdm
|
||||
debconf:
|
||||
name: sddm
|
||||
question: shared/default-x-display-manager
|
||||
@ -19,14 +30,14 @@
|
||||
vtype: select
|
||||
|
||||
# enable sddm service
|
||||
- name: prereqs - enable sddm
|
||||
- name: carputer - cosmos autologin - enable sddm
|
||||
systemd:
|
||||
name: sddm
|
||||
enabled: yes
|
||||
state: started
|
||||
|
||||
# Configure Autologin
|
||||
- name: prereqs - configure autologin et. al.
|
||||
- name: carputer - cosmos autologin - configure autologin et. al.
|
||||
template:
|
||||
src: sddm.conf.j2
|
||||
dest: /etc/sddm.conf
|
||||
@ -35,7 +46,7 @@
|
||||
###############################################
|
||||
# Apply Profile
|
||||
# Create Cosmos user folder
|
||||
- name: prereqs - create cosmos user profile folder
|
||||
- name: carputer - cosmos autologin - create cosmos user profile folder
|
||||
file:
|
||||
path: /home/cosmos
|
||||
owner: cosmos
|
||||
@ -44,7 +55,7 @@
|
||||
mode: '0700'
|
||||
|
||||
# Extract profile
|
||||
- name: prereqs - extract cosmos user profile
|
||||
- name: carputer - cosmos autologin - extract cosmos user profile
|
||||
unarchive:
|
||||
src: /var/jenkins_home/ansible-files/profile/cosmos.tar.gz
|
||||
dest: /home
|
||||
@ -53,7 +64,7 @@
|
||||
mode: 0700
|
||||
|
||||
# Restart sddm to initialize user profile
|
||||
- name: prereqs - restart sddm
|
||||
- name: carputer - cosmos autologin - restart sddm
|
||||
systemd:
|
||||
name: sddm
|
||||
state: restarted
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
---
|
||||
|
||||
# Create service Folder
|
||||
- name: gps_service - create photo_refresh folder
|
||||
- name: carputer - gps_service - create photo_refresh folder
|
||||
file:
|
||||
path: "{{ gps_service_directory }}"
|
||||
state: directory
|
||||
@ -9,7 +9,7 @@
|
||||
owner: root
|
||||
group: root
|
||||
|
||||
- name: gps_service - Enable and start gpsd system service
|
||||
- name: carputer - gps_service - Enable and start gpsd system service
|
||||
become: true
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
@ -18,22 +18,22 @@
|
||||
name: gpsd
|
||||
|
||||
# this should never fail if things are plugged in correctly
|
||||
- name: gps_service - check for GPS device
|
||||
- name: carputer - gps_service - check for GPS device
|
||||
shell: ls /dev/ttyACM0
|
||||
register: check_gps_device
|
||||
|
||||
- name: gps_service - show device
|
||||
- name: carputer - gps_service - show device
|
||||
debug:
|
||||
msg: "Device Found: {{ check_gps_device.stdout_lines[0] }}"
|
||||
|
||||
- name: gps_service - copy service script
|
||||
- name: carputer - gps_service - copy service script
|
||||
template:
|
||||
src: gps_service.sh.j2
|
||||
dest: "{{ gps_service_directory }}/gps_service.sh"
|
||||
mode: 0755
|
||||
|
||||
# Create gps_service python service
|
||||
- name: gps_service - create service file
|
||||
- name: carputer - gps_service - create service file
|
||||
# vars:
|
||||
template:
|
||||
src: gps_service.service.j2
|
||||
@ -41,12 +41,12 @@
|
||||
mode: 0644
|
||||
|
||||
# daemon reload
|
||||
- name: gps_service - daemon reload
|
||||
- name: carputer - gps_service - daemon reload
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
|
||||
# Enable and start
|
||||
- name: gps_service - enable and start api
|
||||
- name: carputer - gps_service - enable and start api
|
||||
systemd:
|
||||
name: gps_service.service
|
||||
state: started
|
||||
|
||||
@ -6,7 +6,7 @@
|
||||
# so i can make a list of variables again
|
||||
###############################################
|
||||
|
||||
- name: Chrome Kiosk - display info
|
||||
- name: carputer - Chrome Kiosk - display info
|
||||
debug:
|
||||
msg:
|
||||
- "Chrome Kiosk Configuring"
|
||||
@ -15,7 +15,7 @@
|
||||
- "Chrome App Resolution: {{ item.chrome_resolution }}"
|
||||
|
||||
# Create user data dir Folder
|
||||
- name: timelapse - create working folder
|
||||
- name: carputer - Chrome Kiosk - create working folder
|
||||
when: create_data_dir | bool
|
||||
file:
|
||||
path: "{{ item.user_data_dir }}"
|
||||
@ -24,15 +24,15 @@
|
||||
owner: cosmos
|
||||
group: cosmos
|
||||
|
||||
- name: Chrome Kiosk - user stop service
|
||||
- name: carputer - Chrome Kiosk - user stop service
|
||||
command: "systemctl --user -M cosmos@ stop {{ item.service_name }}.service"
|
||||
ignore_errors: true
|
||||
|
||||
# - name: Chrome Kiosk - Kill chrome if running otherwise
|
||||
# - name: carputer - Chrome Kiosk - Kill chrome if running otherwise
|
||||
# command: pkill chrome
|
||||
# ignore_errors: true
|
||||
|
||||
- name: Chrome Kiosk - Copy chrome service file
|
||||
- name: carputer - Chrome Kiosk - Copy chrome service file
|
||||
template:
|
||||
src: chrome-app.service.j2
|
||||
dest: "/home/cosmos/.config/systemd/user/{{ item.service_name }}.service"
|
||||
@ -40,14 +40,14 @@
|
||||
group: cosmos
|
||||
mode: 0600
|
||||
|
||||
- name: Chrome Kiosk - user daemon reload
|
||||
- name: carputer - Chrome Kiosk - user daemon reload
|
||||
command: "systemctl --user -M cosmos@ daemon-reload"
|
||||
register: user_daemon_reload
|
||||
|
||||
- name: Chrome Kiosk - user enable service
|
||||
- name: carputer - Chrome Kiosk - user enable service
|
||||
command: "systemctl --user -M cosmos@ enable {{ item.service_name }}.service"
|
||||
|
||||
- name: Chrome Kiosk - user start service
|
||||
- name: carputer - Chrome Kiosk - user start service
|
||||
command: "systemctl --user -M cosmos@ start {{ item.service_name }}.service"
|
||||
|
||||
...
|
||||
@ -32,12 +32,12 @@
|
||||
- name: Install photo refresh site
|
||||
include_tasks: photo_refresh.yaml
|
||||
|
||||
- name: Install cosmos autologin user
|
||||
include_tasks: cosmos_autologin.yaml
|
||||
|
||||
- name: Install timelapse service control
|
||||
include_tasks: service_control.yaml
|
||||
|
||||
- name: Install cosmos autologin user
|
||||
include_tasks: cosmos_autologin.yaml
|
||||
|
||||
- name: Set up Chrome Kiosk Services
|
||||
include_tasks: chrome.yaml
|
||||
|
||||
|
||||
@ -1,7 +1,7 @@
|
||||
---
|
||||
|
||||
# Create docker Folder
|
||||
- name: photo_refresh - create photo_refresh folder
|
||||
- name: carputer - photo_refresh - create photo_refresh folder
|
||||
file:
|
||||
path: "{{ photo_refresh_folder }}"
|
||||
state: directory
|
||||
@ -10,7 +10,7 @@
|
||||
group: root
|
||||
|
||||
|
||||
- name: photo_refresh - copy files for docker container
|
||||
- name: carputer - photo_refresh - copy files for docker container
|
||||
copy:
|
||||
src: "image_refresh_php/"
|
||||
dest: "{{ photo_refresh_folder }}/html"
|
||||
@ -18,7 +18,7 @@
|
||||
owner: root
|
||||
group: root
|
||||
|
||||
# - name: photo_refresh - Build image
|
||||
# - name: carputer - photo_refresh - Build image
|
||||
# shell: "docker build -t photo_refresh {{ photo_refresh_folder }}/."
|
||||
|
||||
# docker_image:
|
||||
@ -36,20 +36,20 @@
|
||||
|
||||
- name: start photo_refresh
|
||||
block:
|
||||
- name: set container_name
|
||||
- name: carputer - photo_refresh - set container_name
|
||||
set_fact:
|
||||
container_name: "photo_refresh"
|
||||
container_http_port: "8080"
|
||||
extra_volumes: |
|
||||
- {{ working_folder }}/small_thumbs:/var/www/html/capture
|
||||
|
||||
- name: photo_refresh - template config
|
||||
- name: carputer - photo_refresh - template config
|
||||
template:
|
||||
src: docker-compose-php.yaml.j2
|
||||
dest: "{{ photo_refresh_folder }}/docker-compose.yaml"
|
||||
mode: 0644
|
||||
|
||||
- name: photo_refresh - Start container at 0.0.0.0:8080
|
||||
- name: carputer - photo_refresh - Start container at 0.0.0.0:8080
|
||||
shell: "docker-compose -f {{ photo_refresh_folder }}/docker-compose.yaml up -d"
|
||||
register: local_index_output
|
||||
- debug: |
|
||||
|
||||
@ -11,32 +11,31 @@
|
||||
###############################################
|
||||
|
||||
- name: service control api
|
||||
when: false
|
||||
block:
|
||||
|
||||
# Stop service
|
||||
- name: service_control api - stop service api
|
||||
- name: carputer - service_control api - stop service api
|
||||
systemd:
|
||||
name: service_control.service
|
||||
state: stopped
|
||||
ignore_errors: yes
|
||||
|
||||
# Create API Folder
|
||||
- name: service_control api - create api folder
|
||||
- name: carputer - service_control api - create api folder
|
||||
file:
|
||||
path: "{{ service_control_folder }}"
|
||||
state: directory
|
||||
mode: '0755'
|
||||
|
||||
# Copy API Code
|
||||
- name: service_control api - copy api code
|
||||
- name: carputer - service_control api - copy api code
|
||||
copy:
|
||||
src: service_control_api/app.py
|
||||
dest: "{{ service_control_folder }}/app.py"
|
||||
mode: 0644
|
||||
|
||||
# Create service_control api service
|
||||
- name: service_control api - create requirement file
|
||||
- name: carputer - service_control api - create requirement file
|
||||
copy:
|
||||
dest: "{{ service_control_folder }}/requirements.txt"
|
||||
content: |
|
||||
@ -48,7 +47,7 @@
|
||||
mode: 0644
|
||||
|
||||
# build venv
|
||||
- name: service_control api - build venv
|
||||
- name: carputer - service_control api - build venv
|
||||
pip:
|
||||
virtualenv: "{{ service_control_folder }}/venv"
|
||||
requirements: "{{ service_control_folder }}/requirements.txt"
|
||||
@ -56,7 +55,7 @@
|
||||
state: present
|
||||
|
||||
# Create service_control api service
|
||||
- name: service_control api - create service file
|
||||
- name: carputer - service_control api - create service file
|
||||
# vars:
|
||||
template:
|
||||
src: service_control.service.j2
|
||||
@ -64,12 +63,12 @@
|
||||
mode: 0644
|
||||
|
||||
# daemon reload
|
||||
- name: service_control api - daemon reload
|
||||
- name: carputer - service_control api - daemon reload
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
|
||||
# Enable and start
|
||||
- name: service_control api - enable and start service api
|
||||
- name: carputer - service_control api - enable and start service api
|
||||
systemd:
|
||||
name: service_control.service
|
||||
state: started
|
||||
@ -82,7 +81,6 @@
|
||||
###############################################
|
||||
|
||||
- name: service control web interface
|
||||
when: true
|
||||
block:
|
||||
|
||||
- name: set docker folder variable
|
||||
|
||||
@ -24,7 +24,7 @@
|
||||
group: root
|
||||
mode: 0644
|
||||
|
||||
- name: timelapse - daemon reload
|
||||
- name: timelapse - enable service, leave offline
|
||||
become: true
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
|
||||
@ -1,13 +1,13 @@
|
||||
---
|
||||
|
||||
- name: ustreamer - Create user
|
||||
- name: carputer - ustreamer - Create user
|
||||
user:
|
||||
name: "ustreamer"
|
||||
state: present
|
||||
shell: /bin/bash
|
||||
groups: video
|
||||
|
||||
- name: ustreamer - create service file
|
||||
- name: carputer - ustreamer - create service file
|
||||
template:
|
||||
src: ustreamer.service.j2
|
||||
dest: /etc/systemd/system/ustreamer.service
|
||||
@ -15,7 +15,7 @@
|
||||
group: root
|
||||
mode: 0644
|
||||
|
||||
- name: ustreamer - Enable and start service
|
||||
- name: carputer - ustreamer - Enable and start service
|
||||
become: true
|
||||
systemd:
|
||||
daemon_reload: yes
|
||||
|
||||
Reference in New Issue
Block a user