Publish a folder of documentation to Confluence.
Create a Confluence Page for each markdown file. Each folder will create a parent page to reflect the directory structure.
Name | Description | Required |
---|---|---|
folder |
The folder to sync | true |
username |
Confluence username or email | true |
password |
Confluence password or API token | true |
confluence-base-url |
Your Confluence URL (with wiki ). Example: https://mydomain.atlassian.net/wiki |
true |
space-key |
Confluence space key to publish the documentation. Located after spaces in the URL. https://mydomain.atlassian.net/wiki/spaces/<<~1234>> . Or in Space settings > Space details > Key. |
true |
parent-page-id |
Page id under which the documentation will be published. Located after pages in the URL. https://mydomain.atlassian.net/wiki/spaces/~1234/pages/<<1234>>/My+Parent+Page |
true |
- Renaming a file
- Moving/Removing a file
- Not updating Confluence pages when there is no change
- Add commit link to the new page version
- Add markdown images with url source
name: Sync Docs as Code - Confluence
on:
push:
branches:
- main
paths:
- 'docs/**'
jobs:
docs-as-code:
runs-on: ubuntu-latest
name: Sync Docs as Code - Confluence
steps:
- name: Checkout
uses: actions/checkout@v4
- name: Sync Docs as Code - Confluence
uses: Bhacaz/docs-as-code-confluence@v3
with:
folder: docs
username: [email protected]
password: ${{ secrets.API_TOKEN }}
confluence-base-url: https://mydomain.atlassian.net/wiki
space-key: ~1234
parent-page-id: 123456789
Bhacaz/docs-as-code-confluence-demo
Test
npm run test
Build
npm run build