Commit Graph

42 Commits

Author SHA1 Message Date
Stefan Agner
71d5c77508 Load container images descending by size (#2054)
* Load container images descending by size

Loading container images using docker load seems to require more space
at load time (which gets freed after loading). Loading the largest
container first avoids running out of space.
2022-08-10 21:05:30 +02:00
Joakim Sørensen
4da0ad7da2 Fix ghcr URL (#2014)
Co-authored-by: Franck Nijhof <git@frenck.dev>
2022-07-09 23:24:57 +02:00
Stefan Agner
0139030404 Use GitHub Container Registry for Supervisor (#2005) (#2009)
* Use GitHub Container Registry (#2005)

* Tag with ghcr.io prefix
2022-07-08 16:33:04 +02:00
Stefan Agner
2114dd328f Make container fetching more reliable (#1866)
It seems that the GitHub container registry sometimes returns 503
service unavailable temporarily ("Error fetching tags list: invalid status
code from registry 503"). Use skopeo's retry mechanism to try up to 5
times before failing.
2022-04-25 14:58:22 +02:00
Stefan Agner
19a135edac Avoid race condition when fetching containers during build (#1671)
* Avoid race condition when fetching containers during build

So far only a single builder was active for each architecture. This
toghether with the naming scheme to include architecture/machine name
made sure that an image could only be fetched or used by a single
builder.

However, since most systems are now aarch64, multiple runners are now
active for a single architecture. This makes it necessary to lock
fetching/coping of container images to avoid race conditions.
2021-12-13 15:43:42 +00:00
Stefan Agner
e0e270df1a Wait for Docker daemon (#1586)
Sometimes the first command after starting the Docker daemon container
fails, presumably because the container did not start yet. Wait until
the Docker daemon is ready.
2021-10-11 16:06:36 +02:00
Stefan Agner
762f098c14 Use skopeo and DIND to download container images (#1561)
* Use skopeo to download container images

Separate container download from image build. This will allow to share
the downloaded images between multiple builds.

We won't store the Supervisor container with the version tag, just with
the latest tag. This allows to simplify the procedure a bit. It seems
there is no downside to this approach.

* Use official Docker in Docker images to build data partition

Instead of building our own Debian based image let's use the official
Docker in Docker image. This avoids building an image for the hassio
data partition and speeds up build as well.

This calls mount commands using sudo to mount the data partition as part
of the buildroot build now. This is not much different from before as
mount has been called as root inside the container, essentially equates
to the same "isolation" level.

* Use image digest as part of the file name

The landing page has no version information in the tag. To avoid
potentially source caching issues, use the digest as part of the file
name.
2021-10-04 10:06:26 +02:00
Stefan Agner
1ef4d43d4e Use sparse file for pre-composed data partition (#1454) 2021-07-12 16:06:53 +02:00
Pascal Vizeli
269246c412 Using image name from version file (#1437)
* Using image name from version file

* Use jq for arch/machine substitution

Co-authored-by: Stefan Agner <stefan@agner.ch>
2021-07-08 19:43:03 +02:00
Stefan Agner
c9d091c1b3 Change OS name from HassOS to HAOS in user visible places (#1316) 2021-04-08 16:01:57 +02:00
Stefan Agner
737a6f18c3 Add machine specific landingpage container at build time (#949)
The landingpage container is a minimal webserver with built-in zeroconf
annoucement. Preinstall the machine specific landingpage container to
make sure it will show up right after startup.
2020-11-02 13:35:00 +01:00
Pascal Vizeli
3af31c2265 Add observer plugin (#864) 2020-09-14 10:21:03 +02:00
Pascal Vizeli
7fc9c7d03b Fix build issues with gcc (#685)
* Fix build issues with gcc

* fix qemu
2020-05-26 08:02:53 +02:00
Pascal Vizeli
45c62716cb New way to install/run supervisor + plugins (#620)
* Use new layout for CLI/Supervisor

Signed-off-by: Pascal Vizeli <pvizeli@syshack.ch>

* Fix install script

* Fix config

* Add docs

* Fix shellcheck

* Fix issue

* rename package

* Fix build

* Fix apparmor
2020-04-21 14:37:25 +02:00
Pascal Vizeli
3a5d2de705 Rename OS (#16)
Rename OS
2018-05-14 22:37:39 +02:00
Pascal Vizeli
b0212beec3 Apparmor hassio (#10)
* Delete 0001-Autostart.patch

* Update apparmor.mk

* Update Config.in

* Create hassio-apparmor

* Update hassio-apparmor

* Update data.conf

* Delete etc-apparmor.d-containers.mount

* Delete etc-apparmor.d-containers.mount

* Delete hassio.conf

* Update hassio-apparmor

* Update Config.in

* Update Config.in

* Update hassio.mk

* Update hostapp.sh

* Update Config.in

* Update hassio.mk

* Update hassio.mk

* Create hassio-supervisor

* Update hassio-apparmor

* Update hassio-apparmor

* Update hassio-apparmor

* Update hassio-supervisor

* Update hassio-cli

* Update hassio-apparmor

* Update hassio-apparmor

* Create hassio-apparmor.service

* Update hassio-apparmor.service

* Delete apparmor.service

* Update local stuff

* Profile for CLI

* Update hassio.mk

* Update hassio.mk

* Update hassio-supervisor

* Update hassio-apparmor
2018-05-01 22:39:30 +02:00
Pascal Vizeli
e81898b701 Update hostapp.sh 2018-04-30 12:13:07 +02:00
Pascal Vizeli
69db31ba2e Extend AppArmor / hassio 2018-04-30 00:09:43 +02:00
Pascal Vizeli
e544c14d3d Layering hostname/hosts (#5)
* Layering hostname/hosts

* Fix build

* Use origin files on new overlay
2018-04-27 18:20:06 +02:00
Pascal Vizeli
9b75bc1238 Update hostapp.sh 2018-04-16 09:01:04 +02:00
Pascal Vizeli
39978cb914 Line ending 2018-04-16 08:58:31 +02:00
Pascal Vizeli
2203aad7fd Update hostapp.sh 2018-04-16 08:47:52 +02:00
Pascal Vizeli
afe5f28077 Update Dockerfile 2018-04-15 23:25:29 +02:00
Pascal Vizeli
48f0b91ffc Update Dockerfile 2018-04-15 23:04:37 +02:00
Pascal Vizeli
9a82cd139b Update hassio.mk 2018-04-15 21:07:11 +02:00
Pascal Vizeli
aeef731136 Update Config.in 2018-04-15 20:36:29 +02:00
Pascal Vizeli
402e21b54e Update hassio.mk 2018-04-15 17:41:29 +02:00
Pascal Vizeli
a352724d05 Update hostapp.sh 2018-04-15 17:20:41 +02:00
Pascal Vizeli
0b562f2dbb Update hostapp.sh 2018-04-15 17:19:53 +02:00
Pascal Vizeli
bb45c0a3ab Update Dockerfile 2018-04-15 16:52:38 +02:00
Pascal Vizeli
8ae771a01a Update and rename hostapps.sh to hostapp.sh 2018-04-15 16:52:05 +02:00
Pascal Vizeli
ad67be565c Update hassio.mk 2018-04-15 16:30:39 +02:00
Pascal Vizeli
2a91063542 fix lints 2018-04-15 15:51:10 +02:00
Pascal Vizeli
1ef4c471dc Update hostapps.sh 2018-04-15 15:29:07 +02:00
Pascal Vizeli
3d465a019e Update hostapps.sh 2018-04-15 15:06:19 +02:00
Pascal Vizeli
bfef303dfb Update hostapps.sh 2018-04-15 14:35:13 +02:00
Pascal Vizeli
d69d7ce009 Update hostapps.sh 2018-04-15 11:57:10 +02:00
Pascal Vizeli
36e34607d0 Update hostapps.sh 2018-04-15 11:16:50 +02:00
Pascal Vizeli
9de2d5a10a Rename build.sh to hostapps.sh 2018-04-15 11:15:38 +02:00
Pascal Vizeli
53d5614309 Update Dockerfile 2018-04-15 11:15:03 +02:00
Pascal Vizeli
df5c9e5605 Init Builder scripts 2018-04-15 10:59:55 +02:00
Pascal Vizeli
6a57b15d3c Update and rename buildroot-external/package/Config.in to buildroot-external/package/hassio/Config.in 2018-04-12 15:36:20 +02:00