From c51058a867504b8d55c9318100f668ff08c84b0e Mon Sep 17 00:00:00 2001 From: hhhhsc701 <56435672+hhhhsc701@users.noreply.github.com> Date: Fri, 12 Dec 2025 16:19:46 +0800 Subject: [PATCH] =?UTF-8?q?feature:=20=E5=95=86=E4=B8=9A=E7=89=88=E6=9E=84?= =?UTF-8?q?=E5=BB=BA=20(#166)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .github/workflows/enterprise-package.yml | 110 +++++++++++++++++++++++ 1 file changed, 110 insertions(+) create mode 100644 .github/workflows/enterprise-package.yml diff --git a/.github/workflows/enterprise-package.yml b/.github/workflows/enterprise-package.yml new file mode 100644 index 0000000..1292999 --- /dev/null +++ b/.github/workflows/enterprise-package.yml @@ -0,0 +1,110 @@ +name: DataMate Package + +on: + workflow_dispatch: + inputs: + milvus: + type: boolean + description: 是否打包milvus + required: false + default: true + deer-flow: + type: boolean + description: 是否打包deer-flow + required: false + default: false + version: + type: string + description: 版本号 + required: false + default: 1.0.0 + +jobs: + package-all: + runs-on: ubuntu-latest + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Clone DataMate-Deploy + uses: GuillaumeFalourd/clone-github-repo-action@v2.3 + with: + owner: ModelEngine-Group + repository: 'DataMate-Deploy' + access-token: ${{ secrets.ACCESS_TOKEN }} + + - name: Copy tools + run: | + cp -r DataMate-Deploy/tools tools + + - name: DataMate Package + run: | + mkdir helm + cp -r deployment/helm/datamate helm/datamate + sed -i "s#^\(\s*repository:\s*\).*#\1\"\"#" helm/datamate/values.yaml + sed -i "s#^\(\s*type:\s*\).*#\1ClusterIP#" helm/datamate/values.yaml + + - name: DeerFlow Package + if: inputs.deer-flow == true + run: | + cp runtime/deer-flow/.env deployment/helm/deer-flow/charts/public/.env + cp runtime/deer-flow/conf.yaml deployment/helm/deer-flow/charts/public/conf.yaml + cp -r deployment/helm/deer-flow helm/deer-flow + + - name: Milvus Package + if: inputs.milvus == true + run: | + cp -r deployment/helm/milvus helm/milvus + sed -i "s#^\(\s*workload:\s*\).*#\1deployment#" helm/milvus/values.yaml + + - name: Download DataMate Image + run: | + mkdir -p images/datamate + LOWERCASE_REPO=$(echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]') + services=("runtime" "backend" "frontend" "database" "backend-python") + for service in "${services[@]}"; do + docker pull ghcr.io/$LOWERCASE_REPO/datamate-$service:latest --platform arm64 + docker tag ghcr.io/$LOWERCASE_REPO/datamate-$service:latest datamate-$service:latest + docker save -o images/datamate/datamate-$service.tar datamate-$service:latest + docker rmi ghcr.io/$LOWERCASE_REPO/datamate-$service:latest datamate-$service:latest + done + docker pull quay.io/kuberay/operator:v1.4.2 --platform arm64 + docker save -o images/datamate/kuberay-operator.tar quay.io/kuberay/operator:v1.4.2 + docker rmi quay.io/kuberay/operator:v1.4.2 + + - name: Download DeerFlow Image + if: inputs.deer-flow == true + run: | + mkdir -p images/deer-flow + LOWERCASE_REPO=$(echo "${{ github.repository_owner }}" | tr '[:upper:]' '[:lower:]') + services=("backend" "frontend") + for service in "${services[@]}"; do + docker pull ghcr.io/$LOWERCASE_REPO/deer-flow-$service:latest --platform arm64 + docker tag ghcr.io/$LOWERCASE_REPO/deer-flow-$service:latest deer-flow-$service:latest + docker save -o images/deer-flow/deer-flow-$service.tar deer-flow-$service:latest + docekr rmi ghcr.io/$LOWERCASE_REPO/deer-flow-$service:latest deer-flow-$service:latest + done + + - name: Download Milvus Image + if: inputs.milvus == true + run: | + mkdir -p images/milvus + docker pull milvusdb/milvus:v2.6.5 --platform arm64 + docker save -o images/milvus/milvus.tar milvusdb/milvus:v2.6.5 + docker rmi milvusdb/milvus:v2.6.5 + docker pull minio/minio:RELEASE.2024-12-18T13-15-44Z --platform arm64 + docker save -o images/milvus/minio.tar minio/minio:RELEASE.2024-12-18T13-15-44Z + docker rmi minio/minio:RELEASE.2024-12-18T13-15-44Z + docker pull milvusdb/etcd:3.5.18-r1 --platform arm64 + docker save -o images/milvus/etcd.tar milvusdb/etcd:3.5.18-r1 + docker rmi milvusdb/etcd:3.5.18-r1 + + - name: Upload Package + uses: actions/upload-artifact@v4 + with: + name: DataMate_${{ inputs.version }}_Aarch64 + include-hidden-files: true + path: | + helm/ + images/ + tools/