Skip to content

Airbyte connectors (sources & destinations) + Airbyte CDK for JavaScript/TypeScript

License

Notifications You must be signed in to change notification settings

prakashcc/airbyte-connectors

 
 

Repository files navigation

Airbyte Connectors

CI Release CodeQL

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 npm package
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
Azure Repos Source sources/azure-repos-source docker pull farosai/airbyte-azure-repos-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 npm package
FireHydrant Source sources/firehydrant-source docker pull farosai/airbyte-firehydrant-source
Gitlab CI Source sources/gitlab-ci-source docker pull farosai/airbyte-gitlab-ci-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

Development

  1. Install nvm
  2. Install Node.js nvm install 14 && nvm use 14
  3. Update npm to version 7.x by running npm install -g npm@7
  4. Install lerna by running npm install -g lerna
  5. Run npm run prepare to install dependencies for all projects (npm run clean to clean all)
  6. Run npm run build to build all projects (for a single project add scope, e.g npm run build -- --scope airbyte-faros-destination)
  7. Run npm run test to test all projects (for a single project add scope, e.g npm run test -- --scope airbyte-faros-destination)
  8. Run npm run lint to apply linter on all projects (for a single project add scope, e.g npm run lint -- --scope airbyte-faros-destination)

👉 Follow our guide on how to develop a new source here.

Other Useful Commands

  1. Audit fix npm audit fix
  2. Clean your project lerna run clean (sometimes you also wanna rm -rf ./node_modules)

Read more about lerna here.

Build Docker Images

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-destination

And then run it:

docker run airbyte-faros-destination

Releasing

We use GitHub Actions to automatically create a corresponding tag, publish the packages to NPM and push Docker images to Docker Hub.

  1. Run npm run bump from 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.
  2. Commit and push the changed files into a branch, then open a PR into the main branch.
  3. 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.

About

Airbyte connectors (sources & destinations) + Airbyte CDK for JavaScript/TypeScript

Resources

License

Code of conduct

Stars

Watchers

Forks

Packages

No packages published

Languages

  • TypeScript 99.2%
  • Other 0.8%