From aac54add2d1ed5b10f5d572212818ef1152e228e Mon Sep 17 00:00:00 2001 From: Knut Ahlers Date: Fri, 24 Sep 2021 21:53:59 +0200 Subject: [PATCH] Ensure Nods.js and Go in Docker build Signed-off-by: Knut Ahlers --- .dockerignore | 2 +- Dockerfile | 13 +++++++++++-- Dockerfile.minimal | 19 ++++++++++++++++--- Makefile | 7 ++++++- 4 files changed, 34 insertions(+), 7 deletions(-) diff --git a/.dockerignore b/.dockerignore index 85de9cf..a6f21c9 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1 +1 @@ -src +src/node_modules diff --git a/Dockerfile b/Dockerfile index 9c5ffef..0e8be31 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,20 +1,29 @@ -FROM golang:alpine as builder +FROM luzifer/archlinux as builder + +ENV CGO_ENABLED=0 \ + GOPATH=/go COPY . /go/src/github.com/Luzifer/ots WORKDIR /go/src/github.com/Luzifer/ots RUN set -ex \ - && apk add --update \ + && pacman --noconfirm -Syy \ + && pacman --noconfirm -S \ curl \ git \ + go \ make \ + nodejs-lts-fermium \ + npm \ tar \ unzip \ + && make -C src -f ../Makefile generate-inner \ && make download_libs \ && go install \ -ldflags "-X main.version=$(git describe --tags --always || echo dev)" \ -mod=readonly + FROM alpine:latest LABEL maintainer "Knut Ahlers " diff --git a/Dockerfile.minimal b/Dockerfile.minimal index 0f9b4cd..0d1ba36 100644 --- a/Dockerfile.minimal +++ b/Dockerfile.minimal @@ -1,16 +1,29 @@ -FROM golang:alpine as builder +FROM luzifer/archlinux as builder -ENV CGO_ENABLED=0 +ENV CGO_ENABLED=0 \ + GOPATH=/go COPY . /go/src/github.com/Luzifer/ots WORKDIR /go/src/github.com/Luzifer/ots RUN set -ex \ - && apk add --update git \ + && pacman --noconfirm -Syy \ + && pacman --noconfirm -S \ + curl \ + git \ + go \ + make \ + nodejs-lts-fermium \ + npm \ + tar \ + unzip \ + && make -C src -f ../Makefile generate-inner \ + && make download_libs \ && go install \ -ldflags "-X main.version=$(git describe --tags --always || echo dev)" \ -mod=readonly + FROM scratch LABEL maintainer "Knut Ahlers " diff --git a/Makefile b/Makefile index 62d7039..b71ef9a 100644 --- a/Makefile +++ b/Makefile @@ -5,7 +5,12 @@ default: generate download_libs generate: docker run --rm -i -v $(CURDIR):$(CURDIR) -w $(CURDIR)/src node:14-alpine \ - sh -exc "npx npm@lts ci && npx npm@lts run build && chown -R $(shell id -u) ../frontend node_modules" + make generate-inner + +generate-inner: + npx npm@lts ci + npx npm@lts run build + chown -R $(shell id -u) ../frontend node_modules publish: generate download_libs curl -sSLo golang.sh https://raw.githubusercontent.com/Luzifer/github-publish/master/golang.sh