Tool for publishing Sphinx generated documents to Confluence
Project description
Confluence Publisher
Set of tools to help publish documentation to Confluence. It includes:
conf_publisher
conf_page_maker
conf_page_dumper
This tools use own configuration file.
For now it supports:
confluence versions: 5.5 - 5.9
sphinx-build formats: “fjson”, “html”
Why?
This tools are written as part of our Documentation Toolkit which we use in our job daily. The main idea of toolkit is to make a process of creating and updating documentation able to be automated
Other parts of our toolkit is:
Install
Install Confluence Publisher from PyPI with
$ pip install confluence-publisher
Publisher
$ conf_publisher config.yml --auth XXXXXjpwYXNzdXXXXX==
If a config doesn’t contain page.id, you can use conf_page_maker command to create a page and page ID will be put into config automatically.
usage: conf_publisher [-h] [-u URL] [-a AUTH] [-F] [-w WATERMARK] [-l LINK]
[-ht] [-v]
config
Publish documentation (Sphinx fjson) to Confluence
positional arguments:
config Configuration file
optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Confluence Url
-a AUTH, --auth AUTH Base64 encoded user:password string
-F, --force Publish not changed page.
-w WATERMARK, --watermark WATERMARK
Overrides the watermarks. Also can be "False" to
remove all watermarks; or "True" to add watermarkswith
default text: "Automatically generated content. Do not
edit directly." on all pages.
-l LINK, --link LINK Overrides page link. If value is "False" then removes
the link.
-ht, --hold-titles Do not change page titles while publishing.
-v, --verbose
Page Maker
$ conf_page_maker config.yml --auth XXXXXjpwYXNzdXXXXX== --parent-id 52332132
usage: conf_page_maker [-h] [-u URL] [-a AUTH] [-pid PARENT_ID] [-v] config
Create Confluence pages and update configuration file with it ids
positional arguments:
config Configuration file
optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Confluence Url
-a AUTH, --auth AUTH Base64 encoded user:password string. Required.
-pid PARENT_ID, --parent-id PARENT_ID
Parent page ID in confluence.
-v, --verbose
Page dumper
usage: conf_page_dumper [-h] [-u URL] [-a AUTH] [-o OUTPUT] page_id
Dumps Confluence page in storage format
positional arguments:
page_id Configuration file
optional arguments:
-h, --help show this help message and exit
-u URL, --url URL Confluence Url
-a AUTH, --auth AUTH Base64 encoded user:password string
-o OUTPUT, --output OUTPUT
Output file|stdout|stderr
Configuration file format
Directives:
version (required) Config version. Current is 2.
url (required) Base Confluence URL.
base_dir (required) Directory containing json to be published.
downloads_dir (optional) Default is _downloads
images_dir (optional) Default is _images
source_ext (optional) Default is .fjson
pages (required) Pages to be published.
id (required) Confluence page ID. If page does not exists, create it with conf_page_maker.
title (optional)
source (required) Path to json associated with the page
link (optional) Link under watermark (for example to source rst in repo).
watermark (optional) Watermark to put on page. E.g.: “Automatically generated content. Do not edit directly””.
attachments (optional) Files to be attached.
images
path_to_img1
path_to_img2
downloads
path_to_file1
path_to_file2
pages Subpages to be published.
… same structure as for pages
Config example
version: 2
url: https://confluence.atlassian.com
base_dir: docs/build/json
pages:
- attachments:
downloads:
- check_required_keywords.sh
id: 49807825
source: part_1/newcomers
watermark: <b>Automatic Publish</b>
link: https://github.com/pet-project/doc.rst
- id: 49807842
pages:
- id: 49807843
source: part_1/development/start
- id: 49807844
source: part_1/development/structure
- id: 49807845
source: part_1/development/documentation
- id: 49807846
source: part_1/development/logs
source: part_1/development/index
- attachments:
downloads:
- release.sh
id: 49807847
source: part_1/release
- id: 49807848
source: part_1/deployment
- id: 49807849
source: part_1/tools
- id: 49807850
source: part_1/plans
- attachments:
images:
- 38-aval_1.jpg
- 38-aval_2.jpg
id: 49807851
source: part_2/availability
or more JSONify style:
{
version: 2,
base_dir: "result",
pages: [
{
id: 52136662,
source: "release_history"
}
]
}
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distributions
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file confluence_publisher-1.2.1-py2.py3-none-any.whl.
File metadata
- Download URL: confluence_publisher-1.2.1-py2.py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 2, Python 3
- Uploaded using Trusted Publishing? No
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5978721c7f25b86c7beff69ba18b6de2c1cb292bd3441cbd9becd955412b1915
|
|
| MD5 |
71160e56d09d11279456161fc8ffbdaf
|
|
| BLAKE2b-256 |
eb46dfac97e381d9c96fdfa378b823850e35c24386761517102db9ae1a491bbf
|