-
Couldn't load subscription status.
- Fork 185
DRAFT: Enable Air-gapped open-balena deployment #241
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
c1a1da8 to
ad88753
Compare
| @$(MAKE) showenv | ||
| @$(MAKE) showpass | ||
|
|
||
| .PHONY: agup |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we parameterise up and down instead, along the lines of https://stackoverflow.com/a/2214793/1559300:
(e.g. make up composition=docker-compose-ag.yml and the default if not provided being docker-compose.yml)
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Initial quick pass through the PR and some comments/actions..
| @@ -0,0 +1,462 @@ | |||
| --- | |||
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I am hesitant to keep a separate composition - can the original and AG compositions be a single file, with any changes being passed via environment?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I'm not sure how to do that. Have you got any pointers?
What I can certainly see is turning the docker-compose-airgapped.yml into an "overlay" that just modifies the original docker-compose.yml
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FYI I'm working on using the docker compose profiles to keep it a single file.
3df502e to
7d809cd
Compare
…MEOUT and DEVICE_TYPES_CACHE_TIMEOUT, mount contracts into api for air-gapped
81c7d96 to
9003ff2
Compare
DRAFT This MR enables air-gapped installation of open-balena
This very much builds on https://forums.balena.io/t/supported-devices-in-open-balena/357665
We have this working in production. I would appreciate feedback on how to best integrate this into open-balena. I expect there a changes to be made. My bandwidth is limited, so don't expect this to go fast.
Overview of changes:
docker-compose-airgapped.ymlapk addor equivalent during runtimedocker compose buildapi-contractscontainer which contains the contracts github repo and bind mounts into theapicontainer as aCONTRACTS_PRIVATE_REPO_...s3-device-typeswhich contains a subset of the s3 bucket and pushes this into the s3 container (this is still on our repo solely for cicd ease of use, will move in here)env.tmplfile used by theapicontainer to respect a few more env set in docker-compose (e.g.DEVICE_TYPES_CACHE_LOCAL_TIMEOUTto fix a caching problem)