-
Notifications
You must be signed in to change notification settings - Fork 146
umbrel: Set to v1.0.5. #3456
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
umbrel: Set to v1.0.5. #3456
Conversation
f10974c to
00f43f5
Compare
|
Also removed the Dockerfile.release file because it seems redundant. Do we need it? |
peterzen
left a comment
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.
LGTM. Dockerfile.release is not used elsewhere at present AFAIK; safe to remove.
JustinBeBoy
left a comment
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.
LGTM
client/Dockerfile
Outdated
| RUN apk add git && \ | ||
| git clone --depth 1 --branch $VERSION https://github.com/decred/dcrdex.git && \ |
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 think we should validate the version before cloning it.
git ls-remote --refs --tags https://github.com/decred/dcrdex.git | grep -q "refs/tags/$VERSION" || \
{ echo "ERROR: Version $VERSION does not exist"; exit 1; } && \
git clone --depth 1 --branch $VERSION https://github.com/decred/dcrdex.git
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.
Unnecessary complexity IMO, docker build will bail out if git clone fails
|
On a second thought, I'm not sure that changing the Dockerfile this way is an entirely good idea. The |
Do you mean using docker for building master? |
More like when you're debugging something related to the dockerized version or related to the build itself, and you want to build an image locally off of the current clone. Works OK in production in GH workflows, though the additional There is also another element I just recalled - Umbrel images are expected to be able to build in an offline environment in order to be eligible to be added to the official app store (as a safeguard against supply chain attacks) - so no network requests within the Dockerfile. This does not affect Bisonwallet at present in the context of the community app store but essentially disqualifies the app to pass the eligibility test, should we ever want to apply for an official app store entry. Why did you feel this change was required? |
|
I did not look at dcrd, this just seems to be what's best.
I did not know this part. I'm a little confused though aren't all the docker parts downloaded? We can include a sha comparison but I guess that wouldn't matter? |
|
Where are the official rules, I see this https://github.com/getumbrel/umbrel-apps?tab=readme-ov-file#a-good-dockerfile
We can do that. |
Right - nevermind I mixed up Umbrel with the Snap package build, the latter needs the offline build. Apologies for the confusion, it's been a while. |
The
To publish the release for Umbrel this needs to be updated: dcrdex/dcrdex-umbrel/docker-compose.yml Line 12 in 552e26d
If this update goes in as a separate PR after the release then it's less awkward. Does this make sense?
It's a 2 stage build; stage 1 copies in the current clone, stage 2 starts with a blank image and copies over only the binary from stage 1. So nothing can and up in the final image unless explicitly populated from
There are situations like when a docker image is built from several source repos etc, that's when that pattern comes in handy. |
00f43f5 to
bff98f3
Compare
|
Just updating the docker image we point to. Maybe the current flow is best for umbrel. Not changing for now. |
We had to do this at one point 85a5783 So sometimes we need to update the Dockerfile right? We were able to get that into the patch but there may be times when we cannot without updating the patch. Also all the versions before we got it in should be broken now. |
Right, for dependencies etc but a new release on its own doesn't need a
You mean the previous Umbrel releases before |
Was there not a release before that change? Anyway merging. |
Update the docker file to get a certain version of dcrdex from github rather than using the local repo so that we can update the docker file itself without updating the tag.