-
Notifications
You must be signed in to change notification settings - Fork 0
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add ADaaS documentation. #64
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I didn't mark every instance, but capitalization of titles and common nouns needs to be fixed throughout. Just because something is in the terminology list or is abbreviated doesn't mean it should be capitalized.
fern/versions/public.yml
Outdated
@@ -143,6 +143,42 @@ navigation: | |||
- page: Developer keyrings | |||
slug: developer-keyring | |||
path: ../docs/pages/references/keyrings/developer_keyring.mdx | |||
- section: ADaaS |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is really deeply nested. Is it the right place?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can we move it one level up? @shashankcube ?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have moved it up one level.
A Worker has the responsibility of maintaining its own state that persists between phases in a Sync Run, | ||
as well as between Sync Runs. | ||
|
||
```mermaid |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fern does not support Mermaid diagrams. You can go to mermaid.live and export a PNG for inclusion.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Can Fern render SVGs?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I believe so.
Keyrings are a DevRev-specific mechanism for managing authentication for External Systems. | ||
They are called Connections in the DevRev app. | ||
|
||
They provide a secure way to store and manage credentials within your DevRev Snap-In. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
They provide a secure way to store and manage credentials within your DevRev Snap-In. | |
They provide a secure way to store and manage credentials within your DevRev snap-In. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Are snap-ins always lowercase? Since it is a sort of a brand name for DevRev?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have modified cases for snap-ins.
@@ -0,0 +1,39 @@ | |||
# Attachment Extraction phase | |||
|
|||
For the Attachment Extraction phase of the import process, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the Attachment Extraction phase of the import process, | |
For the attachment extraction phase of the import process, |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
We had a lengthy discussion regarding capitalizing terms and well, the Airdrop team argues, that capitalizing names of processes, domain objects, ... and other domain entities would make the documentation more clear.
Can we cross-link everything with the Terminology section?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I have removed the Terminology section.
gw -->> user: Import deleted | ||
``` | ||
|
||
An Initial Import consists of the following phases: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
An Initial Import consists of the following phases: | |
An initial import consists of the following phases: |
|
||
## Forward Sync | ||
|
||
A Forward Sync is a sync from an [External System](#external-system) to DevRev. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
A Forward Sync is a sync from an [External System](#external-system) to DevRev. | |
A forward sync is a sync from an [external system](#external-system) to DevRev. |
Move the documentation one level up. Co-authored-by: Ben Colborn <[email protected]>
Use hyphens instead of underscores in directory names. Co-authored-by: Ben Colborn <[email protected]>
Co-authored-by: Ben Colborn <[email protected]>
Co-authored-by: Ben Colborn <[email protected]>
Co-authored-by: Ben Colborn <[email protected]>
Co-authored-by: Ben Colborn <[email protected]>
Published docs preview URL: https://devrev-preview-35c29569-add1-473b-9cd5-10f26624d760.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-4c9e6766-cade-450d-a2ef-b88169b4c07e.docs.buildwithfern.com |
Dear @bc-devrev , @erazemk , also @radovan-jorgic. I have managed to come through all the suggestions and comments, and also updated and edited the metadata chapter. Could you please re-review? |
And also, how can I generate a preview? |
|
||
### Triggering event | ||
|
||
Airdrop initiates the attachments delete phase when the Sync is deleted from DevRev. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Didn't know this. Attachments deletion starts when import is deleted (and not visible through the UI)? Or should we say when data (and metadata) is deleted instead of when Sync is deleted.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
FIxed.
|
||
Once the Attachment Extraction phase is done, the snap-in must respond to Airdrop with a message with eventType `EXTRACTION_ATTACHMENTS_DONE`. | ||
|
||
If Attachment Extraction failed, the snap-in must respond to Airdrop with a message with eventType `EXTRACTION_ATTACHMENTS_ERROR`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Just curious if there is agreement regarding usage of word "eventType". Should we use "human language"? Something like "with event of type `EVENT_TYPE``?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Perfect.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I meant "event of type EXTRACTION_ATTACHMENTS_DONE
" and not "event of type EVENT_TYPE
EXTRACTION_ATTACHMENTS_DONE
".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
So replace all "event of type EVENT_TYPE
" with just "event of type" now.
|
||
Once the data extraction is done, the snap-in must respond to Airdrop with a message with eventType `EXTRACTION_DATA_DONE`. | ||
|
||
If data extraction failed in any moment of extraction, the snap-in must respond to Airdrop with a message with eventType `EXTRACTION_DATA_ERROR`. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not tested but I believe we save the latest successful state and retrieve it in next iteration if import failed and we retried it? If this is true, maybe we can write it down also - can be really helpful?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I do not understand what you mean. Please, explain.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If import fails, the latest state (before we emitted error) should be sent to snap-in in next iteration if retry (re-run) button is cliked on the UI. This is not mentioned anywhere.
Published docs preview URL: https://devrev-preview-adeb82ec-fa7b-4089-a997-c852d90aa618.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-b33a5c51-6cf8-4391-9224-5d2c96890c81.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-aa13bfee-9acd-4986-86be-bca6d8f41f13.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-58fc78a6-43de-4b06-990a-131394a40eb6.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-a2d1ac73-6764-44e5-951f-94758bf9b97a.docs.buildwithfern.com |
fern/docs/pages/adaas/overview.mdx
Outdated
_Airdrop_ is DevRev’s solution to migrate data. It allows our customers to bring in their existing data from | ||
load data from external systems and, export data back to external systems, and keep data in sync between DevRev and the external systems. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Very weird sentence, especially this part: It allows our customers to bring in their existing data from load data from external systems and
2. Install required tools and packages: | ||
- [devrev-cli](https://developer.devrev.ai/snapin-development/references/cli-install) (version 4.7 or higher) | ||
- [jq](https://stedolan.github.io/jq) | ||
- [golang](https://go.dev/doc/install) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
What is Go needed for?
3. Create a new repo from the ADaaS template repo: | ||
On [https://github.com/devrev/adaas-template](https://github.com/devrev/adaas-template) use the dropdown button `Use this template` and | ||
then `Create a new repository` | ||
4. Copy `Makefile.variable.example` to `Makefile.variable` and fill in the required variables. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
This is not really a problem with the documentation, but I still don't understand why we can't use the standard .env
and .env.example
, everybody knows and uses those but us.
Each sync run is comprised out of phases. Phases follow sequentially, and each can consist of one or more invocations | ||
of the snap-in. | ||
|
||
![ADaaS extraction phases](../../img/adaas/adaas-extraction-phases.svg) |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
@bc-devrev Is there a way we can dynamically adapt the color scheme of the diagrams, e.g. providing separate diagrams for light and dark mode? Mermaid supports such changes, so if there is no way to do it currently, can we at least push Fern to implement Mermaid markdown support, since we already pay them a lot for their platform?
In the external sync unit extraction phase, the extractor is expected to obtain a list of external sync units. | ||
that it can extract with the provided credentials and send it to Airdrop in its response. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
In the external sync unit extraction phase, the extractor is expected to obtain a list of external sync units. | |
that it can extract with the provided credentials and send it to Airdrop in its response. | |
In the external sync unit extraction phase the extractor is expected to obtain a list of external sync units | |
that it can extract with the provided credentials, and send them to Airdrop in its response. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thx. I am keeping "it" since it is a list we are sending.
During the delete phases, the snap-in may clean up its state or other side effects in the third party systems. | ||
In the most common extraction use cases, there is nothing to do and snap-ins may reply with the completion message. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
During the delete phases, the snap-in may clean up its state or other side effects in the third party systems. | |
In the most common extraction use cases, there is nothing to do and snap-ins may reply with the completion message. | |
During the deletion phases, the snap-in may clean up its state or other side effects in the third party systems. | |
In the most common extraction use cases, there is nothing to do and snap-ins may reply with the completion message. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Fixed.
Co-authored-by: Erazem Kokot <[email protected]>
Published docs preview URL: https://devrev-preview-b4b11e74-2540-48db-89a2-e97649334899.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-c7b460fa-44b2-4ea6-888b-8eadac792a72.docs.buildwithfern.com |
Published docs preview URL: https://devrev-preview-3e07f908-6dc3-49df-a00f-bf26c9962e2b.docs.buildwithfern.com |
This PR provides ADaaS public documentation for 2P/3P developers.
app.devrev.ai/devrev/works/ISS-100391