Skip to content
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

[bug]: Fault in the docker reproducible release-build, compile process on macOS #9093

Open
1 task
dstadulis opened this issue Sep 12, 2024 · 0 comments · May be fixed by #9096
Open
1 task

[bug]: Fault in the docker reproducible release-build, compile process on macOS #9093

dstadulis opened this issue Sep 12, 2024 · 0 comments · May be fixed by #9096
Labels
bug Unintended code behaviour needs triage

Comments

@dstadulis
Copy link
Collaborator

dstadulis commented Sep 12, 2024

Background

lnd/docs/release.md

Lines 13 to 27 in fd154dd

### macOS
The first requirement is to have [`docker`](https://www.docker.com/)
installed locally and running. The second requirement is to have `make`
installed. Everything else (including `golang`) is included in the release
helper image.
To build a release, run the following commands:
```shell
$ git clone https://github.com/lightningnetwork/lnd.git
$ cd lnd
$ git checkout <TAG> # <TAG> is the name of the next release/tag
$ make docker-release tag=<TAG>
```

When running the docker reproducible release-build, compile process on macOS and the default file-sharing implementation setting, VirtioFS, a fault occurs:

fatal: detected dubious ownership in repository at '/tmp/build/lnd'
2 warnings found (use docker --debug to expand):
 - LegacyKeyValueFormat: "ENV key=value" should be used instead of legacy "ENV key value" format (line 12)
 - MaintainerDeprecated: Maintainer instruction is deprecated in favor of using label (line 8)
make: *** [docker-release] Error 2

Workaround

A work around is to set the file-sharing implementation setting to "gRPC Fuse" before running make docker-release tag=<TAG>
https://docs.docker.com/desktop/settings/

Command-line workaround

jq '.useGrpcfuse = true' "~/Library/Group Containers/group.com.docker/settings.json" > temp.json && mv temp.json "~/Library/Group Containers/group.com.docker/settings.json"

GUI workaround

Docker Desktop -> Settings -> "Choose file sharing implementation for your containers"
Click "gRPC FUSE" radio button

Fix

  • Update docker-release to support Docker's default file-sharing implementation setting, VirtioFS

Expected behaviour

lnd's docker-release process supports docker's default file-sharing implementation setting, VirtioFS

Actual behaviour

Opaque error and build process faults / fails

@dstadulis dstadulis added bug Unintended code behaviour needs triage labels Sep 12, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Unintended code behaviour needs triage
Projects
None yet
Development

Successfully merging a pull request may close this issue.

1 participant