Trigger workflows more selectively #45
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
# Taken and adapted from torchaudio. | |
# Ref: https://github.com/pytorch/audio/blob/main/.github/workflows/ffmpeg.yml | |
# This job is not directly related to regular CI pipeline. | |
# It is intended to create FFmpeg binaries that we upload on S3, | |
# which then will be used during all the build process in CI or local. | |
# | |
# This job does not include the uploading part. | |
# Upload needs to be done manually, and it should be done only once | |
# per new major release of FFmepg. | |
name: Build non-GPL FFmpeg from source | |
on: | |
workflow_dispatch: | |
pull_request: | |
paths: | |
- packaging/build_ffmpeg.sh | |
- .github/workflows/build_ffmpeg.yaml # self reference | |
schedule: | |
- cron: '0 0 * * 0' # on sunday | |
defaults: | |
run: | |
shell: bash -l -eo pipefail {0} | |
jobs: | |
LGPL-Linux-x86_64: | |
strategy: | |
fail-fast: false | |
matrix: | |
ffmpeg-version: ["4.4.4", "5.1.4", "6.1.1", "7.0.1"] | |
uses: pytorch/test-infra/.github/workflows/linux_job.yml@main | |
with: | |
job-name: Build | |
upload-artifact: ffmpeg-lgpl | |
repository: pytorch/torchcodec | |
script: | | |
export FFMPEG_VERSION="${{ matrix.ffmpeg-version }}" | |
export FFMPEG_ROOT="${PWD}/ffmpeg" | |
packaging/build_ffmpeg.sh | |
tar -cf ffmpeg.tar.gz ffmpeg/include ffmpeg/lib | |
artifact_dir="${RUNNER_ARTIFACT_DIR}/$(date +%Y-%m-%d)/linux_x86_64" | |
mkdir -p "${artifact_dir}" | |
mv ffmpeg.tar.gz "${artifact_dir}/${FFMPEG_VERSION}.tar.gz" | |
LGPL-macOS: | |
strategy: | |
fail-fast: false | |
matrix: | |
ffmpeg-version: ["4.4.4", "5.1.4", "6.1.1", "7.0.1"] | |
uses: pytorch/test-infra/.github/workflows/macos_job.yml@main | |
with: | |
job-name: Build | |
upload-artifact: ffmpeg-lgpl | |
repository: pytorch/torchcodec | |
runner: macos-14-xlarge | |
script: | | |
export FFMPEG_VERSION="${{ matrix.ffmpeg-version }}" | |
export FFMPEG_ROOT="${PWD}/ffmpeg" | |
packaging/build_ffmpeg.sh | |
tar -cf ffmpeg.tar.gz ffmpeg/include ffmpeg/lib | |
artifact_dir="${RUNNER_ARTIFACT_DIR}/$(date +%Y-%m-%d)/macos_$(uname -m)" | |
mkdir -p "${artifact_dir}" | |
mv ffmpeg.tar.gz "${artifact_dir}/${FFMPEG_VERSION}.tar.gz" |