Att publicera en podcast ska inte kräva att du öppnar en XML-fil, letar efter rätt länk och hoppas att du inte förstörde din RSS-feed. Men om du har gjort det här ens några gånger känner du igen stressen: ett enda litet formateringsfel och Spotify plockar inte upp avsnittet.
Podcastproducenter fastnar i samma lanseringschecklista varje vecka. Marknadsansvariga som driver thought leadership-poddar känner det också. Och solo-skapare? De känner det oftast mest. Den här Drive GitHub RSS-automationen tar bort de sköra momenten så att din feed håller sig strukturerad och Spotify hålls uppdaterat.
Du får se exakt hur det här flödet laddar upp din MP3 till Google Drive, uppdaterar din RSS i GitHub och publicerar en ny avsnittspost utan manuell copy-paste.
Så här fungerar automationen
Hela n8n-flödet, från trigger till slutresultat:
n8n Workflow Template: Google drive till github, RSS för podd uppdateras felfritt
flowchart LR
subgraph sg0["When clicking ‘Execute workflow’ Flow"]
direction LR
n0@{ icon: "mdi:play-circle", form: "rounded", label: "When clicking ‘Execute workf..", pos: "b", h: 48 }
n1["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/github.dark.svg' width='40' height='40' /></div><br/>Get RSS File"]
n2["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Add new episode"]
n3@{ icon: "mdi:swap-vertical", form: "rounded", label: "Input Data", pos: "b", h: 48 }
n4@{ icon: "mdi:cog", form: "rounded", label: "Read audio file", pos: "b", h: 48 }
n5@{ icon: "mdi:cog", form: "rounded", label: "Upload to Google Drive", pos: "b", h: 48 }
n6@{ icon: "mdi:cog", form: "rounded", label: "Set public url", pos: "b", h: 48 }
n7["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/code.svg' width='40' height='40' /></div><br/>Covert to Json"]
n8["<div style='background:#f5f5f5;padding:10px;border-radius:8px;display:inline-block;border:1px solid #e0e0e0'><img src='https://flowpast.com/wp-content/uploads/n8n-workflow-icons/github.dark.svg' width='40' height='40' /></div><br/>Edit a file"]
n3 --> n4
n1 --> n7
n7 --> n2
n6 --> n1
n2 --> n8
n4 --> n5
n5 --> n6
n0 --> n3
end
%% Styling
classDef trigger fill:#e8f5e9,stroke:#388e3c,stroke-width:2px
classDef ai fill:#e3f2fd,stroke:#1976d2,stroke-width:2px
classDef aiModel fill:#e8eaf6,stroke:#3f51b5,stroke-width:2px
classDef decision fill:#fff8e1,stroke:#f9a825,stroke-width:2px
classDef database fill:#fce4ec,stroke:#c2185b,stroke-width:2px
classDef api fill:#fff3e0,stroke:#e65100,stroke-width:2px
classDef code fill:#f3e5f5,stroke:#7b1fa2,stroke-width:2px
classDef disabled stroke-dasharray: 5 5,opacity: 0.5
class n0 trigger
class n2,n7 code
classDef customIcon fill:none,stroke:none
class n1,n2,n7,n8 customIcon
Problemet: podcastpublicering är fortfarande märkligt manuell
Om din RSS-feed ligger i GitHub (vanligt för lättviktig, versionshanterad publicering) kan varje nytt avsnitt bli en liten “release-ceremoni”. Du exporterar MP3:an, laddar upp den någonstans, skapar en delbar länk och redigerar sedan rss.xml för hand. Sen kommer den läskiga delen: klistrade du in URL:en korrekt, höll du XML:en giltig, kom du ihåg pubDate-formatet och committade du rätt fil till rätt repo? Missar du en detalj fastnar du i felsökning medan publiken undrar var avsnittet tog vägen.
Friktionen bygger på. Här är var det brukar fallera.
- Du lägger cirka 30 minuter per release på repetitivt “flytta fil, kopiera länk, redigera XML”.
- Ett enda skrivfel i ett RSS-
<item>kan ogiltigförklara feeden, vilket gör att Spotify och andra appar slutar uppdatera. - Länkar driver över tid eftersom MP3:an inte konsekvent laddas upp till samma plats med samma delningsinställningar.
- Releasedagar blir höginsats, eftersom det kan ta timmar att fixa i efterhand och ändå inte garanterar att plattformar crawlar om direkt.
Lösningen: uppladdning till Google Drive + automatiska GitHub RSS-uppdateringar
Det här flödet gör din podcastrelease till en repeterbar körning i n8n. Du börjar med att definiera avsnittsdetaljer (titel, beskrivning, datum och ljudkällan). Automationen laddar den färdiga MP3:an från en lokal sökväg eller ett tidigare steg, laddar upp den till Google Drive och slår sedan på delning så att filen får en offentlig länk som du tryggt kan använda i en RSS-feed. Därefter hämtar den din befintliga rss.xml från ett GitHub-repo, konverterar XML:en till ett format som är enklare att redigera och lägger till ett nytt avsnitts-<item> med korrekt metadata och MP3-URL. Till sist committar den den uppdaterade RSS-filen tillbaka till GitHub, vilket får Spotify och andra podcastappar som är kopplade till feeden att plocka upp förändringen.
Flödet startar med en manuell trigger, så du kör det när avsnittet är klart. Google Drive står för hosting och en stabil offentlig länk. GitHub förblir “single source of truth” för feeden, eftersom flödet committar den uppdaterade filen varje gång.
Det du får: automation vs. resultat
| Det här automatiserar flödet | Resultat du får |
|---|---|
|
|
Exempel: så här ser det ut
Säg att du publicerar ett avsnitt i veckan. Manuellt tar det oftast cirka 10 minuter att ladda upp MP3:an och ställa in delning, plus ytterligare 20 minuter att redigera rss.xml, validera den, committa och dubbelkolla enclosure-länken. Det är ungefär 30 minuter varje vecka, och det känns längre när något skapar fel. Med det här flödet kör du triggern, fyller i avsnittsfälten och låter n8n hantera uppladdning + RSS-uppdatering; de flesta landar på cirka 10 minuter hands-on och väntar sedan på att plattformarna ska crawla om.
Det här behöver du
- n8n-instans (prova n8n Cloud gratis)
- Self-hosting-alternativ om du föredrar det (Hostinger funkar bra)
- Google Drive för MP3-hosting och delningslänkar.
- GitHub för att lagra och versionshantera din rss.xml.
- Google OAuth-uppgifter (hämta dem i Google Cloud Console).
Kunskapsnivå: Medel. Du kopplar konton, ställer in en mapp/repo och klistrar in en filsökväg utan att behöva skriva tung kod.
Vill du inte sätta upp detta själv? Prata med en automationsexpert (gratis 15-minuters konsultation).
Så fungerar det
Du kör flödet när ett avsnitt är klart. Det startar med en manuell trigger och frågar sedan direkt efter avsnittsfälten (titel, beskrivning, datum och var MP3:an kommer ifrån).
MP3:an läses in och laddas upp till Google Drive. n8n läser ljudfilen från sökvägen du anger (eller från ett tidigare automationssteg) och sparar den i din valda Drive-mapp.
En offentlig delningslänk genereras. Flödet aktiverar delning så att MP3:an kan nås av podcastappar och sparar sedan URL:en för RSS-enclosure.
Din RSS-feed uppdateras i GitHub. n8n hämtar aktuell rss.xml, tolkar den till redigerbar data, lägger till ett nytt <item> och committar den uppdaterade filen tillbaka till repot.
Du kan enkelt justera avsnittsfälten för att ta med extra uppgifter som säsong-/avsnittsnummer eller egna taggar utifrån dina behov. Se hela implementationsguiden nedan för anpassningsalternativ.
Steg-för-steg-guide för implementering
Steg 1: konfigurera den manuella triggern
Konfigurera arbetsflödets startpunkt så att ni kan köra det vid behov medan ni färdigställer er podcastmetadata och filplatser.
- Lägg till och öppna Manual Start Trigger.
- Lämna alla fält på standardinställningarna eftersom den här noden körs manuellt i editorn.
- Koppla Manual Start Trigger till Define Episode Fields.
Steg 2: definiera avsnittsmetadata och ladda ljudfilen
Det här steget samlar in avsnittsdetaljerna och hämtar den lokala ljudfilen till arbetsflödet.
- Öppna Define Episode Fields och ställ in följande tilldelningar:
- audio_path till
/path/to/audio.mp3 - title till
Sample podcast episode title - description till den fullständiga avsnittssammanfattningen som visas i noden
- github_user_name till
[YOUR_ID] - GitHub_repo_name till
[YOUR_ID]
- audio_path till
- Öppna Load Audio Asset och ställ in File Selector till
={{ $json.audio_path }}. - I Load Audio Asset ska ni låta Data Property Name vara satt till
dataså att nedströms kod kan läsa binärdata korrekt.
Steg 3: ladda upp ljudet till Drive och aktivera offentlig åtkomst
Dessa noder lagrar ljudfilen och genererar en offentlig nedladdningslänk för RSS enclosure.
- Öppna Store File in Drive och ställ in Name till
={{ $json.fileName }}. - I Store File in Drive ställer ni in Drive till
My Driveoch Folder tillPodcast. - Inloggning krävs: Anslut era googleDriveOAuth2Api-uppgifter i Store File in Drive.
- Öppna Enable Public Link och ställ in Operation till
share. - I Enable Public Link ställer ni in File ID till
={{ $json.id }}och behåller behörigheter somreaderföranyone. - Inloggning krävs: Anslut era googleDriveOAuth2Api-uppgifter i Enable Public Link.
Steg 4: hämta, tolka och uppdatera RSS-flödet i GitHub
Den här sekvensen laddar ner er RSS XML, lägger till det nya avsnittet och skriver tillbaka den uppdaterade filen till GitHub.
- Öppna Retrieve RSS Feed och ställ in Resource till
fileoch Operation tillget. - Ställ in File Path till
n8n/rss.xmloch välj era värden för Owner och Repository. - Inloggning krävs: Anslut era githubApi-uppgifter i Retrieve RSS Feed.
- Öppna Parse XML to JSON och behåll koden som angiven, inklusive binär egenskapsnamn
data. - Öppna Append Episode Item och behåll koden intakt så att den hämtar:
$('Store File in Drive').first().json.idför enclosure-URL:en$('Define Episode Fields').first().json.titleför titeln$('Define Episode Fields').first().json.descriptionför beskrivningen
- Öppna Update Feed File och ställ in File Path till
n8n/rss.xml, Operation tilleditoch File Content till={{ $json.updatedRssXml }}. - Ställ in Commit Message till
Update RSS feed with new episodei Update Feed File. - Inloggning krävs: Anslut era githubApi-uppgifter i Update Feed File.
data. Om er GitHub-nod matar ut en annan binär egenskap, uppdatera binName i koden i enlighet med det.Steg 5: testa och aktivera ert arbetsflöde
Kör ett fullständigt test för att bekräfta att uppladdningen till Drive, RSS-tolkningen och GitHub-uppdateringen lyckas.
- Klicka på Execute Workflow från Manual Start Trigger.
- Verifiera att Store File in Drive laddar upp ljudet och att Enable Public Link returnerar ett delningsbart fil-ID.
- Bekräfta att Append Episode Item matar ut
updatedRssXmloch att Update Feed File commitar den uppdateraden8n/rss.xml-filen. - Kontrollera ert GitHub-repo för att säkerställa att RSS-filen visar den nya avsnittsposten.
- När ni är redo för produktion växlar ni arbetsflödet till Active.
Vanliga fallgropar
- Google Drive-uppgifter kan gå ut eller kräva specifika behörigheter. Om det strular: kontrollera Google-kopplingen i n8n under fliken Credentials först.
- Om din MP3 kommer från en lokal sökväg måste n8n-servern faktiskt ha åtkomst till den sökvägen. I self-hostade upplägg är det en klassisk “funkar på min laptop”-fälla.
- GitHub-commits kan misslyckas om token saknar repo-scope eller om filsökvägen till
rss.xmlär lite fel. Dubbelkolla repo, branch och filplats i GitHub-nodens inställningar.
Vanliga frågor
Cirka 30 minuter när din Google- och GitHub-åtkomst är klar.
Nej. Du kopplar främst konton och fyller i några fält. “Kod”-stegen ingår redan i flödet.
Ja. n8n har ett gratis self-hosted-alternativ och en gratis provperiod på n8n Cloud. Cloud-planer börjar på 20 USD/månad för högre volymer. Du behöver också ta höjd för användning av Google Drive och GitHub (oftast gratis för det här användningsfallet).
Två alternativ: n8n Cloud (hanterat, enklast att komma igång) eller self-hosting på en VPS. För self-hosting är Hostinger VPS prisvärd och hanterar n8n bra. Self-hosting ger dig obegränsade körningar men kräver grundläggande serverhantering.
Ja, och det är en vanlig justering. Uppdatera steget “Define Episode Fields” så att det inkluderar säsongs-/avsnittsvärden, och justera sedan logiken i “Append Episode Item” så att den skriver de taggarna i det nya <item>. Du kan också ändra hur titeln byggs (till exempel: “S02E05: …”) så att Spotify och Apple Podcasts visar konsekvent namngivning.
Oftast handlar det om att OAuth-åtkomst har gått ut, eller att Drive-appen inte får åtkomst till mappen du valde. Anslut Google Drive på nytt i n8n-credentials och bekräfta sedan att målmappens ID är korrekt och åtkomligt för samma Google-konto. Kontrollera också delningsinställningar: om din organisation blockerar offentliga länkar kan flödet ladda upp utan problem men misslyckas när det försöker skapa en offentlig URL.
Massor.
För RSS-redigering: oftast ja. Zapier och Make är grymma för enkla “när X händer, gör Y”, men RSS-uppdateringar kräver ofta mer noggrann datahantering så att XML:en förblir giltig. n8n ger dig mer kontroll över tolkning och tillägg av innehåll, och du kan self-hosta om du vill ha obegränsade körningar. Ärligt talat är den stora vinsten tillförlitlighet: när detta väl är på plats slutar din publiceringsprocess att vara beroende av manuell XML-redigering. Prata med en automationsexpert om du vill ha hjälp att välja rätt stack.
När det här väl är på plats slutar en ny release att kännas riskfylld. Flödet tar hand om de repetitiva delarna, och du får tillbaka både tid (och trygghet).
Kontakta oss
Hör av dig, så diskuterar vi hur just din verksamhet kan dra nytta av alla fantastiska möjligheter som AI skapar.