dotnet2docker/action.yml

40 lines
1.6 KiB
YAML
Raw Normal View History

2023-08-21 14:21:54 +00:00
# action.yml
name: 'build docker image and push to code'
description: 'build docker image and push to simcu code'
2024-04-16 08:18:24 +00:00
inputs:
haveDockerfile:
description: 'If a Dockerfile is already present, skip creation'
required: false
default: 'false'
2023-08-21 14:21:54 +00:00
runs:
using: 'composite'
steps:
2023-08-22 06:40:17 +00:00
- name: build .net app
2024-01-17 16:57:41 +00:00
uses: docker://mcr.microsoft.com/dotnet/sdk:8.0
2023-08-22 06:40:17 +00:00
with:
args: dotnet publish -r linux-x64 -c Release --self-contained -o dist -p:AssemblyName=App
2023-08-22 05:57:52 +00:00
- name: create dockerfile
2024-04-16 08:18:24 +00:00
if: ${{ inputs.haveDockerfile }} != 'true'
2023-08-22 05:57:52 +00:00
uses: docker://ubuntu:latest
2023-08-22 04:57:53 +00:00
with:
entrypoint: "/bin/bash"
args: |
2024-01-17 16:57:41 +00:00
-c 'echo "FROM mcr.microsoft.com/dotnet/runtime:8.0" > Dockerfile && \
2024-04-16 02:50:57 +00:00
echo "ENV TZ Asia/Shanghai" >> Dockerfile && \
2023-08-22 06:36:09 +00:00
echo "COPY dist /home" >> Dockerfile && \
echo "WORKDIR /home" >> Dockerfile && \
echo "ENTRYPOINT [\"./App\"]" >> Dockerfile && \
2023-08-22 06:37:14 +00:00
echo "已经构建完DOCKERFILE了" && \
cat Dockerfile'
2023-08-22 04:57:53 +00:00
2023-08-22 05:57:52 +00:00
- name: build docker image
uses: docker://docker:git
2023-08-22 04:57:53 +00:00
with:
entrypoint: "/bin/sh"
args: |
2023-08-22 06:44:49 +00:00
-c 'docker build -t ${{env.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }} . && \
echo ${{env.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }}已经构建完了 && \
2023-08-22 06:40:17 +00:00
docker login ${{env.DOCKER_REGISTRY}} -u ${{env.DOCKER_USER}} -p ${{env.DOCKER_PASS}} && \
2023-08-22 06:44:49 +00:00
docker push ${{env.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }} && \
echo ${{env.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }}推送成功'