Commit Graph

36 Commits

Author SHA1 Message Date
Chocobozzz 95faf1eaff
Create another test suite for transcoding jobs 2022-02-28 16:02:08 +01:00
Chocobozzz 6627dbc957
Move types package in packages/ 2021-12-28 10:18:15 +01:00
Chocobozzz fafc7c3cbd
Update resolve tspaths and enabled CI for types 2021-12-28 08:37:05 +01:00
Chocobozzz 4ff75a3b2c
Deprecate node 12 2021-12-24 13:52:32 +01:00
Chocobozzz fe392059a8
Global server dep update 2021-12-24 13:38:00 +01:00
Chocobozzz b969539c83
Fix types dist paths 2021-12-24 13:28:33 +01:00
Chocobozzz 51e9e152f7
Build nightly using github action 2021-12-03 10:14:17 +01:00
Chocobozzz b202d007cc
Bumped to version v4.0.0-rc.1 2021-12-03 10:14:17 +01:00
Chocobozzz 0d22b7ad5f
Use postgres 10 for tests 2021-08-26 10:01:42 +02:00
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 29b7426c67
Speedup CI 2021-06-17 10:43:34 +02:00
Chocobozzz 4b91bc1525 Reduce pending job waiting 2021-05-07 15:42:23 +02:00
Chocobozzz 2d5a469427
Add next branch to CI 2021-03-24 18:18:40 +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 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
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
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
Chocobozzz 07491f4b98 Add fixtures cache to github actions 2020-08-24 18:54:37 +02:00
Chocobozzz fc3b14e413
Limit github actions on PR 2020-08-06 09:47:46 +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