# action.yml
name: 'build docker image and push to code'
description: 'build docker image and push to simcu code'
runs:
  using: 'composite'
  steps:
      - uses: docker://node:20
        with:
          entrypoint: "/bin/bash"
          args: |
           -c "npm install && \
               npm run build -- --output-path=dist"
           
      - uses: docker://ubuntu:latest
        with:
           entrypoint: "/bin/bash"
           args: |
            -c 'echo "FROM nginx:alpine" > Dockerfile && \
                echo "COPY dist /usr/share/nginx/html" >> Dockerfile && \
                echo "WORKDIR /usr/share/nginx/html/" >> Dockerfile && \
                echo "已经构建完DOCKERFILE了" && \
                cat Dockerfile'

      - uses: docker://docker:git
        with:
          entrypoint: "/bin/sh"
          args: |
            -c 'docker build -t ${{vars.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }} . && \
            echo ${{vars.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }}已经构建完了 && \
            docker login ${{vars.DOCKER_REGISTRY}} -u ${{vars.DOCKER_USER}} -p ${{vars.DOCKER_PASS}} && \
            docker push ${{vars.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }} && \
            echo ${{vars.DOCKER_REGISTRY}}/${{github.repository}}:${{ github.ref_name }}推送成功'