mirror of
https://gitlab.com/Anson-Projects/projects.git
synced 2025-09-14 09:35:04 +00:00
18 lines
1011 B
Markdown
18 lines
1011 B
Markdown
# ghost-upload
|
|
|
|
This tool uploads posts from https://projects.ansonbiggs.com to https://notes.ansonbiggs.com.
|
|
|
|
What's new:
|
|
- Uses the Ghost Admin API to check for existing posts by slug instead of probing the public site.
|
|
- Optional update support: set `UPDATE_EXISTING=true` to update an existing post in-place (via `PUT /ghost/api/v3/admin/posts/{id}?source=html`).
|
|
- Safer slug handling (trims trailing `/` and falls back to the last path segment).
|
|
|
|
Env vars:
|
|
- `admin_api_key`: Ghost Admin API key in `key_id:secret` format.
|
|
- `kagi_api_key`: Kagi Summarizer API key.
|
|
- `UPDATE_EXISTING` (optional): if `true`/`1`, update posts that already exist in Ghost.
|
|
|
|
Notes:
|
|
- Updates use optimistic concurrency by sending the current `updated_at` from Ghost. If someone edits a post in Ghost after we fetch it, the update will fail with a 409 and be reported in the console.
|
|
- Summaries are always regenerated when creating or updating; if you want to avoid re-summarizing on updates, leave `UPDATE_EXISTING` unset.
|