Skip to content

Commit

Permalink
🎉 fix Google Adwords CI & publish new version (#4205)
Browse files Browse the repository at this point in the history
* added SAT tests, deleted incremental test sfrom pipeline

* pr changes and tests uncommented

* deleted facebook file from pr

* deleted facebook file from pr

* removed tap adwords from install_requires

* Update airbyte-integrations/connectors/source-google-adwords-singer/acceptance-test-config.yml

* added changelog info

* version bump

* version bump

Co-authored-by: Eugene Kulak <widowmakerreborn@gmail.com>
  • Loading branch information
po3na4skld and keu authored Jun 25, 2021
1 parent ea97502 commit 40aed22
Show file tree
Hide file tree
Showing 10 changed files with 81 additions and 31 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
"sourceDefinitionId": "fdc8b827-3257-4b33-83cc-106d234c34d4",
"name": "Google Adwords (Deprecated)",
"dockerRepository": "airbyte/source-google-adwords-singer",
"dockerImageTag": "0.2.3",
"dockerImageTag": "0.2.5",
"documentationUrl": "https://hub.docker.com/r/airbyte/source-google-adwords-singer",
"icon": "google-adwords.svg"
}
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@
- sourceDefinitionId: fdc8b827-3257-4b33-83cc-106d234c34d4
name: Google Adwords (Deprecated)
dockerRepository: airbyte/source-google-adwords-singer
dockerImageTag: 0.2.3
dockerImageTag: 0.2.5
documentationUrl: https://hub.docker.com/r/airbyte/source-google-adwords-singer
icon: google-adwords.svg
- sourceDefinitionId: ef69ef6e-aa7f-4af1-a01d-ef775033524e
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,5 +12,5 @@ COPY setup.py ./
RUN pip install tap-adwords==1.12.0
RUN pip install .

LABEL io.airbyte.version=0.2.3
LABEL io.airbyte.version=0.2.5
LABEL io.airbyte.name=airbyte/source-google-adwords-singer
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
connector_image: airbyte/source-google-adwords-singer:dev
tests:
spec:
- spec_path: "source_google_adwords_singer/spec.json"
connection:
- config_path: "secrets/config.json"
status: "succeed"
- config_path: "integration_tests/invalid_config.json"
status: "failed"
discovery:
- config_path: "secrets/config.json"
basic_read:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"
validate_output_from_all_streams: yes
full_refresh:
- config_path: "secrets/config.json"
configured_catalog_path: "integration_tests/configured_catalog.json"

# incremental tests are disabled due to unsupported state structure in current tests
# required structure: {stream_name: cursor_value} given {‘bookmarks’: {stream_name: cursor_value}}
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@ plugins {
id 'java'
id 'airbyte-python'
id 'airbyte-docker'
id 'airbyte-standard-source-test-file'
id 'airbyte-source-acceptance-test'
}

airbytePython {
Expand All @@ -11,20 +11,6 @@ airbytePython {


dependencies {
implementation files(project(':airbyte-integrations:bases:base-standard-source-test-file').airbyteDocker.outputs)
implementation files(project(':airbyte-integrations:bases:source-acceptance-test').airbyteDocker.outputs)
implementation files(project(':airbyte-integrations:bases:base-singer').airbyteDocker.outputs)
}

// used to allow local iteration to work
task('installSingerTap', type: PythonTask) {
module = "pip"
command = "install tap-adwords==1.12.0"
}
installReqs.dependsOn installSingerTap

airbyteStandardSourceTestFile {
// For more information on standard source tests, see https://docs.airbyte.io/contributing-to-airbyte/building-new-connector/testing-connectors
specPath = "source_google_adwords_singer/spec.json"
configPath = "secrets/config.json"
configuredCatalogPath = "sample_files/configured_catalog.json"
}
Empty file.
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
#
# MIT License
#
# Copyright (c) 2020 Airbyte
#
# Permission is hereby granted, free of charge, to any person obtaining a copy
# of this software and associated documentation files (the "Software"), to deal
# in the Software without restriction, including without limitation the rights
# to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
# copies of the Software, and to permit persons to whom the Software is
# furnished to do so, subject to the following conditions:
#
# The above copyright notice and this permission notice shall be included in all
# copies or substantial portions of the Software.
#
# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
# SOFTWARE.
#


import pytest

pytest_plugins = ("source_acceptance_test.plugin",)


@pytest.fixture(scope="session", autouse=True)
def connector_setup():
"""This fixture is a placeholder for external resources that acceptance test might require."""
# TODO: setup test dependencies
yield
# TODO: clean up test dependencies
Original file line number Diff line number Diff line change
Expand Up @@ -167,11 +167,9 @@
}
}
},
"supported_sync_modes": ["full_refresh"],
"source_defined_cursor": false
"supported_sync_modes": ["full_refresh"]
},
"sync_mode": "full_refresh",
"cursor_field": [],
"destination_sync_mode": "overwrite"
},
{
Expand Down Expand Up @@ -321,11 +319,9 @@
}
}
},
"supported_sync_modes": ["full_refresh"],
"source_defined_cursor": false
"supported_sync_modes": ["full_refresh"]
},
"sync_mode": "full_refresh",
"cursor_field": [],
"destination_sync_mode": "overwrite"
},
{
Expand Down Expand Up @@ -402,11 +398,9 @@
}
}
},
"supported_sync_modes": ["full_refresh"],
"source_defined_cursor": false
"supported_sync_modes": ["full_refresh"]
},
"sync_mode": "full_refresh",
"cursor_field": [],
"destination_sync_mode": "overwrite"
},
{
Expand Down Expand Up @@ -435,11 +429,9 @@
},
"type": ["null", "object"]
},
"supported_sync_modes": ["full_refresh"],
"source_defined_cursor": false
"supported_sync_modes": ["full_refresh"]
},
"sync_mode": "full_refresh",
"cursor_field": [],
"destination_sync_mode": "overwrite"
}
]
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
{
"developer_token": "hahaha",
"oauth_client_id": "notvalid.apps.googleusercontent.com",
"oauth_client_secret": "notasecret",
"refresh_token": "1//notarefrshtoken",
"customer_ids": ["0000000000"],
"start_date": "2020-06-01T00:00:00Z",
"user_agent": "unknown"
}
6 changes: 6 additions & 0 deletions docs/integrations/sources/google-adwords.md
Original file line number Diff line number Diff line change
Expand Up @@ -60,3 +60,9 @@ When you apply for a token, you need to mention:

If for any reason the request gets denied, let us know and we will be able to unblock you.


## Changelog

| Version | Date | Pull Request | Subject |
| :------ | :-------- | :----- | :------ |
| 0.1.2 | 2021-06-25 | [4205](https://github.com/airbytehq/airbyte/pull/4205) | Set up CDK SAT tests. Incremental tests are disabled due to unsupported state structure in current tests: required structure: {stream_name: cursor_value} given {‘bookmarks’: {stream_name: cursor_value}} |

0 comments on commit 40aed22

Please sign in to comment.