diff --git a/defaults/main.yaml b/defaults/main.yaml index b7bdbcc..0e7bc0b 100644 --- a/defaults/main.yaml +++ b/defaults/main.yaml @@ -15,7 +15,10 @@ main_packages: - python-is-python3 - apache2 - php - + - docker + - docker-compose + - docker.io + autologin_packages: - kde-plasma-desktop - clinfo diff --git a/tasks/chrome.yaml b/tasks/chrome.yaml index 4fbe0fb..6a7598a 100644 --- a/tasks/chrome.yaml +++ b/tasks/chrome.yaml @@ -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 diff --git a/tasks/cosmos_autologin.yaml b/tasks/cosmos_autologin.yaml index ddbad0c..3012394 100644 --- a/tasks/cosmos_autologin.yaml +++ b/tasks/cosmos_autologin.yaml @@ -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 diff --git a/tasks/gps_service.yaml b/tasks/gps_service.yaml index 7164c5a..3cdf972 100644 --- a/tasks/gps_service.yaml +++ b/tasks/gps_service.yaml @@ -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 diff --git a/tasks/kiosk.yaml b/tasks/kiosk.yaml index af50e82..9af4ec4 100644 --- a/tasks/kiosk.yaml +++ b/tasks/kiosk.yaml @@ -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" ... \ No newline at end of file diff --git a/tasks/main.yaml b/tasks/main.yaml index 283214e..2224f53 100644 --- a/tasks/main.yaml +++ b/tasks/main.yaml @@ -32,12 +32,12 @@ - name: Install photo refresh site include_tasks: photo_refresh.yaml +- name: Install timelapse service control + include_tasks: service_control.yaml + - name: Install cosmos autologin user include_tasks: cosmos_autologin.yaml -- name: Install timelapse service control - include_tasks: service_control.yaml - - name: Set up Chrome Kiosk Services include_tasks: chrome.yaml diff --git a/tasks/photo_refresh.yaml b/tasks/photo_refresh.yaml index 68fb7f5..b8d2c18 100644 --- a/tasks/photo_refresh.yaml +++ b/tasks/photo_refresh.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: | diff --git a/tasks/service_control.yaml b/tasks/service_control.yaml index ceccdca..8a7d92c 100644 --- a/tasks/service_control.yaml +++ b/tasks/service_control.yaml @@ -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 @@ -81,8 +80,7 @@ # This part sets up serice control website ############################################### -- name: service control web interface - when: true +- name: service control web interface block: - name: set docker folder variable diff --git a/tasks/timelapse.yaml b/tasks/timelapse.yaml index 45a025a..f754b2a 100644 --- a/tasks/timelapse.yaml +++ b/tasks/timelapse.yaml @@ -24,7 +24,7 @@ group: root mode: 0644 -- name: timelapse - daemon reload +- name: timelapse - enable service, leave offline become: true systemd: daemon_reload: yes diff --git a/tasks/ustreamer.yaml b/tasks/ustreamer.yaml index 5ca427b..ed9caed 100644 --- a/tasks/ustreamer.yaml +++ b/tasks/ustreamer.yaml @@ -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