dotnet2docker/action.yml
2023-08-22 14:40:17 +08:00

35 lines
1.3 KiB
YAML

# action.yml
name: 'build docker image and push to code'
description: 'build docker image and push to simcu code'
runs:
using: 'composite'
steps:
- name: build .net app
uses: docker://mcr.microsoft.com/dotnet/sdk:7.0
with:
args: dotnet publish -r linux-x64 -c Release --self-contained -o dist -p:AssemblyName=App
- name: create dockerfile
uses: docker://ubuntu:latest
with:
entrypoint: "/bin/bash"
args: |
-c 'echo "FROM mcr.microsoft.com/dotnet/runtime:7.0" > Dockerfile && \
echo "COPY dist /home" >> Dockerfile && \
echo "WORKDIR /home" >> Dockerfile && \
echo "ENTRYPOINT [\"./App\"]" >> Dockerfile && \
echo "已经构建完DOCKERFILE了" && \
cat Dockerfile'
- name: build docker image
uses: docker://docker:git
env:
DOCKER_IMAGE: ${{env.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }}
with:
entrypoint: "/bin/sh"
args: |
-c 'docker build -t ${{env.DOCKER_IMAGE}} . && \
echo ${{env.DOCKER_IMAGE}}已经构建完了 && \
docker login ${{env.DOCKER_REGISTRY}} -u ${{env.DOCKER_USER}} -p ${{env.DOCKER_PASS}} && \
docker push ${{env.DOCKER_IMAGE}} && \
echo ${{env.DOCKER_IMAGE}}推送成功'