Implementing Automated Content Publishing with Bluesky and Git Workflows
TL;DR: I updated the content-automation repository to publish content on Bluesky using automated Git workflows, resolving a bug in the process. This change enables seamless content publication across multiple platforms.
The Problem
The content-automation repository was experiencing issues with automated content publishing on Bluesky. Specifically, the workflow was failing to publish content due to a bug in the craft.service.ts file. The error message indicated a Module not found error, which suggested a problem with the file's dependencies or imports.
What I Tried First
Initially, I attempted to resolve the issue by reviewing the craft.service.ts file and its dependencies. However, the problem persisted, and I realized that the issue was more complex than initially thought. I then decided to review the Git workflows and configuration files to identify potential causes.
The Implementation
Upon further investigation, I discovered that the issue was related to the Git workflow configuration. Specifically, the git pull command was not being executed correctly, causing the workflow to fail. To resolve this, I updated the craft.service.ts file to include a git pull --rebase --autostash command before pushing changes. This ensures that the local repository is updated before attempting to publish content.
// craft.service.ts
import { exec } from 'child_process';
const publishContent = async () => {
try {
// Update local repository
await exec('git pull --rebase --autostash');
// Publish content on Bluesky
await exec('git push origin main');
} catch (error) {
console.error(error);
}
};
Additionally, I updated the bluesky_es.json and metadata.json files to reflect the changes:
// content/2026/07/04/content-automation/bluesky_es.json
[
{
"type": "avance",
"text": "Finalmente resolví el bug en los workflows de automatización de contenido, agregando `git pull --rebase --autostash` antes de push en todos los workflows"
}
]
// content/2026/07/04/content-automation/metadata.json
{
"closed_issues": 1,
"medium_generated": false,
"substack_generated": false,
"bluesky_published": true,
"bluesky_uris": {}
}
Key Takeaway
The key takeaway from this experience is the importance of reviewing and updating Git workflows and configuration files when troubleshooting automated content publishing issues. By adding the git pull --rebase --autostash command, I was able to resolve the bug and ensure seamless content publication on Bluesky.
What's Next
In the next iteration, I plan to explore additional features for the content-automation repository, such as integrating with other platforms or implementing more advanced content processing capabilities. The goal is to continue improving the automation and efficiency of content publishing across multiple channels.
vibecoding #buildinpublic #contentautomation #bluesky #gitworkflows
Part of my Build in Public series — sharing the real process of building SaaS projects from Playa del Carmen, México.
Repo: zaerohell/content-automation · 2026-07-05
#playadev #buildinpublic
Top comments (0)