You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
I used homebrew for installing these prerequisites on macOS.
17
+
18
+
### Unit Tests
19
+
20
+
The unit tests for that code are in `/destination-glide/unit_tests`. To run them run:
21
+
22
+
```sh
23
+
./scripts/test-unit.sh
24
+
```
25
+
26
+
### Integration Tests
27
+
28
+
The destination has a configuration in `/secrets/config.json`. That file must confirm to the configuration specification in `/destination_glide/spec.json`. It should be something like:
29
+
30
+
```json
31
+
{
32
+
"api_host": "http://localhost:5005",
33
+
"api_path_root": "api",
34
+
"api_key": "decafbad-1234-1234-1234-decafbad"
35
+
}
36
+
```
37
+
38
+
The spec also specifies the configuration UI within the Airbyte product itself for configuring the destination.
39
+
40
+
There are a set of simple integration tests that Airbyte provides that can be triggered with the following scripts:
41
+
42
+
```sh
43
+
./scripts/dev-check.sh
44
+
./scripts/dev-spec.sh
45
+
./scripts/dev-write.sh
46
+
```
47
+
48
+
These simply call commands that Airbyte provides in their connector template. The dev-write one appears to be the most comprehensive, but I've struggled to get that one to consistently run (see TODO).
49
+
50
+
### Build & Deployment
51
+
52
+
The Airbyte destination is packed as Docker image. This script uses Airbyte-provided tooling named `airbyte-ci` that leverages the same tooling they use in their CI pipeline to build the container.
53
+
54
+
To install the tooling see [`airbyte-ci` README in this repo](https://github.com/airbytehq/airbyte/blob/master/airbyte-ci/connectors/pipelines/README.md) This worked for me other than to make it work on macOS with homebrew-provided python, I don't have `python` on my path only `python3` so I had to change that in a couple places in the `Makefile` in the root of this repo.
12
55
56
+
```sh
57
+
./scripts/build-docker-image.sh
58
+
```
59
+
60
+
We are currently deploying this to a public repository for ease of access from an Airbyte OSS instance. To deploy it to a docker container registry use the script at:
61
+
62
+
```sh
63
+
./scripts/push-docker-image.sh
64
+
```
65
+
66
+
### Running in Airbyte OSS Locally
67
+
68
+
To install Airbyte follow the guide at https://docs.airbyte.com/deploying-airbyte/quickstart. On macOS this uses homebrew to install k8s kind locally and get an airbyte cluster running. It took a while but worked smoothly for me. I am currently using `airbytehq/tap/abctl (0.5.0)`.
69
+
70
+
Once install it should be available at http://localhost:8000/. You should have been prompted for username/pw during install.
71
+
72
+
### Installing Glide Destination in Airbyte OSS
73
+
74
+
To install the destination into Airbyte OSS follow these steps:
13
75
76
+
1. Click on **Settings** on the far left then select **Destinations** in the sub-panel. You should see a list of **Available destination connectors**.
77
+
2. At the top click the **+ New Connector** button fill in the fields. The **Docker repository name** and **Docker image tag** are the important bits.
78
+
79
+
Once installed, you can upgrade it to a new version by visiting the same settings page and changing the tag in the **Change to** box and clicking the **Change** button.
80
+
81
+
---
82
+
83
+
## Old (from Airbyte's Template)
14
84
15
85
### Installing the connector
16
86
17
87
From this connector directory, run:
88
+
18
89
```bash
19
90
poetry install --with dev
20
91
```
21
92
22
-
23
93
#### Create credentials
24
94
25
95
**If you are a community contributor**, follow the instructions in the [documentation](https://docs.airbyte.com/integrations/destinations/glide)
@@ -31,6 +101,7 @@ See `integration_tests/sample_config.json` for a sample config file.
31
101
and place them into `secrets/config.json`.
32
102
33
103
### Locally running the connector
104
+
34
105
```
35
106
poetry run destination-glide spec
36
107
poetry run destination-glide check --config secrets/config.json
@@ -58,6 +130,7 @@ An image will be available on your host with the tag `airbyte/destination-glide:
58
130
### Running as a docker container
59
131
60
132
Then run any of the connector commands as follows:
133
+
61
134
```
62
135
docker run --rm airbyte/destination-glide:dev spec
63
136
docker run --rm -v $(pwd)/secrets:/secrets airbyte/destination-glide:dev check --config /secrets/config.json
@@ -91,10 +164,11 @@ Please commit the changes to `pyproject.toml` and `poetry.lock` files.
91
164
## Publishing a new version of the connector
92
165
93
166
You've checked out the repo, implemented a million dollar feature, and you're ready to share your changes with the world. Now what?
167
+
94
168
1. Make sure your changes are passing our test suite: `airbyte-ci connectors --name=destination-glide test`
95
169
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)):
96
-
- bump the `dockerImageTag` value in in `metadata.yaml`
97
-
- bump the `version` value in `pyproject.toml`
170
+
- bump the `dockerImageTag` value in in `metadata.yaml`
171
+
- bump the `version` value in `pyproject.toml`
98
172
3. Make sure the `metadata.yaml` content is up to date.
99
173
4. Make sure the connector documentation and its changelog is up to date (`docs/integrations/destinations/glide.md`).
100
174
5. Create a Pull Request: use [our PR naming conventions](https://docs.airbyte.com/contributing-to-airbyte/resources/pull-requests-handbook/#pull-request-title-convention).
0 commit comments