First release of pipewell-confluence-publisher, available on PyPI and the GitHub Actions Marketplace.
Install
pip install pipewell-confluence-publisherOr use directly as a GitHub Action:
- uses: pipewell/confluence-publisher@v1.0.0
with:
confluence-base-url: ${{ vars.CONFLUENCE_BASE_URL }}
confluence-email: ${{ vars.CONFLUENCE_EMAIL }}
confluence-api-token: ${{ secrets.CONFLUENCE_API_TOKEN }}Features
- Supports Confluence Cloud (v2 API) and Data Center (v1 API)
- Converts Markdown to Confluence Storage Format via a custom mistletoe renderer
- Manages page identity via a checked-in YAML manifest; no reliance on page titles
- Auto-creates pages when no page_id is set; writes the new ID back via a skip-ci commit
- Uploads local images and Mermaid diagrams as page attachments
- Rewrites internal Markdown links to Confluence ac:link macros, including links with anchors and query strings
- Conflict detection: warns or fails when a Confluence page has been manually edited since last publish
- Dry-run mode for safe validation in pull requests
- All failures exit non-zero; no silent failures
- CI: ruff, mypy strict, pytest (121 tests passing)