mirror of
https://github.com/koel/koel.git
synced 2026-04-26 01:06:00 +03:00
[GH-ISSUE #1182] S3 improvements #677
Labels
No labels
Authentication
Dependencies
Documentation
Feature Request
Flac
Help Wanted
Installation/Setup
Integration
Mobile
PR Welcome
Pending Release
Performance
Playlist
S3
Search
Sync
[Pri] Low
[Pri] Normal
[Status] Keep Open
[Status] Needs Author Reply
[Status] Needs Review
[Status] Stale
[Status] Will Implement
[Type] Blessed
[Type] Bug
[Type] Duplicate
[Type] Enhancement
[Type] Help Request
[Type] Question
[Type] Task
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
starred/koel-koel#677
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @Inkybro on GitHub (Feb 17, 2020).
Original GitHub issue: https://github.com/koel/koel/issues/1182
Description
Koel looks like one of the only projects out there that can really meet the needs I have.
The S3 integration works, but not very reliably, and the
koel-awsrepo isn't even really up-to-date with thekoelrepo.As an example, the
koel-awsrepo is ignoring files with extension.flac, even thoughkoelsupports it. This is the easiest/smallest fix I made locally. I already opened a PR for this hereThere are also problems introduced by -- I'm making a few assumptions here -- the filesize of some .flac files. If the filesize is too large to be A) downloaded into memory and/or B) copied to local disk to do tag reading, the lambda will simply timeout or fail. That's what seems to be the case, but only once the .flac file reaches a size of ~100mb.
I've managed to take care of most of these issues on my own instance/repo. The filesize issue is one I still haven't been able to figure out. Part of this my have ended up being due to failure to clean
tmp, but I'm not sure yet without more testing.Example
Number one thing I'd want is some analogue to "koel:sync" for S3. I've already written a script to do this for me. I don't want to pay the charge of uploading to S3 every time I want to get the data updated. I wrote a script that I'm able to run locally that will essentially list the contents of the specified S3 bucket, and progressively iterate through those files, running a very similar operation to
handlePutin koel-aws for each one.So ultimately imho it might be better for the user to specify AWS details, along with the bucket(s) used, and for some analogue of the normal FS sync command or something along these lines. Perhaps even implementing it alongside the normal FS sync command (as in, a user could both be using local FS as well as S3?) I'm not sure, just some ideas.
Followup
I actually have a lot more I could add but I don't have time now....
Another thing I didn't fully understand is the lack of some kind of upload feature, but this is ultimately secondary to everything else I mentioned. If I just had a nice way to get everything synced between S3 and Koel without having to reupload and waste money to test things out I'd be a lot happier.
Is this something you'd be interested in a PR for?
@sergiustheblack commented on GitHub (Nov 15, 2021):
@Inkybro can you please share your "sync" script somehow?
@phanan commented on GitHub (Jul 10, 2024):
A bit late, but Koel Plus now has full support for S3 as a storage driver.