12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061 |
- name: Release (nightly)
- on:
- schedule:
- - cron: '23 23 * * *'
- permissions:
- contents: read
- jobs:
- check_nightly:
- if: vars.BUILD_NIGHTLY != ''
- runs-on: ubuntu-latest
- outputs:
- commit: ${{ steps.check_for_new_commits.outputs.commit }}
- steps:
- - uses: actions/checkout@v4
- with:
- fetch-depth: 0
- - name: Check for new commits
- id: check_for_new_commits
- run: |
- relevant_files=(
- "yt_dlp/*.py"
- ':!yt_dlp/version.py'
- "bundle/*.py"
- "pyproject.toml"
- "Makefile"
- ".github/workflows/build.yml"
- )
- echo "commit=$(git log --format=%H -1 --since="24 hours ago" -- "${relevant_files[@]}")" | tee "$GITHUB_OUTPUT"
- release:
- needs: [check_nightly]
- if: ${{ needs.check_nightly.outputs.commit }}
- uses: ./.github/workflows/release.yml
- with:
- prerelease: true
- source: nightly
- permissions:
- contents: write
- packages: write # For package cache
- actions: write # For cleaning up cache
- id-token: write # mandatory for trusted publishing
- secrets: inherit
- publish_pypi:
- needs: [release]
- if: vars.NIGHTLY_PYPI_PROJECT != ''
- runs-on: ubuntu-latest
- permissions:
- id-token: write # mandatory for trusted publishing
- steps:
- - name: Download artifacts
- uses: actions/download-artifact@v4
- with:
- path: dist
- name: build-pypi
- - name: Publish to PyPI
- uses: pypa/gh-action-pypi-publish@release/v1
- with:
- verbose: true
|