chore(ci): manual build pro image
This commit is contained in:
		
							parent
							
								
									f7b62ed42b
								
							
						
					
					
						commit
						cee90dcbde
					
				
							
								
								
									
										76
									
								
								.github/workflows/manual-build-pro-image.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							
							
						
						
									
										76
									
								
								.github/workflows/manual-build-pro-image.yml
									
									
									
									
										vendored
									
									
										Normal file
									
								
							@ -0,0 +1,76 @@
 | 
			
		||||
name: manual-build-pro-image
 | 
			
		||||
 | 
			
		||||
on:
 | 
			
		||||
  workflow_dispatch:
 | 
			
		||||
    inputs:
 | 
			
		||||
      pr_number:
 | 
			
		||||
        description: 'Please enter a pull request number'
 | 
			
		||||
        required: true
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  build-and-push:
 | 
			
		||||
    if: github.event.pull_request.head.repo.fork != true
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    services:
 | 
			
		||||
      verdaccio:
 | 
			
		||||
        image: verdaccio/verdaccio:latest
 | 
			
		||||
        ports:
 | 
			
		||||
          - 4873:4873
 | 
			
		||||
    steps:
 | 
			
		||||
      - name: Checkout
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
        with:
 | 
			
		||||
          ssh-key: ${{ secrets.SUBMODULE_SSH_KEY }}
 | 
			
		||||
          submodules: true
 | 
			
		||||
      - name: Checkout pro-plugins
 | 
			
		||||
        uses: actions/checkout@v3
 | 
			
		||||
        with:
 | 
			
		||||
          repository: nocobase/pro-plugins
 | 
			
		||||
          path: packages/pro-plugins
 | 
			
		||||
          ssh-key: ${{ secrets.SUBMODULE_SSH_KEY }}
 | 
			
		||||
      - run: cd packages/pro-plugins && gh pr checkout ${{ inputs.pr_number }}
 | 
			
		||||
        env:
 | 
			
		||||
          GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
 | 
			
		||||
      - name: rm .git
 | 
			
		||||
        run: rm -rf packages/pro-plugins/.git &&  git config --global user.email "you@example.com"  &&  git config --global user.name "Your Name" && git add -A && git commit -m "tmp commit"
 | 
			
		||||
      - name: Set up QEMU
 | 
			
		||||
        uses: docker/setup-qemu-action@v2
 | 
			
		||||
      - name: Set up Docker Buildx
 | 
			
		||||
        uses: docker/setup-buildx-action@v2
 | 
			
		||||
        with:
 | 
			
		||||
          driver-opts: network=host
 | 
			
		||||
      - name: Docker meta
 | 
			
		||||
        id: meta
 | 
			
		||||
        uses: docker/metadata-action@v4
 | 
			
		||||
        with:
 | 
			
		||||
          images: |
 | 
			
		||||
            nocobase/nocobase
 | 
			
		||||
          tags: |
 | 
			
		||||
            type=ref,event=branch
 | 
			
		||||
            type=ref,event=pr
 | 
			
		||||
            type=semver,pattern={{version}}
 | 
			
		||||
            type=semver,pattern={{major}}.{{minor}}
 | 
			
		||||
      - name: Login to Aliyun Container Registry
 | 
			
		||||
        uses: docker/login-action@v2
 | 
			
		||||
        with:
 | 
			
		||||
          registry: ${{ secrets.ALI_DOCKER_REGISTRY }}
 | 
			
		||||
          username: ${{ secrets.ALI_DOCKER_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.ALI_DOCKER_PASSWORD }}
 | 
			
		||||
      - name: Build and push - pr-${{ inputs.pr_number }}-pro
 | 
			
		||||
        uses: docker/build-push-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          file: Dockerfile
 | 
			
		||||
          build-args: |
 | 
			
		||||
            VERDACCIO_URL=http://localhost:4873/
 | 
			
		||||
            COMMIT_HASH=${GITHUB_SHA}
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: ${{ secrets.ALI_DOCKER_REGISTRY }}/nocobase/nocobase:pr-${{ inputs.pr_number }}-pro
 | 
			
		||||
      - name: Deploy NocoBase
 | 
			
		||||
        run: |
 | 
			
		||||
          curl --retry 2 --location --request POST "${{secrets.NOCOBASE_DEPLOY_HOST}}pr-${{ inputs.pr_number }}-pro" \
 | 
			
		||||
          --header 'Content-Type: application/json' \
 | 
			
		||||
          -d "{
 | 
			
		||||
              \"tag\": \"pr-${{ inputs.pr_number }}-pro\",
 | 
			
		||||
              \"dialect\": \"postgres\"
 | 
			
		||||
          }"
 | 
			
		||||
		Loading…
	
		Reference in New Issue
	
	Block a user