pidgin/nest

bfceef396691
Use hugo refs for resolving links

This will allow us to find broken links easier since if we remove or change
the location of a particular page that's linked in another, then Hugo will
throw a warning/error when this happens if we are using the ref functionality.

The only link that I'm not dealing with here is the one for tips for bug
reports since that page hasn't yet been ported to the new nest site.

Testing Done:
Ran `dev-server.sh` and verified the links that got changed in this PR still worked as intended.

Reviewed at https://reviews.imfreedom.org/r/795/
#####################################################################
# setup up our node environment
#####################################################################
FROM node:14-buster-slim as node-update-date
WORKDIR /nest/
COPY package-lock.json package.json ./
RUN apt-get update && \
apt-get install -y mercurial && \
apt-get clean && \
npm ci --production && \
npm cache clean --force
COPY .hg /nest/.hg
COPY hugo /nest/hugo
COPY tools /nest/tools
RUN node tools/update-lastmod.js
#####################################################################
# run the hugo build
#####################################################################
FROM debian:bullseye as hugo-build
RUN set -ex && \
apt-get update && \
apt-get install -y hugo && \
apt-get clean && \
rm -rf /var/lib/apt/lists
ARG BUILD_NAME
ARG BUILD_DATE
ARG COMMIT
COPY --from=node-update-date /nest/hugo /nest/hugo
RUN hugo -s /nest/hugo -d /nest/public && \
cp /nest/public/post/index.xml /nest/public/rss.xml
#####################################################################
# setup up our node environment
#####################################################################
FROM node:14-buster-slim as node-build
WORKDIR /nest/
COPY package-lock.json package.json ./
RUN npm ci --production && \
npm cache clean --force
COPY tools ./tools
COPY --from=hugo-build /nest/public public
RUN node tools/pre-prod.js
#####################################################################
# finally package everything up with rwgrim/goserve
#####################################################################
FROM rwgrim/goserve
ENV GOSERVE_404_PAGE="/html/404.html"
COPY --from=node-build /nest/public /html/
EXPOSE 3000/tcp