Go to file
Knut Ahlers 2b991407d7
Fix: Do not close the file before uploads finish
Signed-off-by: Knut Ahlers <knut@ahlers.me>
2024-04-02 13:19:36 +02:00
pkg Do some refactoring, add limiting of uploaders 2024-04-01 13:03:26 +02:00
.gitignore Rework to include multiple configurable uploaders 2024-03-27 15:20:45 +01:00
README.md Do some refactoring, add limiting of uploaders 2024-04-01 13:03:26 +02:00
go.mod Rework to include multiple configurable uploaders 2024-03-27 15:20:45 +01:00
go.sum Rework to include multiple configurable uploaders 2024-03-27 15:20:45 +01:00
main.go Fix: Do not close the file before uploads finish 2024-04-02 13:19:36 +02:00
uploaders.go Do some refactoring, add limiting of uploaders 2024-04-01 13:03:26 +02:00

README.md

Luzifer / publish-vod

Imagine having multiple archives for your VoDs. Imagine uploading the VoD to each of them manually. Eventually you write a script doing the legwork but that script only uploads sequentially and you always need to edit the script.

Or you create a config for this tool and start one command which then concurrently uploads the VoD to all the configured targets.

Config

---

uploaders:

  myhost:
    name: Example SFTP
    type: sftp
    settings:
      host: hostname:port
      path: /where/to/put/the/file
      user: someoneimportant

  mychannel:
    name: Example Youtube
    type: youtube
    settings:
      channel: the ID of your channel found in its link
      description: |
        What to put in the description field        
      vaultKey: secret/youtube-creds

...

The youtube uploader relies on Vault to store the oauth-token and the client credentials. Create a Google Cloud Platform project, enable the Youtube Data API, create a new application ("OAuth 2.0 Client IDs") with Type "Desktop App", put the client ID and client secret into the keys clientId and clientSecret in that Vault key. Run publish-vod --validate-only to authorize the application. This will automatically store the token into the Vault key.