@mieweb/wikigdrive
Version:
Google Drive to MarkDown synchronization
64 lines (47 loc) • 3 kB
Markdown
# Confluence to Google Docs Conversion Notes
## Goal
Convert Confluence Documents in to Google Documents for the purpose of using WikiGDrive to publish them.
## Delivery
A new github repo with a node.js script specific to this conversion.
## High level Process
* Scan all of the documents in a Confluence Space
* Make google documents in a shared drive (two passes will be required so links between documents can be known as content is added).
* Parent/Child relationship must be intact.
* Import Confluence "Attachments" to Google Drive so they can be referenced.
* For each document
* Import content from Confluence Page into Google Documents
* Heading should be headings
* Paragraphs should be paragraphs
* Images (which are attachments in Confluence) should be embedded in google docs <a id="cukuroni2k4r"></a>
* Macros can be wrapped in {{% curlies %}} and dumped as text
* <strong>Example Block Macro:</strong>
{{% macroname propertyname='value' propertyname='value' %}}
macro body, if exists
{{% /macroname %}}
* <strong>Example Inline Macro:</strong>
{{% macroname propertyname='value' propertyname='value' /%}}
* Tables should be kept tables
* Embedded Video should be converted to an image with a hyperlink
* Formatting is not required to be converted.
## Proposed Instructions
```
confluence2google <path to space> <path to google shared drive>
```
## Links and Possible Approaches
1. Use REST API
a. [Confluence Cloud REST API](https://developer.atlassian.com/cloud/confluence/rest/)
b. [Confluence Server REST API](https://docs.atlassian.com/ConfluenceServer/rest/7.0.3/)
c. [https://confluence.example.com/rest/api/space/DOCS10/content](https://confluence.example.com/rest/api/space/DOCS10/content)
d. Tiny Example Space: [https://confluence.example.com/rest/api/space/TES/content](https://confluence.example.com/rest/api/space/TES/content)
2. Use export file
a. [Confluence Export](https://confluence.atlassian.com/confcloud/import-a-confluence-space-724765531.html) makes a zipped file with [XML Format](https://confluence.atlassian.com/jirakb/xml-format-for-import-export-files-695108230.html)
b. [Example HTML zip file](gdoc:abc)
c. [Example XML zip file](gdoc:abc)
3. Use HTML
a. [Confluence Export](https://confluence.atlassian.com/confcloud/import-a-confluence-space-724765531.html) that makes an HTML file
<a id="ggsym7lvzx37"></a>
## Examples
Simple - [https://confluence.example.com/display/DOCS/Sample](https://confluence.example.com/display/DOCS/Sample)
API Call: [https://confluence.example.com/rest/api/content/789](https://confluence.example.com/rest/api/content/789)
Complex - [https://confluence.example.com/pages/viewpage.action?pageId=789](https://confluence.example.com/pages/viewpage.action?pageId=789)
API Call: [https://confluence.example.com/rest/api/content/789](https://confluence.example.com/rest/api/content/789)