Dockerfile: use relative paths when in the /home/linuxbrew directory

Because the `WORKDIR` instruction specifies the home directory of the
`linuxbrew` user, there is no need to use absolute paths to reference
paths within the home directory, nor is there a need to call `cd` (this
is actually an anti-pattern [0]) to move into a subdirectory before
creating folders.

[0]: https://github.com/hadolint/hadolint/wiki/DL3003
This commit is contained in:
Benjamin Denhartog 2021-08-03 18:23:32 -06:00
parent 0e63fb8200
commit 65a755a160
No known key found for this signature in database
GPG Key ID: C2631F793A698827

View File

@ -37,15 +37,22 @@ COPY --chown=linuxbrew:linuxbrew . /home/linuxbrew/.linuxbrew/Homebrew
ENV PATH=/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:$PATH ENV PATH=/home/linuxbrew/.linuxbrew/bin:/home/linuxbrew/.linuxbrew/sbin:$PATH
WORKDIR /home/linuxbrew WORKDIR /home/linuxbrew
# hadolint ignore=DL3003 RUN mkdir -p \
RUN cd /home/linuxbrew/.linuxbrew \ .linuxbrew/bin \
&& mkdir -p bin etc include lib opt sbin share var/homebrew/linked Cellar \ .linuxbrew/etc \
&& ln -s ../Homebrew/bin/brew /home/linuxbrew/.linuxbrew/bin/ \ .linuxbrew/include \
&& git -C /home/linuxbrew/.linuxbrew/Homebrew remote set-url origin https://github.com/Homebrew/brew \ .linuxbrew/lib \
&& git -C /home/linuxbrew/.linuxbrew/Homebrew fetch origin \ .linuxbrew/opt \
.linuxbrew/sbin \
.linuxbrew/share \
.linuxbrew/var/homebrew/linked \
.linuxbrew/Cellar \
&& ln -s ../Homebrew/bin/brew .linuxbrew/bin/brew \
&& git -C .linuxbrew/Homebrew remote set-url origin https://github.com/Homebrew/brew \
&& git -C .linuxbrew/Homebrew fetch origin \
&& HOMEBREW_NO_ANALYTICS=1 HOMEBREW_NO_AUTO_UPDATE=1 brew tap homebrew/core \ && HOMEBREW_NO_ANALYTICS=1 HOMEBREW_NO_AUTO_UPDATE=1 brew tap homebrew/core \
&& brew install-bundler-gems \ && brew install-bundler-gems \
&& brew cleanup \ && brew cleanup \
&& { git -C /home/linuxbrew/.linuxbrew/Homebrew config --unset gc.auto; true; } \ && { git -C .linuxbrew/Homebrew config --unset gc.auto; true; } \
&& { git -C /home/linuxbrew/.linuxbrew/Homebrew config --unset homebrew.devcmdrun; true; } \ && { git -C .linuxbrew/Homebrew config --unset homebrew.devcmdrun; true; } \
&& rm -rf ~/.cache && rm -rf .cache