This repository contains Airbyte connectors used in Faros and Faros Community Edition platforms as well as Airbyte Connector Development Kit (CDK) for JavaScript/TypeScript.
See the READMEs inside destinations/ and sources/ subfolders for more information on each connector.
| Component | Code | Installation | Version |
|---|---|---|---|
| Airbyte CDK | faros-airbyte-cdk | npm i faros-airbyte-cdk |
|
| Azure Active Directory Source | sources/azureactivedirectory-source | docker pull farosai/airbyte-azureactivedirectory-source |
|
| Azure Pipeline Source | sources/azurepipeline-source | docker pull farosai/airbyte-azurepipeline-source |
|
| Backlog Source | sources/backlog-source | docker pull farosai/airbyte-backlog-source |
|
| Bitbucket Source | sources/bitbucket-source | docker pull farosai/airbyte-bitbucket-source |
|
| Buildkite Source | sources/buildkite-source | docker pull farosai/airbyte-buildkite-source |
|
| Customer.IO Source | sources/customer-io-source | docker pull farosai/airbyte-customer-io-source |
|
| Datadog Source | sources/datadog-source | docker pull farosai/airbyte-datadog-source |
|
| Docker Source | sources/docker-source | docker pull farosai/airbyte-docker-source |
|
| Faros Destination | destinations/airbyte-faros-destination | npm i airbyte-faros-destination or docker pull farosai/airbyte-faros-destination |
|
| FireHydrant Source | sources/firehydrant-source | docker pull farosai/airbyte-firehydrant-source |
|
| Google Calendar Source | sources/googlecalendar-source | docker pull farosai/airbyte-googlecalendar-source |
|
| Harness Source | sources/harness-source | docker pull farosai/airbyte-harness-source |
|
| Jenkins Source | sources/jenkins-source | docker pull farosai/airbyte-jenkins-source |
|
| Okta Source | sources/okta-source | docker pull farosai/airbyte-okta-source |
|
| OpsGenie Source | sources/opsgenie-source | docker pull farosai/airbyte-opsgenie-source |
|
| PagerDuty Source | sources/pagerduty-source | docker pull farosai/airbyte-pagerduty-source |
|
| Phabricator Source | sources/phabricator-source | docker pull farosai/airbyte-phabricator-source |
|
| ServiceNow Source | sources/servicenow-source | docker pull farosai/airbyte-servicenow-source |
|
| Shortcut Source | sources/shortcut-source | docker pull farosai/airbyte-shortcut-source |
|
| SquadCast Source | sources/squadcast-source | docker pull farosai/airbyte-squadcast-source |
|
| StatusPage Source | sources/statuspage-source | docker pull farosai/airbyte-statuspage-source |
|
| VictorOps Source | sources/victorops-source | docker pull farosai/airbyte-victorops-source |
- Install
nvm - Install Node.js
nvm install 14 && nvm use 14 - Update
npmto version 7.x by runningnpm install -g npm@7 - Install
lernaby runningnpm install -g lerna - Run
npm run prepareto install dependencies for all projects (npm run cleanto clean all) - Run
npm run buildto build all projects (for a single project add scope, e.gnpm run build -- --scope airbyte-faros-destination) - Run
npm run testto test all projects (for a single project add scope, e.gnpm run test -- --scope airbyte-faros-destination) - Run
npm run lintto apply linter on all projects (for a single project add scope, e.gnpm run lint -- --scope airbyte-faros-destination)
👉 Follow our guide on how to develop a new source here.
- Audit fix
npm audit fix - Clean your project
lerna run clean(sometimes you also wannarm -rf ./node_modules)
Read more about lerna here.
In order to build a Docker image for a connector run the docker build command and set path argument.
For example for Faros Destination connector run:
docker build . --build-arg path=destinations/airbyte-faros-destination -t airbyte-faros-destinationAnd then run it:
docker run airbyte-faros-destinationWe use GitHub Actions to automatically create a corresponding tag, publish the packages to NPM and push Docker images to Docker Hub.
- Run
npm run bumpfrom the root of the repository. You will be prompted with a list of version increments to choose from (patch, minor, major, etc). Choose the desired increment. - Commit and push the changed files into a branch, then open a PR into the main branch.
- Once the PR is approved and merged, the release workflow is triggered.
Note: If a connector is updated without incrementing the version, the release workflow will NOT overwrite the existing package/image.