githubEdit

Pylon KB Sync (S3 → GitHub)

This script synchronizes exported Pylon Knowledge Base articles from an S3 export into this GitHub repository in a deterministic and idempotent way.

What this does

  • Fetches the latest Pylon export manifest from S3

  • Uses the manifest ETag to detect changes

  • Downloads public and customer article indexes

  • Renders Markdown files under /pylon

  • Writes .last_manifest_etag to track sync state

The script does not perform any Git operations.

How it runs

This script is executed by a scheduled GitHub Actions workflow:

.github/workflows/pylon_sync.yml

Triggers:

  • Weekly schedule

  • Manual workflow_dispatch

Authentication:

  • Uses GitHub Actions GITHUB_TOKEN

  • No SSH keys or personal access tokens

  • No Kubernetes CronJobs or secrets

Environment variables

Variable
Required
Description

EXPORT_BASE_URL

Yes

Base URL of the Pylon S3 export

REPO_OUTPUT_ROOT

No

Output directory (default: pylon)

INCLUDE_PUBLIC

No

Sync public articles

INCLUDE_CUSTOMER

No

Sync customer articles

ARCHIVE_REMOVED

No

Archive removed articles

Safety guarantees

  • Idempotent: safe to run repeatedly

  • Read-only access to S3

  • No Git commands executed

  • No writes outside /pylon

  • Designed for automation

Local testing

For local validation only. Git commits and pushes are handled by GitHub Actions.

Last updated

Was this helpful?