Initial commit - it works!
This commit is contained in:
commit
29269cc031
2
.gitignore
vendored
Normal file
2
.gitignore
vendored
Normal file
|
@ -0,0 +1,2 @@
|
||||||
|
/build/
|
||||||
|
parameters.env
|
29
build.sh
Executable file
29
build.sh
Executable file
|
@ -0,0 +1,29 @@
|
||||||
|
#!/bin/bash
|
||||||
|
|
||||||
|
source parameters.env
|
||||||
|
|
||||||
|
rm -rf build
|
||||||
|
mkdir build
|
||||||
|
|
||||||
|
eval "cat <<~
|
||||||
|
$(cat src/cmdline.txt)
|
||||||
|
~" > build/cmdline.txt
|
||||||
|
|
||||||
|
mkdir build/cloud-init
|
||||||
|
|
||||||
|
eval "cat <<~
|
||||||
|
$(cat src/user-data)
|
||||||
|
~" > build/cloud-init/user-data
|
||||||
|
|
||||||
|
cp src/meta-data build/cloud-init/
|
||||||
|
cp src/initial-setup.sh build/cloud-init/
|
||||||
|
cp src/install-torch.sh build/cloud-init/
|
||||||
|
cp src/torch-agent_0.0.4-1_all.deb build/cloud-init/
|
||||||
|
|
||||||
|
mkdir build/cloud-init/torch-config
|
||||||
|
cp -r $TORCH_CONFIG_DIR/* build/cloud-init/torch-config/
|
||||||
|
|
||||||
|
tar -C build -czvf build/rpi-cloud-init.tgz cmdline.txt cloud-init
|
||||||
|
|
||||||
|
rm -rf build/cloud-init
|
||||||
|
rm build/cmdline.txt
|
1
src/cmdline.txt
Normal file
1
src/cmdline.txt
Normal file
|
@ -0,0 +1 @@
|
||||||
|
net.ifnames=0 dwc_otg.lpm_enable=0 console=serial0,115200 console=tty1 root=LABEL=writable rootfstype=ext4 elevator=deadline rootwait fixrtc ipv6.disable=$DISABLE_IPV6 ds=nocloud;s=/boot/firmware/cloud-init/
|
30
src/initial-setup.sh
Executable file
30
src/initial-setup.sh
Executable file
|
@ -0,0 +1,30 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
export DEBIAN_FRONTEND=noninteractive
|
||||||
|
|
||||||
|
apt-get -y purge\
|
||||||
|
cloud-init cloud-guest-utils\
|
||||||
|
cloud-initramfs-copymods cloud-initramfs-dyn-netconf\
|
||||||
|
open-iscsi
|
||||||
|
rm -rf /etc/cloud/ /var/lib/cloud/
|
||||||
|
|
||||||
|
apt-get update
|
||||||
|
|
||||||
|
apt-get -y\
|
||||||
|
-o Dpkg::Options::="--force-confdef"\
|
||||||
|
-o Dpkg::Options::="--force-confold"\
|
||||||
|
upgrade
|
||||||
|
|
||||||
|
apt-get -y install\
|
||||||
|
vim\
|
||||||
|
gparted\
|
||||||
|
libc6:armhf libstdc++6:armhf\
|
||||||
|
lxterminal\
|
||||||
|
usbmount
|
||||||
|
|
||||||
|
# Workaround for usbmount bug on Bionic
|
||||||
|
mkdir -p /etc/systemd/system/systemd-udevd.service.d
|
||||||
|
echo "[Service]\nMountFlags=shared\n" >\
|
||||||
|
/etc/systemd/system/systemd-udevd.service.d/override.conf
|
||||||
|
systemctl daemon-reload
|
||||||
|
service systemd-udevd --full-restart
|
7
src/install-torch.sh
Executable file
7
src/install-torch.sh
Executable file
|
@ -0,0 +1,7 @@
|
||||||
|
#!/bin/sh -e
|
||||||
|
|
||||||
|
apt-get -y install /boot/firmware/cloud-init/torch-agent_0.0.4-1_all.deb
|
||||||
|
cp -r /boot/firmware/cloud-init/torch-config/* /etc/torch/
|
||||||
|
chown torch -R /etc/torch
|
||||||
|
systemctl daemon-reload
|
||||||
|
systemctl enable torch-agent
|
1
src/meta-data
Normal file
1
src/meta-data
Normal file
|
@ -0,0 +1 @@
|
||||||
|
dsmode: local
|
BIN
src/torch-agent_0.0.4-1_all.deb
Normal file
BIN
src/torch-agent_0.0.4-1_all.deb
Normal file
Binary file not shown.
33
src/user-data
Normal file
33
src/user-data
Normal file
|
@ -0,0 +1,33 @@
|
||||||
|
#cloud-config
|
||||||
|
|
||||||
|
# The networking setup is a bit of a hack, because the cloud-init network
|
||||||
|
# configuration doesn't support WiFi, see
|
||||||
|
# https://cloudinit.readthedocs.io/en/latest/topics/network-config-format-v2.html.
|
||||||
|
|
||||||
|
users:
|
||||||
|
- name: $USERNAME
|
||||||
|
gecos: $USERFULLNAME
|
||||||
|
groups: [sudo, users]
|
||||||
|
sudo: ALL=(ALL) NOPASSWD:ALL
|
||||||
|
lock_passwd: false
|
||||||
|
shell: /bin/bash
|
||||||
|
ssh_authorized_keys:
|
||||||
|
- $SSH_PUBKEY
|
||||||
|
|
||||||
|
runcmd:
|
||||||
|
# Disable optional PAM features for faster SSH login
|
||||||
|
# - 'mv /etc/pam.d/sshd /etc/pam.d/sshd.bak'
|
||||||
|
# - 'sed "s/^session[ \t]\+optional/#\0/" /etc/pam.d/sshd.bak > /etc/pam.d/sshd'
|
||||||
|
|
||||||
|
# Back up the SSH default config and activate the new config
|
||||||
|
# - 'mv /etc/ssh/sshd_config /etc/ssh/sshd_config.bak'
|
||||||
|
# - 'mv /etc/ssh/sshd_config.new /etc/ssh/sshd_config'
|
||||||
|
# - 'service ssh reload'
|
||||||
|
|
||||||
|
# Multi-arch support on aarch64
|
||||||
|
- 'dpkg --add-architecture armhf'
|
||||||
|
|
||||||
|
# Run optional script for additoinal package setup
|
||||||
|
- '/boot/firmware/cloud-init/initial-setup.sh'
|
||||||
|
- '/boot/firmware/cloud-init/install-torch.sh'
|
||||||
|
- 'reboot now'
|
Loading…
Reference in New Issue
Block a user