Skip to content
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

✨Source BambooHR - Migrate Python CDK to Low-code CDK #37452

Merged
merged 35 commits into from
Jun 3, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
35 commits
Select commit Hold shift + click to select a range
d42bb9e
migrate to lowcode
topefolorunso Mar 18, 2024
06e38ea
implement dynamic schema
topefolorunso Mar 25, 2024
5c75e16
update doc
topefolorunso Mar 25, 2024
ad6da6a
Merge branch 'master' of https://github.com/airbytehq/airbyte into mi…
topefolorunso Mar 25, 2024
0655ebc
Merge branch 'master' of https://github.com/airbytehq/airbyte into mi…
topefolorunso Mar 26, 2024
e338a8a
use poetry
topefolorunso Mar 26, 2024
9b671be
fix manifest
topefolorunso Apr 20, 2024
1ae1390
fixes
topefolorunso Apr 20, 2024
515708c
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso Apr 20, 2024
c3a338d
format, fix metadata
topefolorunso Apr 20, 2024
d60d839
Apply suggestions from code review
topefolorunso Apr 20, 2024
96e0699
fix metadata
topefolorunso Apr 20, 2024
0cb1d6f
fix metadata
topefolorunso Apr 20, 2024
d874f6d
fix poetry.lock
topefolorunso Apr 20, 2024
216a842
fix test config
topefolorunso Apr 21, 2024
ee63906
fix schema
topefolorunso Apr 21, 2024
d2ec18a
fix custom schema
topefolorunso Apr 21, 2024
09d783a
fix schema
topefolorunso Apr 21, 2024
3d9c1bb
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso Apr 21, 2024
53e5df9
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso May 2, 2024
a11b42e
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso May 2, 2024
86a1101
update poetry
topefolorunso May 2, 2024
e0f49d3
fixes
topefolorunso May 2, 2024
b5e47cd
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso May 2, 2024
643f3de
Merge branch 'master' of https://github.com/airbytehq/airbyte into to…
topefolorunso May 10, 2024
9cd954d
Merge branch 'master' into tope/migrate_bamboohr_lowcode
lazebnyi May 13, 2024
4cac079
Merge branch 'master' into tope/migrate_bamboohr_lowcode
girarda May 22, 2024
10d71cf
Update airbyte-integrations/connectors/source-bamboo-hr/README.md
girarda May 22, 2024
077ac5a
Small formating updates
lazebnyi May 22, 2024
3154ff3
Added extra speces at the end of files
lazebnyi May 22, 2024
e92678e
Deleted unnecessary TODOs
lazebnyi May 22, 2024
6971a56
Pin CDK to ^1
lazebnyi May 22, 2024
371cc12
Merge branch 'master' into tope/migrate_bamboohr_lowcode
lazebnyi May 23, 2024
75f8729
Bump CDK version
lazebnyi May 24, 2024
359ebfc
Merge branch 'tope/migrate_bamboohr_lowcode' of github.com:airbytehq/…
lazebnyi May 24, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

This file was deleted.

20 changes: 12 additions & 8 deletions airbyte-integrations/connectors/source-bamboo-hr/README.md
Original file line number Diff line number Diff line change
@@ -1,12 +1,16 @@
# Bamboo-Hr source connector
# Bamboo Hr Source

