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