diff --git a/.github/actions/setup-ffmpeg/action.yml b/.github/actions/setup-ffmpeg/action.yml index d4c8ccec..7a6c5d0f 100644 --- a/.github/actions/setup-ffmpeg/action.yml +++ b/.github/actions/setup-ffmpeg/action.yml @@ -23,7 +23,7 @@ runs: local binary_name="${2:-FFmpeg}" local output_file="$(echo "$binary_name" | tr '[:upper:]' '[:lower:]').zip" - if curl -sS -f -L --retry 3 --retry-delay 5 "$url" -o "$output_file"; then + if curl -sS -f -L --retry 3 --retry-delay 8 --retry-all-errors "$url" -o "$output_file"; then echo "Downloaded $binary_name from $url" unzip -q "$output_file" rm -f "$output_file" @@ -42,7 +42,13 @@ runs: chmod +x "$INSTALL_DIR/"* elif [[ "${{ runner.os }}" == "macOS" ]]; then - FF_VERSION=$(echo "$FF_VERSION" | awk -F. '{print $1 $2}') + major=$(echo "$FF_VERSION" | cut -d. -f1) + minor=$(echo "$FF_VERSION" | cut -d. -f2 | sed 's/^0*//') + FF_VERSION="${major}${minor}" + if [[ -z "$minor" ]]; then + FF_VERSION="$major" + fi + download_binary "https://www.osxexperts.net/ffmpeg${FF_VERSION}arm.zip" mv ffmpeg "$INSTALL_DIR/ffmpeg" download_binary "https://www.osxexperts.net/ffprobe${FF_VERSION}arm.zip" "FFprobe" diff --git a/.github/workflows/unit-test.yml b/.github/workflows/unit-test.yml index b65260b3..b0a910f7 100644 --- a/.github/workflows/unit-test.yml +++ b/.github/workflows/unit-test.yml @@ -26,8 +26,8 @@ jobs: - name: Setup FFmpeg and FFprobe uses: ./.github/actions/setup-ffmpeg with: - # bump: FFmpeg /ffmpeg-version: ([\d.]+)/ docker:mwader/static-ffmpeg|/\d+\./|* - ffmpeg-version: 8.1.2 + # bump: FFmpeg /ffmpeg-version: '([\d.]+)'/ docker:mwader/static-ffmpeg|/\d+\./|* + ffmpeg-version: '9.0' - name: Setup Java uses: actions/setup-java@v5 diff --git a/Dockerfile b/Dockerfile index 4f143d7e..6ab1b5da 100644 --- a/Dockerfile +++ b/Dockerfile @@ -3,7 +3,7 @@ FROM eclipse-temurin:26-alpine AS builder WORKDIR /app # bump: FFmpeg /static-ffmpeg:([\d.]+)/ docker:mwader/static-ffmpeg|/\d+\./|* -COPY --from=mwader/static-ffmpeg:8.1.2 /ff* /usr/bin/ +COPY --from=mwader/static-ffmpeg:9.0 /ff* /usr/bin/ COPY . . RUN --mount=type=cache,target=/root/.gradle ./gradlew check installDist --no-daemon