trying to fix docker image builds (take 1h+ right now).
trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now). trying to fix docker image builds (take 1h+ right now).
This commit is contained in:
@@ -1,4 +1,3 @@
|
|||||||
/dist
|
|
||||||
/vendor
|
/vendor
|
||||||
/.idea
|
/.idea
|
||||||
/.github
|
/.github
|
||||||
|
|||||||
@@ -74,6 +74,18 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
- name: "Populate frontend version information"
|
||||||
|
run: "cd webapp/frontend && ./git.version.sh"
|
||||||
|
- name: "Generate frontend"
|
||||||
|
uses: addnab/docker-run-action@v3
|
||||||
|
with:
|
||||||
|
image: node:lts
|
||||||
|
options: -v ${{ github.workspace }}:/work
|
||||||
|
run: |
|
||||||
|
cd /work
|
||||||
|
make frontend
|
||||||
|
ls -alt /work
|
||||||
|
|
||||||
- name: Set up QEMU
|
- name: Set up QEMU
|
||||||
uses: docker/setup-qemu-action@v2
|
uses: docker/setup-qemu-action@v2
|
||||||
with:
|
with:
|
||||||
@@ -101,8 +113,6 @@ jobs:
|
|||||||
type=ref,enable=true,event=branch,suffix=-web
|
type=ref,enable=true,event=branch,suffix=-web
|
||||||
type=ref,enable=true,event=tag,suffix=-web
|
type=ref,enable=true,event=tag,suffix=-web
|
||||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||||
- name: "Generate frontend version information"
|
|
||||||
run: "cd webapp/frontend && ./git.version.sh"
|
|
||||||
# Build and push Docker image with Buildx (don't push on PR)
|
# Build and push Docker image with Buildx (don't push on PR)
|
||||||
# https://github.com/docker/build-push-action
|
# https://github.com/docker/build-push-action
|
||||||
- name: Build and push Docker image
|
- name: Build and push Docker image
|
||||||
@@ -125,6 +135,18 @@ jobs:
|
|||||||
steps:
|
steps:
|
||||||
- name: Checkout repository
|
- name: Checkout repository
|
||||||
uses: actions/checkout@v2
|
uses: actions/checkout@v2
|
||||||
|
- name: "Populate frontend version information"
|
||||||
|
run: "cd webapp/frontend && ./git.version.sh"
|
||||||
|
- name: "Generate frontend & version information"
|
||||||
|
uses: addnab/docker-run-action@v3
|
||||||
|
with:
|
||||||
|
image: node:lts
|
||||||
|
options: -v ${{ github.workspace }}:/work
|
||||||
|
run: |
|
||||||
|
cd /work
|
||||||
|
make frontend
|
||||||
|
ls -alt /work
|
||||||
|
|
||||||
- name: Set up QEMU
|
- name: Set up QEMU
|
||||||
uses: docker/setup-qemu-action@v2
|
uses: docker/setup-qemu-action@v2
|
||||||
with:
|
with:
|
||||||
@@ -150,8 +172,6 @@ jobs:
|
|||||||
type=ref,enable=true,event=branch,suffix=-omnibus
|
type=ref,enable=true,event=branch,suffix=-omnibus
|
||||||
type=ref,enable=true,event=tag,suffix=-omnibus
|
type=ref,enable=true,event=tag,suffix=-omnibus
|
||||||
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
images: ${{ env.REGISTRY }}/${{ env.IMAGE_NAME }}
|
||||||
- name: "Generate frontend version information"
|
|
||||||
run: "cd webapp/frontend && ./git.version.sh"
|
|
||||||
# Build and push Docker image with Buildx (don't push on PR)
|
# Build and push Docker image with Buildx (don't push on PR)
|
||||||
# https://github.com/docker/build-push-action
|
# https://github.com/docker/build-push-action
|
||||||
- name: Build and push Docker image
|
- name: Build and push Docker image
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ BINARY=\
|
|||||||
linux/arm-7 \
|
linux/arm-7 \
|
||||||
linux/arm64 \
|
linux/arm64 \
|
||||||
|
|
||||||
|
.ONESHELL: # Applies to every targets in the file! .ONESHELL instructs make to invoke a single instance of the shell and provide it with the entire recipe, regardless of how many lines it contains.
|
||||||
.PHONY: all $(BINARY)
|
.PHONY: all $(BINARY)
|
||||||
all: $(BINARY) windows/amd64
|
all: $(BINARY) windows/amd64
|
||||||
|
|
||||||
@@ -50,5 +51,16 @@ docker-web:
|
|||||||
docker-omnibus:
|
docker-omnibus:
|
||||||
@echo "building omnibus docker image"
|
@echo "building omnibus docker image"
|
||||||
docker build --build-arg TARGETARCH=amd64 -f docker/Dockerfile -t analogj/scrutiny-dev:omnibus .
|
docker build --build-arg TARGETARCH=amd64 -f docker/Dockerfile -t analogj/scrutiny-dev:omnibus .
|
||||||
|
|
||||||
|
# reduce logging, disable angular-cli analytics for ci environment
|
||||||
|
frontend: export NPM_CONFIG_LOGLEVEL = warn
|
||||||
|
frontend: export NG_CLI_ANALYTICS = false
|
||||||
|
frontend:
|
||||||
|
cd webapp/frontend
|
||||||
|
npm install -g @angular/cli@9.1.4
|
||||||
|
mkdir -p $(CURDIR)/dist
|
||||||
|
npm install
|
||||||
|
npm run build:prod -- --output-path=$(CURDIR)/dist
|
||||||
|
|
||||||
# clean:
|
# clean:
|
||||||
# rm scrutiny-collector-metrics-* scrutiny-web-*
|
# rm scrutiny-collector-metrics-* scrutiny-web-*
|
||||||
|
|||||||
+1
-16
@@ -10,21 +10,6 @@ RUN go mod vendor && \
|
|||||||
go build -ldflags '-w -extldflags "-static"' -o scrutiny-collector-selftest collector/cmd/collector-selftest/collector-selftest.go && \
|
go build -ldflags '-w -extldflags "-static"' -o scrutiny-collector-selftest collector/cmd/collector-selftest/collector-selftest.go && \
|
||||||
go build -ldflags '-w -extldflags "-static"' -o scrutiny-collector-metrics collector/cmd/collector-metrics/collector-metrics.go
|
go build -ldflags '-w -extldflags "-static"' -o scrutiny-collector-metrics collector/cmd/collector-metrics/collector-metrics.go
|
||||||
|
|
||||||
########
|
|
||||||
FROM node:lts-slim as frontendbuild
|
|
||||||
|
|
||||||
#reduce logging, disable angular-cli analytics for ci environment
|
|
||||||
ENV NPM_CONFIG_LOGLEVEL=warn NG_CLI_ANALYTICS=false
|
|
||||||
|
|
||||||
WORKDIR /opt/scrutiny/src
|
|
||||||
COPY webapp/frontend /opt/scrutiny/src
|
|
||||||
|
|
||||||
RUN npm install -g @angular/cli@9.1.4 && \
|
|
||||||
mkdir -p /scrutiny/dist && \
|
|
||||||
npm install && \
|
|
||||||
npm run build:prod -- --output-path=/opt/scrutiny/dist
|
|
||||||
|
|
||||||
|
|
||||||
########
|
########
|
||||||
FROM ubuntu:latest as runtime
|
FROM ubuntu:latest as runtime
|
||||||
ARG TARGETARCH
|
ARG TARGETARCH
|
||||||
@@ -52,7 +37,7 @@ COPY /rootfs/etc/cron.d/scrutiny /etc/cron.d/scrutiny
|
|||||||
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny /opt/scrutiny/bin/
|
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny /opt/scrutiny/bin/
|
||||||
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny-collector-selftest /opt/scrutiny/bin/
|
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny-collector-selftest /opt/scrutiny/bin/
|
||||||
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny-collector-metrics /opt/scrutiny/bin/
|
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny-collector-metrics /opt/scrutiny/bin/
|
||||||
COPY --from=frontendbuild /opt/scrutiny/dist /opt/scrutiny/web
|
COPY dist /opt/scrutiny/web
|
||||||
RUN chmod +x /opt/scrutiny/bin/scrutiny && \
|
RUN chmod +x /opt/scrutiny/bin/scrutiny && \
|
||||||
chmod +x /opt/scrutiny/bin/scrutiny-collector-selftest && \
|
chmod +x /opt/scrutiny/bin/scrutiny-collector-selftest && \
|
||||||
chmod +x /opt/scrutiny/bin/scrutiny-collector-metrics && \
|
chmod +x /opt/scrutiny/bin/scrutiny-collector-metrics && \
|
||||||
|
|||||||
+1
-16
@@ -8,21 +8,6 @@ COPY . /go/src/github.com/analogj/scrutiny
|
|||||||
RUN go mod vendor && \
|
RUN go mod vendor && \
|
||||||
go build -ldflags '-w -extldflags "-static"' -o scrutiny webapp/backend/cmd/scrutiny/scrutiny.go
|
go build -ldflags '-w -extldflags "-static"' -o scrutiny webapp/backend/cmd/scrutiny/scrutiny.go
|
||||||
|
|
||||||
########
|
|
||||||
FROM node:lts-slim as frontendbuild
|
|
||||||
|
|
||||||
#reduce logging, disable angular-cli analytics for ci environment
|
|
||||||
ENV NPM_CONFIG_LOGLEVEL=warn NG_CLI_ANALYTICS=false
|
|
||||||
|
|
||||||
WORKDIR /opt/scrutiny/src
|
|
||||||
COPY webapp/frontend /opt/scrutiny/src
|
|
||||||
|
|
||||||
RUN npm install -g @angular/cli@9.1.4 && \
|
|
||||||
mkdir -p /opt/scrutiny/dist && \
|
|
||||||
npm install && \
|
|
||||||
npm run build:prod -- --output-path=/opt/scrutiny/dist
|
|
||||||
|
|
||||||
|
|
||||||
########
|
########
|
||||||
FROM ubuntu:latest as runtime
|
FROM ubuntu:latest as runtime
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
@@ -32,7 +17,7 @@ ENV PATH="/opt/scrutiny/bin:${PATH}"
|
|||||||
RUN apt-get update && apt-get install -y ca-certificates curl tzdata && update-ca-certificates
|
RUN apt-get update && apt-get install -y ca-certificates curl tzdata && update-ca-certificates
|
||||||
|
|
||||||
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny /opt/scrutiny/bin/
|
COPY --from=backendbuild /go/src/github.com/analogj/scrutiny/scrutiny /opt/scrutiny/bin/
|
||||||
COPY --from=frontendbuild /opt/scrutiny/dist /opt/scrutiny/web
|
COPY dist /opt/scrutiny/web
|
||||||
RUN chmod +x /opt/scrutiny/bin/scrutiny && \
|
RUN chmod +x /opt/scrutiny/bin/scrutiny && \
|
||||||
mkdir -p /opt/scrutiny/web && \
|
mkdir -p /opt/scrutiny/web && \
|
||||||
mkdir -p /opt/scrutiny/config && \
|
mkdir -p /opt/scrutiny/config && \
|
||||||
|
|||||||
Reference in New Issue
Block a user