-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Upgrade to FFMPEG 5.1.2 and fix heroku-22 execution #31
Conversation
4614607
to
e76b385
Compare
Updated |
e76b385
to
b2e6341
Compare
Hi! I have confirmed that using buildpack A sample repro command: I probably won't actually switch to heroku-22 until I can do this without using a non-standard branch of the activestorage-preview buildpack. I am not in a hurry, but curious if you can share any info on timeline. If I remove the Thank you! |
@jrochkind awesome! Thanks for the great feedback, and sorry to leave you waiting so long for an initial response. |
This is not specific to Heroku-22; there are several reports on several of these third-party builds of FFMPEG (which the buildpack you mentioned uses) of segfaults with Ubuntu 22.04 in other environments, e.g. GitHub Actions. The cause is the static linking of We'll merge and release this PR this week, FYI. |
3b28cb3
to
c9d4eaa
Compare
Thank you for the attention, and the info on ffmpeg and ubuntu 22 generally. I appreciate it! |
Previously we were hosting a `.deb` with the updates from #28 we are now using a `tar.gz`. We can get rid of the cache as we have to download from S3 either way. This change is gated on the full rollout of https://devcenter.heroku.com/changelog-items/2547 as #28 relies on updated system packages to be present.
- Remove cache of deb packages Previously we stored a cache of the static ffmpeg binary, however both the cache and the binary are stored on S3 so this does not improve compile times. By moving to not use the cache and deleting old contents we can reduce cache size while preserving compile times - Move location of `dpkg -x` to be logically consistent with installing poppler Previously we were installing ffmpeg and poppler via the apt-get mechanism. With the move to have FFMPEG be a simple curl to disk, it makes more sense to have the `dpkg -x` logic be with the poppler download code. - Add additional logging Log download and install for poppler and ffmpegcache. Adds the version of ffmpeg to the log output.
@schneems thanks, very helpful 👍 |
Builds off of the work of #28 to download a binary from S3 (versus previously we built a static binary as a
.deb
. This should close #27 when merged, and also close #24.In addition caching is removed as both the cache and binary live on S3. Removing caching will decrease cache size and not affect build performance.
This PR is a continuation from the original discussion at #30. The main difference is the branch was renamed for easier use via
heroku buildpacks
Warning
This change is gated on the full rollout of https://devcenter.heroku.com/changelog-items/2547 as #28 relies on updated system packages to be present. The common runtime and private spaces runtime update their stack images at different intervals. Due to this, merge will be delayed.
Herokai: Do not approve until dogwood has confirmed stack image rollout.
Use this branch without a merge
Developers can test use this branch before merge by running:
Once merged, you should switch back or your app will not receive updates or security fixes. You can switch back by running:
If you're using pipelines, make sure you run commands on your staging app so binaries are properly promoted.
GUS-W-12618647