This is the repository for the Bamboo-Hr source connector, written in Python.
This is the repository for the Bamboo HR source connector.
For information about how to use this connector within Airbyte, see [the documentation](https://docs.airbyte.com/integrations/sources/bamboo-hr).

## Local development

### Prerequisites

* Python (`^3.9`)
* Poetry (`^1.7`) - installation instructions [here](https://python-poetry.org/docs/#installation)


- Python (~=3.9)
- Poetry (~=1.7) - installation instructions [here](https://python-poetry.org/docs/#installation)

Expand All @@ -21,7 +25,7 @@ poetry install --with dev
### Create credentials

**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/sources/bamboo-hr)
to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `source_bamboo_hr/spec.yaml` file.
to generate the necessary credentials. Then create a file `secrets/config.json` conforming to the `src/source_bamboo_hr/spec.yaml` file.
Note that any directory named `secrets` is gitignored across the entire Airbyte repo, so there is no danger of accidentally checking in sensitive information.
See `sample_files/sample_config.json` for a sample config file.

Expand All @@ -34,12 +38,12 @@ poetry run source-bamboo-hr discover --config secrets/config.json
poetry run source-bamboo-hr read --config secrets/config.json --catalog sample_files/configured_catalog.json
```

### Running unit tests
### Running tests

To run unit tests locally, from the connector directory run:
To run tests locally, from the connector directory run:

```
poetry run pytest unit_tests
poetry run pytest tests
```

### Building the docker image
Expand Down Expand Up @@ -79,7 +83,7 @@ If your connector requires to create or destroy resources for use during accepta

### Dependency Management

All of your dependencies should be managed via Poetry.
All of your dependencies should be managed via Poetry.
To add a new dependency, run:

```bash
Expand All @@ -94,7 +98,7 @@ You've checked out the repo, implemented a million dollar feature, and you're re

1. Make sure your changes are passing our test suite: `airbyte-ci connectors --name=source-bamboo-hr test`
2. Bump the connector version (please follow [semantic versioning for connectors](https://docs.airbyte.com/contributing-to-airbyte/resources/pull-requests-handbook/#semantic-versioning-for-connectors)):
- bump the `dockerImageTag` value in in `metadata.yaml`
- bump the `dockerImageTag` value in `metadata.yaml`
- bump the `version` value in `pyproject.toml`
3. Make sure the `metadata.yaml` content is up to date.
4. Make sure the connector documentation and its changelog is up to date (`docs/integrations/sources/bamboo-hr.md`).
Expand Down
3 changes: 3 additions & 0 deletions airbyte-integrations/connectors/source-bamboo-hr/__init__.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#
# Copyright (c) 2023 Airbyte, Inc., all rights reserved.
#
Original file line number Diff line number Diff line change
@@ -1,22 +1,41 @@
# See [Connector Acceptance Tests](https://docs.airbyte.com/connector-development/testing-connectors/connector-acceptance-tests-reference)
# for more information about how to configure these tests
connector_image: airbyte/source-bamboo-hr:dev
tests:
acceptance_tests:
spec:
- spec_path: "source_bamboo_hr/spec.json"
tests:
- spec_path: "source_bamboo_hr/spec.yaml"
connection:
- config_path: "secrets/config.json"
status: "succeed"
- config_path: "integration_tests/invalid_config.json"
status: "failed"
tests:
- config_path: "secrets/config.json"
status: "succeed"
- config_path: "integration_tests/invalid_config.json"
status: "failed"
discovery:
- config_path: "secrets/config.json"
backward_compatibility_tests_config:
disable_for_version: "0.2.0"
tests:
- config_path: "secrets/config.json"
backward_compatibility_tests_config:
disable_for_version: "0.2.0"
basic_read:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"
empty_streams: []
tests:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"
empty_streams: []
# TODO uncomment this block to specify that the tests should assert the connector outputs the records provided in the input file a file
# expect_records:
# path: "integration_tests/expected_records.jsonl"
# extra_fields: no
# exact_order: no
# extra_records: yes
incremental:
bypass_reason: "This connector does not implement incremental sync"
# TODO uncomment this block this block if your connector implements incremental sync:
# tests:
# - config_path: "secrets/config.json"
# configured_catalog_path: "integration_tests/configured_catalog.json"
# future_state:
# future_state_path: "integration_tests/abnormal_state.json"
full_refresh:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"
tests:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
#
# Copyright (c) 2023 Airbyte, Inc., all rights reserved.
#
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"todo-stream-name": {
"todo-field-name": "todo-abnormal-value"
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
{
"api_key": "awesome-api-key",
"subdomain": "my-company"
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,5 @@
{
"todo-stream-name": {
"todo-field-name": "value"
}
}
Original file line number Diff line number Diff line change
@@ -1,4 +1,7 @@
data:
allowedHosts:
hosts:
- api.bamboohr.com
ab_internal:
ql: 200
sl: 100
Expand All @@ -7,12 +10,13 @@ data:
connectorSubtype: api
connectorType: source
definitionId: 90916976-a132-4ce9-8bce-82a03dd58788
dockerImageTag: 0.2.6
dockerImageTag: 0.3.0
dockerRepository: airbyte/source-bamboo-hr
documentationUrl: https://docs.airbyte.com/integrations/sources/bamboo-hr
githubIssueLabel: source-bamboo-hr
icon: bamboohr.svg
license: MIT
releaseDate: 2021-08-27
name: BambooHR
registries:
cloud:
Expand All @@ -27,7 +31,7 @@ data:
supportLevel: community
tags:
- language:python
- cdk:python
- cdk:low-code
connectorTestSuitesOptions:
- suite: unitTests
- suite: acceptanceTests
Expand Down
Loading
Loading