summary |
shortlog | log |
commit |
commitdiff |
tree
first ⋅ prev ⋅ next
Kristof Provost [Tue, 5 Dec 2023 20:29:54 +0000 (21:29 +0100)]
build: update to FreeBSD 14.0
Kristof Provost [Tue, 5 Dec 2023 20:29:32 +0000 (21:29 +0100)]
packages: add helix
We may as well include our new favourite editor of the day.
Kristof Provost [Wed, 12 Jul 2023 11:08:31 +0000 (13:08 +0200)]
autossh: run autossh with a reverse tunnel
This will be the primary method of connecting to these devices, and will
be the method we use to push ansible configuration.
(We can't just rely on ansible-poll because we may want to include
secrets from ansible-vault)
Kristof Provost [Wed, 12 Jul 2023 11:06:24 +0000 (13:06 +0200)]
image: improve ansibleprep run
Make it more likely we'll call ansible-poll at first boot.
If there's no internet connectivity on first boot we woudln't ansible-
poll until the crontab called it.
Instead we now run ansibleprep every time and exit if our hostname
isn't poudriere-image (i.e. if we've actually run the first ansible-
poll call).
Kristof Provost [Mon, 10 Jul 2023 21:40:28 +0000 (23:40 +0200)]
ansible: renumber & remove poudriere-image from domoticamachines
Tidy up port numbers.
Also remove poudriere-image from the domoticamachines group. The intent is
to prevent ansible from running configuration we don't need before the
hostname is set.
Kristof Provost [Mon, 10 Jul 2023 21:29:31 +0000 (23:29 +0200)]
image: bump image size
Increate the initial size of the image, so we can install packages when
running in qemu.
On alix boards we grow to whatever the physical size is, so it won't
affect things there.
Kristof Provost [Mon, 10 Jul 2023 20:24:16 +0000 (22:24 +0200)]
ansible: Configure control ports
Each instance will have its own port to loop back on kosmos.codepro.be.
Assign a unique port to each, and save it in sysrc.
We'll have to script something around autossh, but this is the main new
ansible feature to test.
Kristof Provost [Sun, 14 May 2023 10:11:44 +0000 (12:11 +0200)]
packages: add autossh
Install autossh so we can set up a reliable reverse tunnel for
management.
Kristof Provost [Sat, 13 May 2023 09:22:19 +0000 (11:22 +0200)]
Rename playbook to playbook-pull
We'll have to push a lot of our configuration, because it's the only way
we'll be able to use ansible-vault (and thus keep secrets secret).
We still want the pull functionality, so we can use that to bootstrap a
way for ansible to connect to the devices. Likely autossh to a known
server with a reverse tunnel, but that'll come in future commits.
Kristof Provost [Fri, 5 May 2023 12:04:01 +0000 (14:04 +0200)]
announce_presence: look at the correct interface for the host_id
Kristof Provost [Fri, 5 May 2023 12:03:43 +0000 (14:03 +0200)]
domotica: grow the filesystem on first boot
Kristof Provost [Fri, 5 May 2023 09:54:33 +0000 (11:54 +0200)]
build.sh: multithread compression
Use xz's multithreaded compression for a significant speedup in build
time.
Kristof Provost [Fri, 5 May 2023 09:37:50 +0000 (11:37 +0200)]
ansible: add real names to the inventory
Kristof Provost [Fri, 5 May 2023 09:30:36 +0000 (11:30 +0200)]
build.sh: Include the domotoca image in the installer so it can be installed
Kristof Provost [Fri, 5 May 2023 09:29:41 +0000 (11:29 +0200)]
installer: operation installation script
Check if the device is the expected PC Engines CPU model, to reduce the
odds that we'll clobber something else.
If everything matches expectations copy the image to the device.
Kristof Provost [Fri, 5 May 2023 09:29:14 +0000 (11:29 +0200)]
ansible: Add the mac for the first machine
Kristof Provost [Fri, 5 May 2023 07:55:44 +0000 (09:55 +0200)]
build.sh: exit on error
Kristof Provost [Fri, 5 May 2023 07:49:52 +0000 (09:49 +0200)]
image: run ansible-poll at first startup
Ensure we don't have to wait an hour for cron to trigger the first pull.
Immediately start configuring the system at first boot.
We run twice, to make sure we've set the hostname and then applied the
per-host configuration.
Kristof Provost [Fri, 5 May 2023 07:49:12 +0000 (09:49 +0200)]
ansible: remove hello world tasks
Those don't do anything, and we already do some vaguely useful things in
the playbook, so there's no need for them any more.
Kristof Provost [Fri, 5 May 2023 07:38:49 +0000 (09:38 +0200)]
ansible: add poudriere-image to the inventory list
This should cause us to exectute on the intiall install image, setting
the hostname.
Also configure the playbook to only run the change of hostname on the
initiall installation image, so we can skip running that script on
subsequent ansible runs.
Kristof Provost [Thu, 4 May 2023 21:39:57 +0000 (23:39 +0200)]
image: ansible-pull new configuration once an hour
Kristof Provost [Thu, 4 May 2023 21:32:53 +0000 (23:32 +0200)]
ansible: add the qemu test host to the inventory
Kristof Provost [Thu, 4 May 2023 20:55:49 +0000 (22:55 +0200)]
ansible: set up hostnames based on mac address
Kristof Provost [Wed, 3 May 2023 20:36:39 +0000 (22:36 +0200)]
image: rename usb to installer
We create two images:
- installer
Intended to be flashed to a USB stick, to automagically image a
domotica device
- domotica
The image to run on the alix boards
Kristof Provost [Wed, 3 May 2023 20:27:59 +0000 (22:27 +0200)]
ansible: enable & start nginx
Kristof Provost [Wed, 3 May 2023 20:19:21 +0000 (22:19 +0200)]
ansible: first playbook
Install nginx, because we'll need something to serve web foo.
Kristof Provost [Wed, 3 May 2023 20:04:47 +0000 (22:04 +0200)]
ansible: demo inventory
Kristof Provost [Wed, 3 May 2023 20:02:24 +0000 (22:02 +0200)]
readme: document how to get qemu to do networking
Kristof Provost [Wed, 3 May 2023 20:01:15 +0000 (22:01 +0200)]
Initial overlay for domotica machines
* Console over serial port
* set up 'kp' user & sudo
* crontab presence announcement to sigsegv.be with mac address
* ssh-able as kp
Kristof Provost [Wed, 3 May 2023 17:28:49 +0000 (19:28 +0200)]
packages: enough to install ansible
So we can play with ansible-pull
Kristof Provost [Wed, 3 May 2023 15:24:40 +0000 (17:24 +0200)]
Use the serial port for output
Also update the qemu hint to get the serial output on the console.
Kristof Provost [Tue, 2 May 2023 21:41:56 +0000 (23:41 +0200)]
build: reduce USB image size
There's no need for a lot of extra space. Enough to contain an extra
image, and that'll do it.
Kristof Provost [Tue, 2 May 2023 21:41:32 +0000 (23:41 +0200)]
Initial USB overlay
Kristof Provost [Tue, 2 May 2023 21:33:55 +0000 (23:33 +0200)]
packages: install bsddialog
That's part of base in 14, but we're not going to arse around with
current for this. Just install the port.
Kristof Provost [Tue, 2 May 2023 21:20:47 +0000 (23:20 +0200)]
Initial commit