mirror of
				https://github.com/songquanpeng/one-api.git
				synced 2025-11-04 15:53:42 +08:00 
			
		
		
		
	chore: Update CI workflow with new builds, env var, and deploy job
* Update CI workflow with changes to branch names, builds, and jobs * Introduce new 'SHORT\_SHA' env variable for CI workflow * Rename 'docker' job to 'build\_latest' and utilize it in 'deploy' job * Implement specific branch builds and 'deploy' job for a specific host
This commit is contained in:
		
							
								
								
									
										61
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							
							
						
						
									
										61
									
								
								.github/workflows/ci.yml
									
									
									
									
										vendored
									
									
								
							@@ -3,10 +3,41 @@ name: ci
 | 
			
		||||
on:
 | 
			
		||||
  push:
 | 
			
		||||
    branches:
 | 
			
		||||
      - 'main'
 | 
			
		||||
      - 'master'
 | 
			
		||||
      - 'test/ci'
 | 
			
		||||
 | 
			
		||||
jobs:
 | 
			
		||||
  docker:
 | 
			
		||||
  build_latest:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
        name: Checkout
 | 
			
		||||
        uses: actions/checkout@v4
 | 
			
		||||
 | 
			
		||||
      - name: Set up QEMU
 | 
			
		||||
        uses: docker/setup-qemu-action@v3
 | 
			
		||||
 | 
			
		||||
      - name: Set up Docker Buildx
 | 
			
		||||
        uses: docker/setup-buildx-action@v3
 | 
			
		||||
 | 
			
		||||
      -
 | 
			
		||||
        name: Login to Docker Hub
 | 
			
		||||
        uses: docker/login-action@v3
 | 
			
		||||
        with:
 | 
			
		||||
          username: ${{ secrets.DOCKERHUB_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.DOCKERHUB_TOKEN }}
 | 
			
		||||
 | 
			
		||||
      -
 | 
			
		||||
        name: Build and push latest
 | 
			
		||||
        uses: docker/build-push-action@v5
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: ppcelery/one-api:latest
 | 
			
		||||
          cache-from: type=gha
 | 
			
		||||
          cache-to: type=gha,mode=max
 | 
			
		||||
 | 
			
		||||
  build_hash:
 | 
			
		||||
    runs-on: ubuntu-latest
 | 
			
		||||
    steps:
 | 
			
		||||
      -
 | 
			
		||||
@@ -29,15 +60,6 @@ jobs:
 | 
			
		||||
      - name: Add SHORT_SHA env property with commit short sha
 | 
			
		||||
        run: echo "SHORT_SHA=`echo ${GITHUB_SHA} | cut -c1-7`" >> $GITHUB_ENV
 | 
			
		||||
 | 
			
		||||
      -
 | 
			
		||||
        name: Build and push latest
 | 
			
		||||
        uses: docker/build-push-action@v5
 | 
			
		||||
        with:
 | 
			
		||||
          context: .
 | 
			
		||||
          push: true
 | 
			
		||||
          tags: ppcelery/one-api:latest
 | 
			
		||||
          cache-from: type=gha
 | 
			
		||||
          cache-to: type=gha,mode=max
 | 
			
		||||
      -
 | 
			
		||||
        name: Build and push hash label
 | 
			
		||||
        uses: docker/build-push-action@v5
 | 
			
		||||
@@ -47,3 +69,20 @@ jobs:
 | 
			
		||||
          tags: ppcelery/one-api:${{ env.SHORT_SHA }}
 | 
			
		||||
          cache-from: type=gha
 | 
			
		||||
          cache-to: type=gha,mode=max
 | 
			
		||||
 | 
			
		||||
  deploy:
 | 
			
		||||
      runs-on: ubuntu-latest
 | 
			
		||||
      needs: build_latest
 | 
			
		||||
      steps:
 | 
			
		||||
      - name: executing remote ssh commands using password
 | 
			
		||||
        uses: appleboy/ssh-action@v1.0.3
 | 
			
		||||
        with:
 | 
			
		||||
          host: ${{ secrets.TARGET_HOST }}
 | 
			
		||||
          username: ${{ secrets.TARGET_HOST_USERNAME }}
 | 
			
		||||
          password: ${{ secrets.TARGET_HOST_PASSWORD }}
 | 
			
		||||
          port: ${{ secrets.TARGET_HOST_SSH_PORT }}
 | 
			
		||||
          script: |
 | 
			
		||||
            docker pull ppcelery/one-api:latest
 | 
			
		||||
            cd /home/laisky/repo/VPS
 | 
			
		||||
            docker-compose -f b1-docker-compose.yml up -d --remove-orphans --force-recreate oneapi
 | 
			
		||||
            docker ps
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user