Ansible のレシピを作ってみました.
背景
OctoPrint のインストール手順全体は下記にありますが比較的長いので,Ansible を使って自動化してみました.
対象とする Ubuntu のバージョンは,Ubuntu 20.04 です.
Setting up OctoPrint on a Raspberry Pi running Raspberry Pi OS (Debian)
This is a wiki node that every user of this forum at trust level 1 or higher can edit. Find problems, typos, or incorrec...
リポジトリ
レシピ全体は下記に置いてあります.
GitHub - kimata/raspberry_config: Raspberry Pi を Ansible でセットアップするスクリプト
Raspberry Pi を Ansible でセットアップするスクリプト. Contribute to kimata/raspberry_config development by creating an account on GitHu...
上記をチェックアウト後,下記のコマンドを実行することで,OctoPrint および MJPG-Streamer のインストールが行われます.
1 |
ansible-playbook -k -i ホスト名, octoprint.yml |
レシピ
レシピの主要部分は下記となります.libjpeg-turbo8-dev
の部分は,Ubuntu 20.04 以外の場合は修正が必要かもしれません.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 |
- name: Disable overlayroot shell: cmd: | overlayroot-chroot /usr/bin/sed -i -e 's/^overlayroot=.*$/overlayroot=""/' /etc/overlayroot.conf when: disable is defined and disable == "1" - name: Enable overlayroot lineinfile: dest: '/etc/overlayroot.conf' regexp: '^overlayroot=.*$' line: 'overlayroot="tmpfs"' when: enable is defined and enable == "1" - name: List old log files (1) find: paths: /var/log patterns: "*.gz" register: old_log_1 when: enable is defined and enable == "1" - name: List old log files (2) find: paths: /var/log patterns: "*.0" register: old_log_2 when: enable is defined and enable == "1" - name: Remove old log files file: path: "{{ item['path'] }}" state: absent with_items: - "{{ old_log_1['files'] }}" - "{{ old_log_2['files'] }}" when: enable is defined and enable == "1" - name: Remove systemd log shell: cmd: journalctl --vacuum-size=0 when: enable is defined and enable == "1" - name: Reboot reboot: reboot_timeout: 180 |
コメント