5 - name: Create go directories
7 path: .cache/openwrt/tuer/{{ item }}
9 with_items: [ gopath, gocache ]
11 - name: Clone necessary git repositories
13 repo: https://github.com/realraum/{{ item }}.git
14 dest: .cache/openwrt/tuer/{{ item }}
16 with_items: [ door_and_sensors ]
18 - name: Download dependencies
19 command: go get -d ./...
21 chdir: .cache/openwrt/tuer/door_and_sensors/{{ item }}
23 GOCACHE: "{{ playbook_dir }}/.cache/openwrt/tuer/gocache"
24 GOPATH: "{{ playbook_dir }}/.cache/openwrt/tuer/gopath"
25 with_items: [ door_client, door_daemon, update-keys ]
27 - name: Cross-compile Go binaries
28 command: go build -ldflags "-s"
30 chdir: .cache/openwrt/tuer/door_and_sensors/{{ item }}
32 GOCACHE: "{{ playbook_dir }}/.cache/openwrt/tuer/gocache"
33 GOPATH: "{{ playbook_dir }}/.cache/openwrt/tuer/gopath"
38 with_items: [ door_client, door_daemon, update-keys ]
42 delegate_to: localhost
46 openwrt_output_image_suffixes:
47 - combined-ext4.img.gz
48 - combined-squashfs.img
49 openwrt_packages_remove:
64 openwrt_packages_extra:
72 /usr/local/bin/door_client:
74 file: "{{ playbook_dir }}/.cache/openwrt/tuer/door_and_sensors/door_client/door_client"
75 /usr/local/bin/door_daemon:
77 file: "{{ playbook_dir }}/.cache/openwrt/tuer/door_and_sensors/door_daemon/door_daemon"
78 /usr/local/bin/update-keys:
80 file: "{{ playbook_dir }}/.cache/openwrt/tuer/door_and_sensors/update-keys/update-keys"
82 /usr/local/bin/authorized_keys.sh:
84 file: "{{ playbook_dir }}/files/tuer/authorized_keys.sh"
86 /usr/local/bin/update-keys-from-stdin.sh:
88 file: "{{ playbook_dir }}/files/tuer/update-keys-from-stdin.sh"
94 AllowUsers root tuerctl tuergit
95 AuthenticationMethods publickey
96 AuthorizedKeysFile /etc/ssh/authorized_keys.d/%u
98 AllowAgentForwarding no
101 UsePrivilegeSeparation sandbox
104 AuthorizedKeysFile /dev/null
105 AuthorizedKeysCommand /usr/local/bin/authorized_keys.sh
106 AuthorizedKeysCommandUser tuergit
109 /etc/ssh/authorized_keys.d/root:
111 {% for key in noc_ssh_keys %}
115 /etc/ssh/authorized_keys.d/tuergit:
117 {% for key in noc_ssh_keys %}
125 hostname: '{{ inventory_hostname }}'
126 timezone: 'CET-1CEST,M3.5.0,M10.5.0/3'
131 - name: timeserver 'ntp'
136 - '0.lede.pool.ntp.org'
137 - '1.lede.pool.ntp.org'
138 - '2.lede.pool.ntp.org'
139 - '3.lede.pool.ntp.org'
142 - name: globals 'globals'
144 ula_prefix: fdc9:e01f:83db::/48
146 - name: interface 'loopback'
153 - name: interface 'lan'
159 netmask: 255.255.255.0
160 gateway: 192.168.33.1
162 dns_search: realraum.at
169 opts: nosuid,nodev,noexec,noatime
175 shell: /usr/bin/git-shell
177 shell: /bin/false # TODO fixme