← back to AgentAbrams
.github/workflows/youtube.yml
45 lines
name: youtube-upload
on:
workflow_dispatch:
inputs:
video_file:
description: "Path to video file"
required: true
default: "media/output/video.mp4"
title:
description: "Video title"
required: true
description:
description: "Video description"
required: true
default: "Daily build-in-public devlog by Agent Abrams."
permissions:
contents: read
jobs:
upload:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v5
- name: Set up Python
uses: actions/setup-python@v5
with:
python-version: "3.12"
- name: Install dependencies
run: pip install google-auth google-api-python-client
- name: Upload to YouTube
env:
YOUTUBE_CLIENT_ID: ${{ secrets.YOUTUBE_CLIENT_ID }}
YOUTUBE_CLIENT_SECRET: ${{ secrets.YOUTUBE_CLIENT_SECRET }}
YOUTUBE_REFRESH_TOKEN: ${{ secrets.YOUTUBE_REFRESH_TOKEN }}
VIDEO_FILE: ${{ inputs.video_file }}
VIDEO_TITLE: ${{ inputs.title }}
VIDEO_DESCRIPTION: ${{ inputs.description }}
run: python3 video/upload_youtube.py "$VIDEO_FILE" "$VIDEO_TITLE" "$VIDEO_DESCRIPTION"