name: Create Dev PyPI Package on: workflow_dispatch: inputs: devVersion: description: 'Dev version' required: true type: number jobs: build: runs-on: ubuntu-latest outputs: version: ${{ steps.current_version.outputs.version }} steps: - name: Checkout code uses: actions/checkout@v4 - name: Install pnpm uses: pnpm/action-setup@v4 with: version: 10 - uses: actions/setup-node@v4 with: node-version: 'lts/*' cache: 'pnpm' - name: Cache tool outputs uses: actions/cache@v4 with: path: | .cache dist tsconfig.tsbuildinfo key: dev-release-tools-cache-${{ runner.os }}-${{ hashFiles('**/pnpm-lock.yaml') }} restore-keys: | dev-release-tools-cache-${{ runner.os }}- - name: Get current version id: current_version run: echo "version=$(node -p "require('./package.json').version")" >> $GITHUB_OUTPUT - name: Build project env: SENTRY_DSN: ${{ secrets.SENTRY_DSN }} ALGOLIA_APP_ID: ${{ secrets.ALGOLIA_APP_ID }} ALGOLIA_API_KEY: ${{ secrets.ALGOLIA_API_KEY }} USE_PROD_CONFIG: 'true' run: | pnpm install --frozen-lockfile pnpm build pnpm zipdist - name: Upload dist artifact uses: actions/upload-artifact@v4 with: name: dist-files path: | dist/ dist.zip publish_pypi: needs: build runs-on: ubuntu-latest steps: - name: Checkout code uses: actions/checkout@v4 - name: Download dist artifact uses: actions/download-artifact@v4 with: name: dist-files - name: Set up Python uses: actions/setup-python@v4 with: python-version: '3.x' - name: Install build dependencies run: python -m pip install build - name: Setup pypi package run: | mkdir -p comfyui_frontend_package/comfyui_frontend_package/static/ cp -r dist/* comfyui_frontend_package/comfyui_frontend_package/static/ - name: Build pypi package run: python -m build working-directory: comfyui_frontend_package env: COMFYUI_FRONTEND_VERSION: ${{ format('{0}.dev{1}', needs.build.outputs.version, inputs.devVersion) }} - name: Publish pypi package uses: pypa/gh-action-pypi-publish@76f52bc884231f62b9a034ebfe128415bbaabdfc with: password: ${{ secrets.PYPI_TOKEN }} packages-dir: comfyui_frontend_package/dist