open-balena
open-balena copied to clipboard
openBalena 2024
take two..
Documentation:
- https://ab77-open-balena.open-balena.pages.dev/
- https://ab77-open-balena.open-balena.pages.dev/getting-started/
balenaHub: https://hub.balena.io/apps/1910724/open-balena
Requires:
- https://github.com/balena-io/open-balena-api/pull/1618
- https://github.com/balena-io/environment-production/pull/2278
- https://github.com/balena-io-modules/balena-compose-parse/pull/63
@dfunckt please feel free to give this a go, I linked the very rough getting started guide on balena in the PR description.
If you want to test a public DNS config (to run device placeholder tests locally):
# where DNS_TLD specifies a DNS wildcard (*) entry (A and optionally AAAA)
# in your domain, pointing to your local device IP
balena push ${uuid}.local \
--env DNS_TLD=balena.acme.com \
--env mdns:MDNS_TLD='' \
--env VERBOSE=true
balena-dev.com
domain that can be used (e.g. *.{{username-slug-etc}}.balena-dev.com
), ping me to create a record.
... or just push a commit to this branch and watch the PR tests (e.g.): https://github.com/balena-io/open-balena/runs/5504967042?check_suite_focus=true#step:15:544
cc @codewithcheese
This is great progress and a necessary step towards an easily deployable and testable openBalena but the fact it completely disregards support for any OS other than balenaOS makes it a no-go as it is. We really need to work on identifying what is balenaOS-specific and bridge the gap.
This is great progress and a necessary step towards an easily deployable and testable openBalena but the fact it completely disregards support for any OS other than balenaOS makes it a no-go as it is. We really need to work on identifying what is balenaOS-specific and bridge the gap.
Well, for one thing:
$ balena push ${uuid}.local
[Info] Starting build on device 192.168.1.75
Bind mounts are not allowed
So that's a bit of a show stopper. Otherwise the second commit in this PR seems to work in compose.
Fix in https://github.com/balena-io-modules/balena-compose-parse/pull/63.
@dfunckt this is now ready for a proper review (i.e deployment into both balena and compose environments).
I've tested against balenaOS/genericx86-64-ext image (on Intel NUC) as well as against dockerd in stock Ubuntu 20.04 VirtualBox VM from macOS client with docker-compose v2.6.0
and balena-cli v3.9.0
.
Quickstart addendum WIPs:
- https://github.com/balena-io/open-balena/blob/ab77/open-balena/docs/on-balena.md
- https://github.com/balena-io/open-balena/blob/ab77/open-balena/docs/on-compose.md
... both flows seem to work, as well as the GH Actions tests on ephemeral AWS instances.
The tests are currently implemented using a non-PRed branch on balenaVirt.
This project would need to be reviewed (incl. nomenclature), moved out of playground, converted into a balenaBlock (e.g. balenablocks/balena-virt) and my branch merged in (with relevant changes). Joseph is the original author of balenaVirt
.
Then we would probably want to publish openBalena as a separate balenaBlock with automated dependency updates (i.e. renovate) and refactor all the existing docs, incorporating the addendums.
cc @jakogut @klutchell @andrewnhem @phil-d-wilson
Sounds good to me!
[fisehara] This has attached https://jel.ly.fish/9f9cbdd3-1d38-4d1d-84d5-77c46f06f31f
... both flows seem to work, as well as the GH Actions tests on ephemeral AWS instances.
needs to be refactored to use Flowzone/custom pipeline (e.g. balena-cloud/Jellyfish), but that should be trivial.