-
Notifications
You must be signed in to change notification settings - Fork 3
Feat: Improve ADaaS documentation #178
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
Merged
Merged
Changes from 1 commit
Commits
Show all changes
30 commits
Select commit
Hold shift + click to select a range
6784670
feat: revamp airdrop docs
patricijabrecko ad88f55
Add missing pages
patricijabrecko f12d500
Update getting started
patricijabrecko 0e73c47
Update overview
patricijabrecko 1b6813e
Fix diagrams in overview
patricijabrecko 3fc1c3f
Add end to overview diagram
patricijabrecko 39d760e
Move some content from overview to how does it work
patricijabrecko 439746c
Update connecting to the external system page
patricijabrecko 7c49abd
Update Getting started
patricijabrecko 1c23f3e
Updates
patricijabrecko 626be24
Update how does it work section
patricijabrecko 06cb02f
musings on state
GasperSenk 9aa52c7
Update publish to marketplace
patricijabrecko b6e64a8
Add first steps of development
patricijabrecko dc4624f
Add first steps of development to navigation
patricijabrecko 9b545f3
Move some things around
patricijabrecko 2d8083a
Snap-in configuration
patricijabrecko fe2cad9
Split data extraction into sections
patricijabrecko f7648c7
Some text fixes
patricijabrecko 316a82e
Add metadata and data extraction
patricijabrecko e8d766a
Shuffle things around
patricijabrecko 2068b7d
Merge branch 'main' into extend-adaas-docs
patricijabrecko ef2f14c
Add information from SDK readme
patricijabrecko 2e7f6a0
Fix metadata-extraction file formatting
patricijabrecko 2720168
Merge branch 'main' into extend-adaas-docs
patricijabrecko 95f4a2c
Minor text changes
patricijabrecko 568b2a3
Fix public.yml
patricijabrecko 1e6cdff
Fix public.yml again
patricijabrecko 7421130
Merge branch 'main' into extend-adaas-docs
radovanjorgic abb979e
Some fixes and add supported object types
patricijabrecko File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
18 changes: 18 additions & 0 deletions
18
fern/docs/pages/airdrop/connecting-to-the-external-system.mdx
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
TODO: Keyring explanation and guide setting up. | ||
|
||
## Keyrings | ||
|
||
_Keyrings_ are a DevRev-specific mechanism for managing authentication to external systems. | ||
They are called **Connections** in the DevRev app. | ||
|
||
Keyrings provide a secure way to store and manage credentials within your DevRev snap-in. | ||
This eliminates the need to expose sensitive information like passwords or access tokens directly | ||
within your code or configuration files, enhancing overall security. | ||
They also provide a valid token by abstracting OAuth token renewal from the end user. | ||
|
||
A keyring is used by a worker to authenticate to the external system in API calls. | ||
They include the key (for example, a PAT or API key), its type, the organization ID for which a | ||
key is valid, and in some cases the organization name. | ||
|
||
Configure a keyring for the external system in the `manifest.yaml`. | ||
Refer to [Keyrings](/snapin-development/references/manifest#developer-keyrings) for instructions. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,7 @@ | ||
## Extracting data from external system | ||
patricijabrecko marked this conversation as resolved.
Outdated
Show resolved
Hide resolved
|
||
|
||
TODO: Explain the order of development steps. | ||
|
||
## Loading data to DevRev | ||
|
||
TODO: Explain the order of development steps. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,35 +1,54 @@ | ||
## Before you begin | ||
|
||
- If you have not created a development organization on DevRev before, create a dedicated | ||
[DevRev organization for development purposes](https://app.devrev.ai/) where you are | ||
publishing your Airdrop snap-in. | ||
- 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) | ||
- [nodejs](https://nodejs.org/en/download/package-manager) (version 18.x.x+ or higher) | ||
|
||
## Setting up the snap-in | ||
|
||
1. Create a new repo from the [Airdrop template repo](https://github.com/devrev/adaas-template). | ||
Select _Use this template_ and then _Create a new repository_. | ||
1. Copy `.env.example` to `.env` and fill in the required variables. | ||
1. Configure a keyring for the external system in the `manifest.yaml`. | ||
Refer to [Keyrings](/snapin-development/references/manifest#developer-keyrings) for instructions. | ||
1. Deploy a draft version of your snap-in to your dev org using `make deploy`. | ||
1. Install the snap-in in your DevRev at **Settings** > **Snap-ins** > **Install snap-in**. | ||
1. Define the connection at **Settings** > **Imports** > **Connections**. | ||
1. Create an import at **Settings** > **Imports** > **Import**. | ||
|
||
## Observability | ||
|
||
- To observe logs from your snap-in in your development environment: | ||
``` | ||
devrev snap_in_package logs | jq | ||
``` | ||
- To open logs in your favorite editor: | ||
``` | ||
devrev snap_in_package logs | code - | ||
``` | ||
## Before You Begin | ||
|
||
patricijabrecko marked this conversation as resolved.
Show resolved
Hide resolved
|
||
If this is your first time setting up an organization within DevRev, you'll need to create a dedicated DevRev organization for developing your new Airdrop snap-in: | ||
|
||
1. Click on your profile picture in the top left corner. | ||
patricijabrecko marked this conversation as resolved.
Show resolved
Hide resolved
|
||
2. Navigate to the **Orgs** section and click on **+**. | ||
3. Fill in the necessary details and click **Create**. | ||
|
||
You will now find your newly created organization under **Orgs**. | ||
|
||
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) | ||
- [nodejs](https://nodejs.org/en/download/package-manager) (version 18.x.x+ or higher) | ||
|
||
## Setting Up the Snap-in | ||
|
||
### Starter Template | ||
|
||
DevRev provides a starter template for Airdrop snap-in development. | ||
|
||
1. Create a new repository from [Airdrop template repository](https://github.com/devrev/adaas-template) by selecting _Use this template_ and then _Create a new repository_. | ||
1. Copy `.env.example` to a new file named `.env` and fill in the required variables. | ||
|
||
### Local Development | ||
|
||
For ease of development, you can run your snap-in locally and receive logs directly in your console. Follow the guide [here](/snapin-development/locally-testing-snap-ins). | ||
|
||
### Publishing the snap-in | ||
|
||
Once you're ready to launch your snap-in in a production environment, follow these steps: | ||
|
||
1. Deploy a draft version of your snap-in to your organization by using `make deploy`. | ||
1. Install the snap-in in your DevRev by going to **Settings** > **Snap-ins** > **Install snap-in**. | ||
1. Set up the connection under **Settings** > **Airdrops** > **Connections**. | ||
1. Create an import at **Settings** > **Airdrops** > **Airdrop**. | ||
|
||
#### Observability | ||
|
||
To observe logs from your snap-in in your development environment: | ||
|
||
``` | ||
devrev snap_in_package logs | jq | ||
``` | ||
|
||
To open logs in your favorite editor: | ||
|
||
``` | ||
devrev snap_in_package logs | code - | ||
``` | ||
|
||
For more information, refer to [Debugging](/snapin-development/debugging). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
TODO: Explain how ADaaS code works by using the template | ||
|
||
TODO: Explain the role of manifest.yaml and where is what | ||
|
||
TODO: Explain how the communication between snap-in and DevRev works (through emitting events). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,3 @@ | ||
When you feel like your snap-in is ready to be used by different organizations, you can publish it to the DevRev marketplace. | ||
|
||
Follow this [guide](/snapin-development/marketplace-listings). |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,5 @@ | ||
You can find snap-in examples for various external systems [here](https://github.com/devrev/adaas-connector-examples). | ||
patricijabrecko marked this conversation as resolved.
Show resolved
Hide resolved
|
||
|
||
Examples include: | ||
|
||
- Asana |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Uh oh!
There was an error while loading. Please reload this page.