315 lines
		
	
	
	
		
			13 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
			
		
		
	
	
			315 lines
		
	
	
	
		
			13 KiB
		
	
	
	
		
			YAML
		
	
	
	
	
	
name: Manually Build
 | 
						|
 | 
						|
on:
 | 
						|
  workflow_dispatch:
 | 
						|
    inputs:
 | 
						|
      artifact:
 | 
						|
        description: 'select which job to run("all" will make all jobs run)'
 | 
						|
        required: true
 | 
						|
        default: 'all'
 | 
						|
        type: choice
 | 
						|
        options:
 | 
						|
        - all
 | 
						|
        - ipex-llm-cpu
 | 
						|
        - ipex-llm-xpu
 | 
						|
        - ipex-llm-inference-cpp-xpu
 | 
						|
        - ipex-llm-serving-cpu
 | 
						|
        - ipex-llm-serving-xpu
 | 
						|
        - ipex-llm-finetune-lora-cpu
 | 
						|
        - ipex-llm-finetune-qlora-cpu-standalone
 | 
						|
        - ipex-llm-finetune-qlora-cpu-k8s
 | 
						|
        - ipex-llm-finetune-xpu
 | 
						|
      tag:
 | 
						|
        description: 'docker image tag (e.g. 2.1.0-SNAPSHOT)'
 | 
						|
        required: true
 | 
						|
        default: '2.1.0-SNAPSHOT'
 | 
						|
        type: string
 | 
						|
  workflow_call:
 | 
						|
    inputs:
 | 
						|
      artifact:
 | 
						|
        description: 'select which job to run("all" will make all jobs run)'
 | 
						|
        required: true
 | 
						|
        default: 'all'
 | 
						|
        type: string
 | 
						|
      tag:
 | 
						|
        description: 'docker image tag (e.g. 2.1.0-SNAPSHOT)'
 | 
						|
        required: true
 | 
						|
        default: '2.1.0-SNAPSHOT'
 | 
						|
        type: string
 | 
						|
 | 
						|
env:
 | 
						|
  TAG: ${{ inputs.tag }}
 | 
						|
 | 
						|
permissions:
 | 
						|
  contents: read
 | 
						|
 | 
						|
jobs:
 | 
						|
  ipex-llm-finetune-lora-cpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-finetune-lora-cpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-finetune-lora-cpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-finetune-lora-cpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-finetune-lora-cpu
 | 
						|
        cd docker/llm/finetune/lora/cpu/docker
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-finetune-qlora-cpu-standalone:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-finetune-qlora-cpu-standalone' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
 | 
						|
    steps:
 | 
						|
      - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
      - name: docker login
 | 
						|
        run: |
 | 
						|
          docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}          
 | 
						|
      - name: ipex-llm-finetune-qlora-cpu-standalone
 | 
						|
        run: |
 | 
						|
          echo "##############################################################"
 | 
						|
          echo "####### ipex-llm-finetune-qlora-cpu-standalone ########"
 | 
						|
          echo "##############################################################"
 | 
						|
          export image=intelanalytics/ipex-llm-finetune-qlora-cpu-standalone
 | 
						|
          cd docker/llm/finetune/qlora/cpu/docker
 | 
						|
          sudo docker build \
 | 
						|
            --no-cache=true \
 | 
						|
            --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
            --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
            --build-arg no_proxy=${NO_PROXY} \
 | 
						|
            -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
          sudo docker push ${image}:${TAG}
 | 
						|
          sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
          sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
          # tag 'latest'
 | 
						|
          sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
          sudo docker push ${image}:latest
 | 
						|
          sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest          
 | 
						|
 | 
						|
  ipex-llm-finetune-qlora-cpu-k8s:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-finetune-qlora-cpu-k8s' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
 | 
						|
    steps:
 | 
						|
      - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
      - name: docker login
 | 
						|
        run: |
 | 
						|
          docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}          
 | 
						|
      - name: ipex-llm-finetune-qlora-cpu-k8s
 | 
						|
        run: |
 | 
						|
          echo "##############################################################"
 | 
						|
          echo "####### ipex-llm-finetune-qlora-cpu-k8s ########"
 | 
						|
          echo "##############################################################"
 | 
						|
          export image=intelanalytics/ipex-llm-finetune-qlora-cpu-k8s
 | 
						|
          cd docker/llm/finetune/qlora/cpu/docker
 | 
						|
          sudo docker build \
 | 
						|
            --no-cache=true \
 | 
						|
            --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
            --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
            --build-arg no_proxy=${NO_PROXY} \
 | 
						|
            -t ${image}:${TAG} -f ./Dockerfile.k8s .
 | 
						|
          sudo docker push ${image}:${TAG}
 | 
						|
          sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
          sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
          # tag 'latest'
 | 
						|
          sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
          sudo docker push ${image}:latest
 | 
						|
          sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest          
 | 
						|
 | 
						|
  ipex-llm-finetune-xpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-finetune-xpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
    
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-finetune-xpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-finetune-xpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-finetune-xpu
 | 
						|
        cd docker/llm/finetune/xpu
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-xpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-xpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
    
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-xpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-xpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-xpu
 | 
						|
        cd docker/llm/inference/xpu/docker
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-inference-cpp-xpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-inference-cpp-xpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
    
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-inference-cpp-xpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-inference-cpp-xpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-inference-cpp-xpu
 | 
						|
        cd docker/llm/inference-cpp/
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-cpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-cpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-cpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-cpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-cpu
 | 
						|
        cd docker/llm/inference/cpu/docker
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-serving-xpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-serving-xpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
    
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-serving-xpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-serving-xpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-serving-xpu
 | 
						|
        cd docker/llm/serving/xpu/docker
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 | 
						|
  ipex-llm-serving-cpu:
 | 
						|
    if: ${{ inputs.artifact == 'ipex-llm-serving-cpu' || inputs.artifact == 'all' }}
 | 
						|
    runs-on: [self-hosted, Shire]
 | 
						|
    steps:
 | 
						|
    - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3
 | 
						|
    - name: docker login
 | 
						|
      run: |
 | 
						|
        docker login -u ${DOCKERHUB_USERNAME} -p ${DOCKERHUB_PASSWORD}        
 | 
						|
    - name: ipex-llm-serving-cpu
 | 
						|
      run: |
 | 
						|
        echo "##############################################################"
 | 
						|
        echo "####### ipex-llm-serving-cpu ########"
 | 
						|
        echo "##############################################################"
 | 
						|
        export image=intelanalytics/ipex-llm-serving-cpu
 | 
						|
        cd docker/llm/serving/cpu/docker
 | 
						|
        sudo docker build \
 | 
						|
          --no-cache=true \
 | 
						|
          --build-arg http_proxy=${HTTP_PROXY} \
 | 
						|
          --build-arg https_proxy=${HTTPS_PROXY} \
 | 
						|
          --build-arg no_proxy=${NO_PROXY} \
 | 
						|
          -t ${image}:${TAG} -f ./Dockerfile .
 | 
						|
        sudo docker push ${image}:${TAG}
 | 
						|
        sudo docker tag ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        sudo docker push 10.239.45.10/arda/${image}:${TAG}
 | 
						|
        # tag 'latest'
 | 
						|
        sudo docker tag ${image}:${TAG} ${image}:latest
 | 
						|
        sudo docker push ${image}:latest
 | 
						|
        sudo docker rmi -f ${image}:${TAG} 10.239.45.10/arda/${image}:${TAG} ${image}:latest        
 | 
						|
 |