Update .woodpecker.yml #23
@@ -160,35 +160,40 @@ steps:
|
|||||||
echo -n "git.modwad.pl/faapp/" > /tmp/tag.txt
|
echo -n "git.modwad.pl/faapp/" > /tmp/tag.txt
|
||||||
echo "$PNAME" | tr 'A-Z' 'a-z' | tr -d '\n' >> /tmp/tag.txt
|
echo "$PNAME" | tr 'A-Z' 'a-z' | tr -d '\n' >> /tmp/tag.txt
|
||||||
|
|
||||||
|
echo "$PNAME" > /tmp/pname.txt
|
||||||
|
|
||||||
cd "${PDIR}"
|
cd "${PDIR}"
|
||||||
|
|
||||||
cat > "Dockerfile.temp" <<ENDOFDOCKERFILE
|
cat > "Dockerfile.temp" <<'ENDOFDOCKERFILE'
|
||||||
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
|
FROM mcr.microsoft.com/dotnet/aspnet:8.0 AS base
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
EXPOSE 8080
|
EXPOSE 8080
|
||||||
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
|
FROM mcr.microsoft.com/dotnet/sdk:8.0 AS build
|
||||||
WORKDIR /src
|
WORKDIR /src
|
||||||
COPY . .
|
COPY . .
|
||||||
RUN dotnet restore "${PNAME}.csproj"
|
RUN dotnet restore "%%PROJECTNAME%%.csproj"
|
||||||
RUN dotnet publish "${PNAME}.csproj" -c Release -o /app/publish /p:UseAppHost=false
|
RUN dotnet publish "%%PROJECTNAME%%.csproj" -c Release -o /app/publish /p:UseAppHost=false
|
||||||
FROM base AS final
|
FROM base AS final
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY --from=build /app/publish .
|
COPY --from=build /app/publish .
|
||||||
ENV ASPNETCORE_URLS=http://+:8080
|
ENV ASPNETCORE_URLS=http://+:8080
|
||||||
ENTRYPOINT ["dotnet", "${PNAME}.dll"]
|
ENTRYPOINT ["dotnet", "%%PROJECTNAME%%.dll"]
|
||||||
ENDOFDOCKERFILE
|
ENDOFDOCKERFILE
|
||||||
|
|
||||||
|
REAL_PNAME=$(cat /tmp/pname.txt)
|
||||||
|
sed "s/%%PROJECTNAME%%/$REAL_PNAME/g" "Dockerfile.temp" > "Dockerfile.final"
|
||||||
|
|
||||||
docker buildx build \
|
docker buildx build \
|
||||||
--platform linux/amd64 \
|
--platform linux/amd64 \
|
||||||
-t "$(cat /tmp/tag.txt):${CI_COMMIT_SHA}" \
|
-t "$(cat /tmp/tag.txt):${CI_COMMIT_SHA}" \
|
||||||
-t "$(cat /tmp/tag.txt):latest" \
|
-t "$(cat /tmp/tag.txt):latest" \
|
||||||
-f "Dockerfile.temp" \
|
-f "Dockerfile.final" \
|
||||||
.
|
.
|
||||||
|
|
||||||
docker push "$(cat /tmp/tag.txt):${CI_COMMIT_SHA}"
|
docker push "$(cat /tmp/tag.txt):${CI_COMMIT_SHA}"
|
||||||
docker push "$(cat /tmp/tag.txt):latest"
|
docker push "$(cat /tmp/tag.txt):latest"
|
||||||
|
|
||||||
rm -f "Dockerfile.temp"
|
rm -f "Dockerfile.temp" "Dockerfile.final"
|
||||||
cd "${CI_WORKSPACE}"
|
cd "${CI_WORKSPACE}"
|
||||||
done
|
done
|
||||||
depends_on: [select-projects-for-container]
|
depends_on: [select-projects-for-container]
|
||||||
|
|||||||
Reference in New Issue
Block a user