Commit Graph

95 Commits (f7b427ef0123c06cf21c0420652cd9fe52e4606a)

Author SHA1 Message Date
Chocobozzz 1f6125be8b
Optimize torrent URL update 2021-08-18 09:14:51 +02:00
Jelle Besseling 0305db28c9
Add support for saving video files to object storage (#4290)
* Add support for saving video files to object storage

* Add support for custom url generation on s3 stored files

Uses two config keys to support url generation that doesn't directly go
to (compatible s3). Can be used to generate urls to any cache server or
CDN.

* Upload files to s3 concurrently and delete originals afterwards

* Only publish after move to object storage is complete

* Use base url instead of url template

* Fix mistyped config field

* Add rudenmentary way to download before transcode

* Implement Chocobozzz suggestions

https://github.com/Chocobozzz/PeerTube/pull/4290#issuecomment-891670478

The remarks in question:
    Try to use objectStorage prefix instead of s3 prefix for your function/variables/config names
    Prefer to use a tree for the config: s3.streaming_playlists_bucket -> object_storage.streaming_playlists.bucket
    Use uppercase for config: S3.STREAMING_PLAYLISTS_BUCKETINFO.bucket -> OBJECT_STORAGE.STREAMING_PLAYLISTS.BUCKET (maybe BUCKET_NAME instead of BUCKET)
    I suggest to rename moveJobsRunning to pendingMovingJobs (or better, create a dedicated videoJobInfo table with a pendingMove & videoId columns so we could also use this table to track pending transcoding jobs)
    https://github.com/Chocobozzz/PeerTube/pull/4290/files#diff-3e26d41ca4bda1de8e1747af70ca2af642abcc1e9e0bfb94239ff2165acfbde5R19 uses a string instead of an integer
    I think we should store the origin object storage URL in fileUrl, without base_url injection. Instead, inject the base_url at "runtime" so admins can easily change this configuration without running a script to update DB URLs

* Import correct function

* Support multipart upload

* Remove import of node 15.0 module stream/promises

* Extend maximum upload job length

Using the same value as for redundancy downloading seems logical

* Use dynamic part size for really large uploads

Also adds very small part size for local testing

* Fix decreasePendingMove query

* Resolve various PR comments

* Move to object storage after optimize

* Make upload size configurable and increase default

* Prune webtorrent files that are stored in object storage

* Move files after transcoding jobs

* Fix federation

* Add video path manager

* Support move to external storage job in client

* Fix live object storage tests

Co-authored-by: Chocobozzz <me@florianbigard.com>
2021-08-17 08:26:20 +02:00
Chocobozzz 44364d06d7
Trigger test build for any branch 2021-07-20 15:27:18 +02:00
Chocobozzz dcc30997d1
Trigger a build for any branch 2021-07-20 15:27:17 +02:00
Chocobozzz de15b052c5
Fix comment in PR template 2021-07-12 15:40:33 +02:00
Chocobozzz 4f97f58383
Update PR template and contributing guide 2021-06-25 14:55:25 +02:00
Chocobozzz 29b7426c67
Speedup CI 2021-06-17 10:43:34 +02:00
Rigel Kent 307b3db45e
(doc) move irc webchat link to web.libera.chat 2021-06-15 09:51:13 +02:00
Chocobozzz 27bc958674
Bidi support 2021-06-07 18:14:05 +02:00
Chocobozzz 462271edd6
Move to libera.chat 2021-05-31 10:07:00 +02:00
Chocobozzz bfe6e0d9f7
Add lighthouse to github action 2021-05-27 09:15:29 +02:00
Rigel Kent 99c5d041fc
prioritize matrix support for quick q/a 2021-05-26 14:46:18 +02:00
Chocobozzz 4b91bc1525 Reduce pending job waiting 2021-05-07 15:42:23 +02:00
Chocobozzz ccda150fc4
Remove roadmap funding 2021-03-24 18:18:41 +01:00
Chocobozzz 3fbc697433
Add next to stats github ci 2021-03-24 18:18:41 +01:00
Chocobozzz 2d5a469427
Add next branch to CI 2021-03-24 18:18:40 +01:00
Chocobozzz 9514bb3bc0
Update benchmark ci action 2021-02-24 14:01:00 +01:00
Chocobozzz 2abaa3f27e
Add stats to github actions 2021-02-23 11:02:35 +01:00
Chocobozzz fae6e4da8f Try to speed up server tests 2021-02-19 09:36:50 +01:00
Chocobozzz 4e9835e632
Fix bundlewatch branch base 2021-02-10 11:36:40 +01:00
Chocobozzz 5ec8a71f84
Try to display job log in specific stage 2021-01-14 09:20:38 +01:00
Chocobozzz 0158eeb0c9
Fix ldap test 2021-01-04 11:38:33 +01:00
Chocobozzz 4f5a90ef5e
Always display errors from tests 2021-01-04 10:52:27 +01:00
Chocobozzz 34caef7fc0 Add joblog at the end of ci 2020-12-14 09:11:27 +01:00
Chocobozzz 12554857b4 Display error logs in CI 2020-12-14 09:11:27 +01:00
Chocobozzz 83ef31fe10 Save logs on ci failure 2020-12-14 09:11:27 +01:00
kontrollanten 05e85b59c7
contributing documentation: add `parallel` as dependency (#3421)
Co-authored-by: Rigel Kent <par@rigelk.eu>
2020-12-07 21:27:25 +01:00
Chocobozzz 9e3e4adc65
Add logs to fixture generations 2020-12-01 15:04:38 +01:00
Chocobozzz 0484ec9e41
Try to fix live tests 2020-11-30 09:16:41 +01:00
Rigel Kent afff310e50 allow private syndication feeds via a user feedToken 2020-11-25 11:07:56 +01:00
Frank Sträter b4bc269e55
fix CONTRIBUTING.md command order (#3305) 2020-11-13 11:53:30 +01:00
Chocobozzz 93ab83893d
Fix npm run test 2020-11-10 15:04:08 +01:00
Chocobozzz eb77f4ce1d
Simplify a little bit github templates 2020-11-10 09:36:50 +01:00
Chocobozzz 79389bffd6
Fix deprecated action command 2020-11-10 08:50:49 +01:00
Chocobozzz c655c9ef6f Update ffmpeg static version for tests 2020-11-09 15:33:04 +01:00
Rigel Kent a4879b5375
add github PR template and late crowdfunding link 2020-11-07 21:14:42 +01:00
Rigel Kent 34e2998769
move github issue templates to new standard 2020-11-07 16:22:25 +01:00
Rigel Kent 7f0d856169 jobs/logs view select and empty state visual improvements 2020-09-28 13:25:50 +02:00
Chocobozzz 07491f4b98 Add fixtures cache to github actions 2020-08-24 18:54:37 +02:00
Rigel Kent a3e6d18199
slightly reword CONTRIBUTING doc 2020-08-10 12:01:50 +02:00
Chocobozzz a3b5e78af3 Analyze embed too with bundlewatch 2020-08-06 10:58:36 +02:00
Chocobozzz fc3b14e413
Limit github actions on PR 2020-08-06 09:47:46 +02:00
Chocobozzz d632a14729 Test bundlewatch 2020-08-06 09:42:33 +02:00
Chocobozzz f9e1ca7087 Execute external tests on schedule 2020-07-31 11:32:04 +02:00
Chocobozzz f9d2deae3a Correctly test ldap 2020-07-31 11:32:04 +02:00
Chocobozzz a613eea4c3 DISABLE_HTTP_IMPORT_TESTS on non scheduled tests 2020-07-31 11:32:04 +02:00
Chocobozzz 12e8547f07 Test ldap 2020-07-31 11:32:04 +02:00
Chocobozzz 7abb5c5da1 Use parallel to run tests in parallel 2020-07-31 11:32:04 +02:00
Chocobozzz b488ba1e26 Don't rely on youtube for tests
Use another import URL when possible, and disable import tests when we
want to do a youtube import test
2020-07-31 11:32:04 +02:00
Chocobozzz b9fe9a7ffd Add github workflows 2020-07-31 11:32:04 +02:00