fix:#41 fixed sonarqube hotspots

This commit is contained in:
Elmar Kresse
2024-06-24 12:18:48 +02:00
parent cb8de60d21
commit ff2fa1b67d
6 changed files with 182 additions and 6 deletions

View File

@@ -29,19 +29,20 @@ COPY common/. ./common
RUN CGO_ENABLED=1 GOOS=linux go build -o /htwkalender-data-manager data-manager/main.go
# production stage
FROM alpine:latest AS prod
FROM alpine:3.20.1 AS prod
WORKDIR /htwkalender-data-manager
ARG USER=ical
RUN adduser -Ds /bin/sh $USER && \
chown $USER:$USER ./
RUN adduser -Ds /bin/sh "$USER" && \
chown "$USER":"$USER" ./
USER $USER
RUN mkdir -p data
# copies executable from build container
COPY --chown=$USER:$USER --from=build /htwkalender-data-manager ./
COPY --chown=$USER:$USER --chmod=644 --from=build /htwkalender-data-manager ./
RUN chmod +x main
# Expose port 8090 to the outside world
EXPOSE 8090
@@ -54,6 +55,12 @@ FROM golang:1.21.6 AS dev
# Set the Current Working Directory inside the container
WORKDIR /htwkalender-data-manager
ARG USER=ical
RUN adduser "$USER" && \
chown "$USER":"$USER" ./ \
&& mkdir -p /htwkalender-data-manager/data \
&& chown "$USER":"$USER" /htwkalender-data-manager/data
# Copy go mod and sum files
COPY go.mod go.sum ./
RUN go mod download
@@ -68,5 +75,7 @@ RUN CGO_ENABLED=1 GOOS=linux go build -o /htwkalender-data-manager data-manager/
# Expose port 8091 to the outside world
EXPOSE 8091
USER $USER
# Entry point
ENTRYPOINT ["./main", "serve"]