name: Nightly Release on: # pull_request: # branches: [ main ] # paths: # - '.github/workflows/nightly_build.yml' # schedule: # - cron: '00 15 * * *' # GMT time, 15:00 GMT == 23:00 China # workflow_dispatch: workflow_call: inputs: checkout-ref: description: 'ref for checking out, including branch, tag or SHA' required: false type: string release-version: description: 'ipex-llm version (e.g. 2.1.0b1)' required: false type: string schedule-event: description: 'whether it is triggered by schedule event' required: true type: boolean permissions: contents: read jobs: llm-cpp-build: uses: ./.github/workflows/llm-binary-build.yml ipex-llm-build: # python build can only be published once a day, please do not publish it manually # if: ${{ github.event.schedule || github.event_name == 'workflow_dispatch' }} runs-on: [self-hosted, Bree] needs: llm-cpp-build steps: - uses: actions/checkout@f43a0e5ff2bd294095638e18286ca9a3d1956744 # actions/checkout@v3 with: repository: 'intel-analytics/ipex-llm' ref: ${{ github.event.inputs.checkout-ref }} - name: Set up Python uses: actions/setup-python@v2 with: python-version: '3.7.15' - name: Install dependencies run: | python -m pip install --upgrade pip pip install build pip install wheel pip install twine - name: Download llm binary uses: ./.github/actions/llm/download-llm-binary - name: set release version run: | if [[ "${{ github.event.inputs.schedule-event }}" == "true" ]]; then export TIMESTAMP=`date '+%Y%m%d'` export PYPI_VERSION=2.1.0 export RELEASE_VERSION=${PYPI_VERSION}b${TIMESTAMP} else export RELEASE_VERSION=${{ github.event.inputs.release-version }} fi echo "RELEASE_VERSION=${RELEASE_VERSION}" >> $GITHUB_ENV - name: Build package run: | echo ${RELEASE_VERSION} ## windows ## bash python/llm/dev/release_default_windows.sh ${RELEASE_VERSION} true ## linux ## bash python/llm/dev/release_default_linux.sh ${RELEASE_VERSION} true