diff --git a/.gitignore b/.gitignore index ff74078..bc5323a 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,5 @@ hosts calendar-install-*.run -package makeself-2.4.2* playbook.retry +rpi-calendar diff --git a/Makefile b/Makefile index 2bfc67d..3a3296b 100644 --- a/Makefile +++ b/Makefile @@ -7,16 +7,16 @@ makeself-$(MAKESELF_VER)/makeself.sh: rm makeself-$(MAKESELF_VER).run calendar-install-$(CALENDAR_VER).run: makeself-$(MAKESELF_VER)/makeself.sh install.sh hosts-localhost playbook.yml $(wildcard roles/**/*) - mkdir -p package - cp -r hosts-localhost install.sh roles playbook.yml package/. + mkdir -p rpi-calendar + cp -r hosts-localhost install.sh roles playbook.yml rpi-calendar/. # makeself.sh [args] archive_dir file_name label startup_script [script_args] - makeself-$(MAKESELF_VER)/makeself.sh package calendar-install-$(CALENDAR_VER).run "Installing setup scripts" install.sh + makeself-$(MAKESELF_VER)/makeself.sh --notemp rpi-calendar calendar-install-$(CALENDAR_VER).run "Installing setup scripts" ./install.sh .PHONY: clean package release clean: - rm -rf package calendar-install-*.run + rm -rf rpi-calendar calendar-install-*.run package: calendar-install-$(CALENDAR_VER).run diff --git a/install.sh b/install.sh index 71fe0aa..cad7df6 100755 --- a/install.sh +++ b/install.sh @@ -8,7 +8,7 @@ function makeFileWithMode { # check ssh is turned on sudo systemctl status ssh | grep -q "Active: active" || sudo systemctl start ssh -sudo systemctl status ssh | grep Loaded: | grep -q enabled || sudo systemctl enable ssh +sudo systemctl status ssh | grep Loaded: | grep -q "ssh.service; enabled" || sudo systemctl enable ssh # check ssh keygen ran for pi [[ -f /home/pi/.ssh/id_rsa ]] || (echo -e "\n\n\n" | ssh-keygen 2>&1 >/dev/null) @@ -21,9 +21,9 @@ grep -q "$(cat /home/pi/.ssh/id_rsa.pub)" $ak || (cat /home/pi/.ssh/id_rsa.pub > # check pi has the localhost known_host kh="/home/pi/.ssh/known_hosts" makeFileWithMode $kh 600 -grep -q localhost $kh | ssh-keyscan localhost >>$kh +grep -q localhost $kh || ssh-keyscan localhost >>$kh # install Ansible if necessary -sudo dpkg -s ansible 2>&1 >/dev/null || sudo apt-get install ansible +sudo dpkg -s ansible 2>&1 >/dev/null || sudo apt-get install -y ansible ansible-playbook playbook.yml -i hosts-localhost -u pi diff --git a/roles/calendar/tasks/main.yml b/roles/calendar/tasks/main.yml index 41872fc..f2bb0e5 100644 --- a/roles/calendar/tasks/main.yml +++ b/roles/calendar/tasks/main.yml @@ -30,7 +30,7 @@ - name: Load the uinput module so we can fake keystrokes lineinfile: - path: /etc/modules + dest: /etc/modules create: true line: "uinput" @@ -91,13 +91,13 @@ - name: Remove default screensaver config lineinfile: - path: /etc/xdg/lxsession/LXDE-pi/autostart + dest: /etc/xdg/lxsession/LXDE-pi/autostart state: absent line: "@xscreensaver -no-splash" - name: Turn off screensaver in LXDE autostart blockinfile: - path: /etc/xdg/lxsession/LXDE-pi/autostart + dest: /etc/xdg/lxsession/LXDE-pi/autostart create: true owner: pi block: | diff --git a/roles/common/tasks/main.yml b/roles/common/tasks/main.yml index 3569896..9c5639b 100644 --- a/roles/common/tasks/main.yml +++ b/roles/common/tasks/main.yml @@ -1,14 +1,17 @@ --- +- name: Install Aptitude for package management + package: + name: aptitude + state: latest + - name: Update apt repo and cache on all Debian/Ubuntu boxes apt: update_cache=yes - force_apt_get=yes cache_valid_time=3600 - name: Upgrade all packages on servers apt: upgrade=dist - force_apt_get=yes - name: Check if a reboot is needed on all servers register: reboot_required_file