From c302af45ff6fb966d71faa574c98b894b1a45bd0 Mon Sep 17 00:00:00 2001 From: Brian Leonard Date: Mon, 11 Apr 2022 20:51:37 -0700 Subject: [PATCH] Upgrade to Python 3.9 (#11763) * Dockerfile to 3.9 * Python version * More python updates * 3.9 on GitHub actions and lint updates * Test out 3.9.11 on GitHub actions * install python with an action * formatting: newline * Also has python code * only check first level for changed modules Previous example (source-google-search-console/credentials) * Test failure: there is no logger.trace --- .github/actions/ci-tests-runner/action.yml | 60 +++++++++---------- .github/workflows/gradle.yml | 8 +-- .github/workflows/publish-cdk-command.yml | 11 ++-- .github/workflows/publish-command.yml | 5 +- .github/workflows/release-airbyte-os.yml | 9 +-- .github/workflows/sonar-scan.yml | 55 ++++++++--------- .github/workflows/test-command.yml | 5 +- .../workflows/test-performance-command.yml | 7 ++- .python-version | 2 +- .readthedocs.yaml | 2 +- airbyte-cdk/python/README.md | 2 +- .../cdk-tutorial-any-percent/cdk-speedrun.md | 2 +- .../0-getting-started.md | 4 +- .../python/docs/tutorials/http_api_source.md | 4 +- airbyte-cdk/python/setup.py | 2 +- .../bases/airbyte-protocol/Dockerfile | 2 +- .../bases/source-acceptance-test/Dockerfile | 2 +- .../destination-python/Dockerfile | 2 +- .../source-python-http-api/Dockerfile | 2 +- .../source-python/Dockerfile | 2 +- .../source-singer/Dockerfile | 2 +- .../destination-amazon-sqs/Dockerfile | 2 +- .../destination-aws-datalake/Dockerfile | 4 +- .../destination-aws-datalake/build.gradle | 5 ++ .../destination-firestore/Dockerfile | 2 +- .../connectors/destination-kvdb/Dockerfile | 2 +- .../destination-rabbitmq/Dockerfile | 2 +- .../Dockerfile | 2 +- .../connectors/source-airtable/Dockerfile | 2 +- .../connectors/source-amazon-ads/Dockerfile | 2 +- .../source-amazon-seller-partner/Dockerfile | 2 +- .../connectors/source-amazon-sqs/Dockerfile | 2 +- .../connectors/source-amplitude/Dockerfile | 2 +- .../source-apify-dataset/Dockerfile | 2 +- .../connectors/source-appsflyer/Dockerfile | 2 +- .../source-appstore-singer/Dockerfile | 2 +- .../connectors/source-asana/Dockerfile | 2 +- .../source-aws-cloudtrail/Dockerfile | 2 +- .../connectors/source-azure-table/Dockerfile | 2 +- .../connectors/source-bamboo-hr/Dockerfile | 2 +- .../connectors/source-bigcommerce/Dockerfile | 2 +- .../connectors/source-bing-ads/Dockerfile | 2 +- .../connectors/source-braintree/Dockerfile | 2 +- .../connectors/source-cart/Dockerfile | 2 +- .../connectors/source-chargebee/Dockerfile | 2 +- .../connectors/source-chargify/Dockerfile | 2 +- .../connectors/source-chartmogul/Dockerfile | 2 +- .../connectors/source-close-com/Dockerfile | 2 +- .../source-commercetools/Dockerfile | 2 +- .../connectors/source-confluence/Dockerfile | 2 +- .../connectors/source-delighted/Dockerfile | 2 +- .../connectors/source-dixa/Dockerfile | 2 +- .../connectors/source-drift/Dockerfile | 2 +- .../source-exchange-rates/Dockerfile | 2 +- .../source-facebook-marketing/Dockerfile | 2 +- .../source-facebook-pages/Dockerfile | 2 +- .../connectors/source-file/Dockerfile | 2 +- .../connectors/source-flexport/Dockerfile | 2 +- .../connectors/source-freshdesk/Dockerfile | 2 +- .../source_freshdesk/utils.py | 2 +- .../connectors/source-freshsales/Dockerfile | 2 +- .../connectors/source-freshservice/Dockerfile | 2 +- .../connectors/source-github/Dockerfile | 2 +- .../connectors/source-gitlab/Dockerfile | 2 +- .../connectors/source-google-ads/Dockerfile | 2 +- .../source-google-analytics-v4/Dockerfile | 2 +- .../source-google-directory/Dockerfile | 2 +- .../source-google-search-console/Dockerfile | 2 +- .../credentials/Dockerfile | 2 +- .../source-google-sheets/Dockerfile | 2 +- .../Dockerfile | 2 +- .../connectors/source-greenhouse/Dockerfile | 2 +- .../connectors/source-harvest/Dockerfile | 2 +- .../connectors/source-hellobaton/Dockerfile | 2 +- .../connectors/source-hubspot/Dockerfile | 2 +- .../connectors/source-instagram/Dockerfile | 2 +- .../connectors/source-intercom/Dockerfile | 2 +- .../connectors/source-iterable/Dockerfile | 2 +- .../connectors/source-jira/Dockerfile | 2 +- .../connectors/source-klaviyo/Dockerfile | 2 +- .../source-kustomer-singer/Dockerfile | 2 +- .../connectors/source-lemlist/Dockerfile | 2 +- .../connectors/source-lever-hiring/Dockerfile | 2 +- .../connectors/source-linkedin-ads/Dockerfile | 2 +- .../connectors/source-linnworks/Dockerfile | 2 +- .../connectors/source-looker/Dockerfile | 2 +- .../connectors/source-mailchimp/Dockerfile | 2 +- .../connectors/source-mailgun/Dockerfile | 2 +- .../connectors/source-marketo/Dockerfile | 2 +- .../source-microsoft-teams/Dockerfile | 2 +- .../connectors/source-mixpanel/Dockerfile | 2 +- .../connectors/source-monday/Dockerfile | 2 +- .../connectors/source-my-hours/Dockerfile | 2 +- .../connectors/source-notion/Dockerfile | 2 +- .../connectors/source-okta/Dockerfile | 2 +- .../connectors/source-onesignal/Dockerfile | 2 +- .../connectors/source-openweather/Dockerfile | 2 +- .../connectors/source-orb/Dockerfile | 2 +- .../connectors/source-outreach/Dockerfile | 2 +- .../connectors/source-pardot/Dockerfile | 2 +- .../source-paypal-transaction/Dockerfile | 2 +- .../connectors/source-paystack/Dockerfile | 2 +- .../connectors/source-persistiq/Dockerfile | 2 +- .../connectors/source-pinterest/Dockerfile | 2 +- .../connectors/source-pipedrive/Dockerfile | 2 +- .../source-pivotal-tracker/Dockerfile | 2 +- .../connectors/source-plaid/Dockerfile | 2 +- .../connectors/source-pokeapi/Dockerfile | 2 +- .../connectors/source-posthog/Dockerfile | 2 +- .../connectors/source-prestashop/Dockerfile | 2 +- .../source-python-http-tutorial/Dockerfile | 2 +- .../connectors/source-qualaroo/Dockerfile | 2 +- .../source-quickbooks-singer/Dockerfile | 2 +- .../connectors/source-recharge/Dockerfile | 2 +- .../connectors/source-recurly/Dockerfile | 2 +- .../connectors/source-retently/Dockerfile | 2 +- .../connectors/source-s3/Dockerfile | 2 +- .../connectors/source-salesforce/Dockerfile | 2 +- .../connectors/source-salesloft/Dockerfile | 2 +- .../source-scaffold-source-http/Dockerfile | 2 +- .../source-scaffold-source-python/Dockerfile | 2 +- .../source-search-metrics/Dockerfile | 2 +- .../connectors/source-sendgrid/Dockerfile | 2 +- .../connectors/source-sentry/Dockerfile | 2 +- .../connectors/source-shopify/Dockerfile | 2 +- .../connectors/source-shortio/Dockerfile | 2 +- .../connectors/source-slack/Dockerfile | 2 +- .../connectors/source-smartsheets/Dockerfile | 2 +- .../source-snapchat-marketing/Dockerfile | 2 +- .../connectors/source-square/Dockerfile | 2 +- .../Dockerfile | 2 +- .../connectors/source-strava/Dockerfile | 2 +- .../connectors/source-stripe/Dockerfile | 2 +- .../connectors/source-surveymonkey/Dockerfile | 2 +- .../connectors/source-tempo/Dockerfile | 2 +- .../source-tiktok-marketing/Dockerfile | 2 +- .../connectors/source-tplcentral/Dockerfile | 2 +- .../connectors/source-trello/Dockerfile | 2 +- .../connectors/source-twilio/Dockerfile | 2 +- .../connectors/source-typeform/Dockerfile | 2 +- .../connectors/source-us-census/Dockerfile | 2 +- .../connectors/source-woocommerce/Dockerfile | 2 +- .../source-yahoo-finance-price/Dockerfile | 2 +- .../source-youtube-analytics/Dockerfile | 2 +- .../connectors/source-zendesk-chat/Dockerfile | 2 +- .../source-zendesk-sunshine/Dockerfile | 2 +- .../source-zendesk-support/Dockerfile | 2 +- .../connectors/source-zendesk-talk/Dockerfile | 2 +- .../connectors/source-zenloop/Dockerfile | 2 +- .../connectors/source-zuora/Dockerfile | 2 +- .../src/main/groovy/airbyte-python.gradle | 2 +- .../cdk-python/README.md | 2 +- .../build-a-connector-the-hard-way.md | 6 +- .../tutorials/cdk-speedrun-deprecated.md | 2 +- .../tutorials/cdk-speedrun.md | 2 +- .../0-getting-started.md | 4 +- .../developing-locally.md | 2 +- docs/understanding-airbyte/tech-stack.md | 2 +- octavia-cli/.python-version | 2 +- octavia-cli/Dockerfile | 2 +- tools/bin/check_requirements.sh | 2 +- .../ci_changes_detection/main.py | 56 ++++++++--------- .../ci_sonar_qube/__init__.py | 5 +- tools/ci_code_validator/setup.py | 17 ++---- tools/ci_common_utils/setup.py | 2 +- tools/ci_credentials/setup.py | 6 +- tools/code-generator/Dockerfile | 2 +- tools/openapi2jsonschema/Dockerfile | 2 +- 168 files changed, 278 insertions(+), 293 deletions(-) diff --git a/.github/actions/ci-tests-runner/action.yml b/.github/actions/ci-tests-runner/action.yml index 6366fcc97bf3c..424306061439b 100644 --- a/.github/actions/ci-tests-runner/action.yml +++ b/.github/actions/ci-tests-runner/action.yml @@ -26,16 +26,15 @@ inputs: runs: using: "composite" steps: - - name: Set up Python uses: actions/setup-python@v2 with: - python-version: 3.7 + python-version: 3.9 - name: Install Java uses: actions/setup-java@v1 with: - java-version: '17' + java-version: "17" - name: Tests of CI shell: bash @@ -57,20 +56,20 @@ runs: id: gcloud-tunnel shell: bash run: | - while true; do - PORT=$(( ((RANDOM<<15)|RANDOM) % 49152 + 10000 )) - status="$(nc -z 127.0.0.1 $PORT < /dev/null &>/dev/null; echo $?)" - if [ "${status}" != "0" ]; then - echo "$PORT is free to use"; - break; - fi - done - IPS=($(hostname -I)) - LOCAL_IP_PORT="${IPS[0]}:${PORT}" - gcloud compute start-iap-tunnel sonarqube-1-vm 80 --local-host-port=${LOCAL_IP_PORT} --zone=europe-central2-a --project dataline-integration-testing & - echo ::set-output name=pid::$! - echo "::set-output name=sonar-host::http://${LOCAL_IP_PORT}/" - echo "::echo::on" + while true; do + PORT=$(( ((RANDOM<<15)|RANDOM) % 49152 + 10000 )) + status="$(nc -z 127.0.0.1 $PORT < /dev/null &>/dev/null; echo $?)" + if [ "${status}" != "0" ]; then + echo "$PORT is free to use"; + break; + fi + done + IPS=($(hostname -I)) + LOCAL_IP_PORT="${IPS[0]}:${PORT}" + gcloud compute start-iap-tunnel sonarqube-1-vm 80 --local-host-port=${LOCAL_IP_PORT} --zone=europe-central2-a --project dataline-integration-testing & + echo ::set-output name=pid::$! + echo "::set-output name=sonar-host::http://${LOCAL_IP_PORT}/" + echo "::echo::on" - name: Python Tests id: ci-py-tests @@ -88,10 +87,6 @@ runs: module-name: ${{ inputs.module-name }} module-folder: ${{ inputs.module-folder }} - - - - - name: Prepare SQ Options shell: bash id: sq-options @@ -142,7 +137,6 @@ runs: MODULE_DIR=$(python -c "print('${{ inputs.module-folder }}'.replace('${ROOT_DIR}', '.'))") echo "::set-output name=module_dir::${MODULE_DIR}" - - name: SonarQube Scan uses: sonarsource/sonarqube-scan-action@master @@ -150,17 +144,17 @@ runs: SONAR_TOKEN: ${{ inputs.sonar-token }} SONAR_HOST_URL: ${{ steps.gcloud-tunnel.outputs.sonar-host }} with: - projectBaseDir: ${{ steps.create-sq-project.outputs.module_dir }} - args: > - -Dsonar.projectKey=${{ steps.create-sq-project.outputs.sq_project_name }} - -Dsonar.verbose=true - -Dsonar.working.directory=/tmp/scannerwork - -Dsonar.language=${{ inputs.module-lang }} - -Dsonar.sourceEncoding=UTF-8 - -Dsonar.projectBaseDir=${{ steps.create-sq-project.outputs.module_dir }} - -Dsonar.exclusions=reports/**,*.toml,*_tests/**,setup.py,main.py - -Dsonar.externalIssuesReportPaths=${{ steps.sq-options.outputs.external_reports }} - ${{ steps.sq-options.outputs.options }} + projectBaseDir: ${{ steps.create-sq-project.outputs.module_dir }} + args: > + -Dsonar.projectKey=${{ steps.create-sq-project.outputs.sq_project_name }} + -Dsonar.verbose=true + -Dsonar.working.directory=/tmp/scannerwork + -Dsonar.language=${{ inputs.module-lang }} + -Dsonar.sourceEncoding=UTF-8 + -Dsonar.projectBaseDir=${{ steps.create-sq-project.outputs.module_dir }} + -Dsonar.exclusions=reports/**,*.toml,*_tests/**,setup.py,main.py + -Dsonar.externalIssuesReportPaths=${{ steps.sq-options.outputs.external_reports }} + ${{ steps.sq-options.outputs.options }} - name: Generate SonarQube Report shell: bash diff --git a/.github/workflows/gradle.yml b/.github/workflows/gradle.yml index 726d8b6db0d33..cfb89ae9fd18b 100644 --- a/.github/workflows/gradle.yml +++ b/.github/workflows/gradle.yml @@ -80,8 +80,6 @@ jobs: ${{ secrets.SUPERTOPHER_PAT }} \ ${{ secrets.DAVINCHIA_PAT }} - - # Uncomment to debug. # changes-output: # name: "Debug Change Detection Logic" @@ -114,11 +112,9 @@ jobs: with: java-version: "17" - # octavia-cli install and testing requires Python. - # We use 3.8 in this project because 3.7 is not supported on Apple M1. - uses: actions/setup-python@v2 with: - python-version: "3.8" + python-version: "3.9" - name: Set up CI Gradle Properties run: | @@ -221,7 +217,7 @@ jobs: - uses: actions/setup-python@v2 with: - python-version: "3.7" + python-version: "3.9" - name: Install Pyenv run: python3 -m pip install virtualenv==16.7.9 --user diff --git a/.github/workflows/publish-cdk-command.yml b/.github/workflows/publish-cdk-command.yml index bebf8a94a0167..92cec02d552d7 100644 --- a/.github/workflows/publish-cdk-command.yml +++ b/.github/workflows/publish-cdk-command.yml @@ -14,11 +14,10 @@ on: description: 'By default dry-run publishes to Test PyPi. Use "false" to publish to actual PyPi servers.' required: false comment-id: - description: 'The comment-id of the slash command. Used to update the comment with the status.' + description: "The comment-id of the slash command. Used to update the comment with the status." required: false jobs: - build-cdk: runs-on: ubuntu-latest strategy: @@ -31,7 +30,7 @@ jobs: python-version: ${{ matrix.python-version }} - uses: actions/setup-java@v1 with: - java-version: '17' + java-version: "17" - name: Checkout Airbyte uses: actions/checkout@v2 with: @@ -74,9 +73,9 @@ jobs: uses: mariamrf/py-package-publish-action@v1.1.0 with: # specify the same version as in ~/.python-version - python_version: '3.7.9' - pip_version: '21.1' - subdir: 'airbyte-cdk/python/' + python_version: "3.9.11" + pip_version: "21.1" + subdir: "airbyte-cdk/python/" env: TWINE_PASSWORD: ${{ secrets.TWINE_PASSWORD }} TWINE_USERNAME: ${{ secrets.TWINE_USERNAME }} diff --git a/.github/workflows/publish-command.yml b/.github/workflows/publish-command.yml index f44f27c31dbc1..f2574ddb042cd 100644 --- a/.github/workflows/publish-command.yml +++ b/.github/workflows/publish-command.yml @@ -104,8 +104,11 @@ jobs: uses: actions/setup-java@v1 with: java-version: "17" + - name: Install Python + uses: actions/setup-python@v2 + with: + python-version: "3.9" - name: Install Pyenv and Tox - # Beside PyEnv, this does not set any runtimes up because it uses an AMI image that has everything pre-installed. See https://github.com/airbytehq/airbyte/issues/4559/ run: | python3 -m pip install --quiet virtualenv==16.7.9 --user python3 -m virtualenv venv diff --git a/.github/workflows/release-airbyte-os.yml b/.github/workflows/release-airbyte-os.yml index fcbcfd77b68bd..daf1f94eb6f08 100644 --- a/.github/workflows/release-airbyte-os.yml +++ b/.github/workflows/release-airbyte-os.yml @@ -66,7 +66,7 @@ jobs: # necessary to install pip - uses: actions/setup-python@v2 with: - python-version: "3.7" + python-version: "3.9" - name: Release Airbyte id: release_airbyte env: @@ -79,7 +79,6 @@ jobs: # We are releasing octavia from a separate job because: # - The self hosted runner used in releaseAirbyte does not have the docker buildx command to build multi-arch images - # - Plaform build requires Python 3.7, Octavia Build requires 3.8 releaseOctavia: runs-on: ubuntu-latest environment: more-secrets @@ -95,11 +94,9 @@ jobs: - uses: actions/setup-node@v1 with: node-version: "16.13.0" - # octavia-cli build requires Python 3.8. - # We use 3.8 in this project because 3.7 is not supported on Apple M1. - uses: actions/setup-python@v2 with: - python-version: "3.8" + python-version: "3.9" - name: Release Octavia id: release_octavia env: @@ -121,7 +118,7 @@ jobs: # necessary to install pip - uses: actions/setup-python@v2 with: - python-version: "3.7" + python-version: "3.9" - name: Bump version id: bump_version env: diff --git a/.github/workflows/sonar-scan.yml b/.github/workflows/sonar-scan.yml index 9856d866c58a6..1320d7ac21d21 100644 --- a/.github/workflows/sonar-scan.yml +++ b/.github/workflows/sonar-scan.yml @@ -4,7 +4,6 @@ on: types: [opened, synchronize, closed] jobs: - detect-changes: name: Detect Changed Modules timeout-minutes: 5 @@ -23,11 +22,11 @@ jobs: - name: Setup Python uses: actions/setup-python@v2 with: - python-version: 3.7 - - name: Intall Requirements + python-version: 3.9 + - name: Install Requirements run: | - pip install ./tools/ci_common_utils ./tools/ci_code_validator[tests] - pytest ./tools/ci_code_validator + pip install ./tools/ci_common_utils ./tools/ci_code_validator[tests] + pytest ./tools/ci_code_validator - name: Detect Changed Modules id: detect-changed-modules run: | @@ -39,7 +38,7 @@ jobs: # Do only run if the PR is not a draft and the changed modules matrix contains at least one entry if: github.event.pull_request.draft == false && fromJson(needs.detect-changes.outputs.changed-modules).include[0] != null needs: detect-changes - name: Tests for ${{ matrix.module }} + name: Tests for ${{ matrix.module }} runs-on: ubuntu-latest strategy: @@ -50,29 +49,25 @@ jobs: MODULE_FOLDER: ${{ matrix.folder }} ENV_NAME: "github" - steps: - - name: Print Settings - run: | - echo "Module: ${{ env.MODULE_NAME }}, Lang: ${{ env.MODULE_LANG }}, Folder: ${{ env.MODULE_FOLDER }}" - - name: Checkout Airbyte - if: ${{ env.ENV_NAME == 'github' }} - uses: actions/checkout@v2 - with: - fetch-depth: 0 - - - name: Run Tests Runner - id: run-python-tests - uses: ./.github/actions/ci-tests-runner - with: - token: ${{ secrets.GITHUB_TOKEN }} - module-name: ${{ env.MODULE_NAME }} - module-folder: ${{ env.MODULE_FOLDER }} - module-lang: ${{ env.MODULE_LANG }} - sonar-token: ${{ secrets.SONAR_TOKEN }} - sonar-gcp-access-key: ${{ secrets.GCP_SONAR_SA_KEY }} - pull-request-id: "${{ github.repository }}/${{ github.event.pull_request.number }}" - remove-sonar-project: true - - + - name: Print Settings + run: | + echo "Module: ${{ env.MODULE_NAME }}, Lang: ${{ env.MODULE_LANG }}, Folder: ${{ env.MODULE_FOLDER }}" + - name: Checkout Airbyte + if: ${{ env.ENV_NAME == 'github' }} + uses: actions/checkout@v2 + with: + fetch-depth: 0 + - name: Run Tests Runner + id: run-python-tests + uses: ./.github/actions/ci-tests-runner + with: + token: ${{ secrets.GITHUB_TOKEN }} + module-name: ${{ env.MODULE_NAME }} + module-folder: ${{ env.MODULE_FOLDER }} + module-lang: ${{ env.MODULE_LANG }} + sonar-token: ${{ secrets.SONAR_TOKEN }} + sonar-gcp-access-key: ${{ secrets.GCP_SONAR_SA_KEY }} + pull-request-id: "${{ github.repository }}/${{ github.event.pull_request.number }}" + remove-sonar-project: true diff --git a/.github/workflows/test-command.yml b/.github/workflows/test-command.yml index b14dfd806b356..27f22151fcb3a 100644 --- a/.github/workflows/test-command.yml +++ b/.github/workflows/test-command.yml @@ -90,8 +90,11 @@ jobs: uses: actions/setup-java@v1 with: java-version: "17" + - name: Install Python + uses: actions/setup-python@v2 + with: + python-version: "3.9" - name: Install Pyenv and Tox - # Beside PyEnv, this does not set any runtimes up because it uses an AMI image that has everything pre-installed. See https://github.com/airbytehq/airbyte/issues/4559/ run: | python3 -m pip install --quiet virtualenv==16.7.9 --user python3 -m virtualenv venv diff --git a/.github/workflows/test-performance-command.yml b/.github/workflows/test-performance-command.yml index fd8f7f366a7df..f87987fccd196 100644 --- a/.github/workflows/test-performance-command.yml +++ b/.github/workflows/test-performance-command.yml @@ -95,9 +95,12 @@ jobs: - name: Install Java uses: actions/setup-java@v1 with: - java-version: '17' + java-version: "17" + - name: Install Python + uses: actions/setup-python@v2 + with: + python-version: "3.9" - name: Install Pyenv and Tox - # Beside PyEnv, this does not set any runtimes up because it uses an AMI image that has everything pre-installed. See https://github.com/airbytehq/airbyte/issues/4559/ run: | python3 -m pip install --quiet virtualenv==16.7.9 --user python3 -m virtualenv venv diff --git a/.python-version b/.python-version index c77a7de85cc88..a9f8d1be337f7 100644 --- a/.python-version +++ b/.python-version @@ -1 +1 @@ -3.7.9 +3.9.11 diff --git a/.readthedocs.yaml b/.readthedocs.yaml index 73602b5138e03..58cb33bd97d04 100644 --- a/.readthedocs.yaml +++ b/.readthedocs.yaml @@ -12,7 +12,7 @@ sphinx: # Set the version of Python and requirements required to build your docs python: - version: "3.7" + version: "3.9" install: - method: pip path: airbyte-cdk/python diff --git a/airbyte-cdk/python/README.md b/airbyte-cdk/python/README.md index e848bf96264e7..061d759f6341a 100644 --- a/airbyte-cdk/python/README.md +++ b/airbyte-cdk/python/README.md @@ -49,7 +49,7 @@ See the [concepts docs](docs/concepts/) for a tour through what the API offers. ### First time setup -We assume `python` points to python >=3.7. +We assume `python` points to python >=3.9. Setup a virtual env: diff --git a/airbyte-cdk/python/docs/tutorials/cdk-tutorial-any-percent/cdk-speedrun.md b/airbyte-cdk/python/docs/tutorials/cdk-tutorial-any-percent/cdk-speedrun.md index ac1bcfdce43ee..fe71290ed096f 100644 --- a/airbyte-cdk/python/docs/tutorials/cdk-tutorial-any-percent/cdk-speedrun.md +++ b/airbyte-cdk/python/docs/tutorials/cdk-tutorial-any-percent/cdk-speedrun.md @@ -4,7 +4,7 @@ This is a blazing fast guide to building an HTTP source connector. Think of it a # Dependencies -1. Python >= 3.7 +1. Python >= 3.9 2. Docker 3. NodeJS diff --git a/airbyte-cdk/python/docs/tutorials/cdk-tutorial-python-http/0-getting-started.md b/airbyte-cdk/python/docs/tutorials/cdk-tutorial-python-http/0-getting-started.md index cbee09971d102..a1bc7b2227253 100644 --- a/airbyte-cdk/python/docs/tutorials/cdk-tutorial-python-http/0-getting-started.md +++ b/airbyte-cdk/python/docs/tutorials/cdk-tutorial-python-http/0-getting-started.md @@ -6,11 +6,11 @@ This is a step-by-step guide for how to create an Airbyte source in Python to re ## Requirements -* Python >= 3.7 +* Python >= 3.9 * Docker * NodeJS \(only used to generate the connector\). We'll remove the NodeJS dependency soon. -All the commands below assume that `python` points to a version of python >=3.7.0. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. +All the commands below assume that `python` points to a version of python >=3.9.0. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. ## Checklist diff --git a/airbyte-cdk/python/docs/tutorials/http_api_source.md b/airbyte-cdk/python/docs/tutorials/http_api_source.md index 6d305b1048764..c622fe0e310b6 100644 --- a/airbyte-cdk/python/docs/tutorials/http_api_source.md +++ b/airbyte-cdk/python/docs/tutorials/http_api_source.md @@ -7,11 +7,11 @@ Exchangerates API as an example since it is both simple but demonstrates a lot o ## Requirements -* Python >= 3.7 +* Python >= 3.9 * Docker * NodeJS (only used to generate the connector). We'll remove the NodeJS dependency soon. -All the commands below assume that `python` points to a version of python >=3.7.0. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. +All the commands below assume that `python` points to a version of python >=3.9. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. ## Checklist * Step 1: Create the source using the template diff --git a/airbyte-cdk/python/setup.py b/airbyte-cdk/python/setup.py index 72fb15e40705c..d046bd37ffee3 100644 --- a/airbyte-cdk/python/setup.py +++ b/airbyte-cdk/python/setup.py @@ -57,7 +57,7 @@ "vcrpy", "Deprecated~=1.2", ], - python_requires=">=3.7.0", + python_requires=">=3.9", extras_require={ "dev": [ "MyPy~=0.812", diff --git a/airbyte-integrations/bases/airbyte-protocol/Dockerfile b/airbyte-integrations/bases/airbyte-protocol/Dockerfile index c803c68891cb3..59afd0374b880 100644 --- a/airbyte-integrations/bases/airbyte-protocol/Dockerfile +++ b/airbyte-integrations/bases/airbyte-protocol/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim WORKDIR /airbyte/base_python_structs COPY airbyte_protocol ./airbyte_protocol diff --git a/airbyte-integrations/bases/source-acceptance-test/Dockerfile b/airbyte-integrations/bases/source-acceptance-test/Dockerfile index 3ecdeffaf6499..94844e33e7c17 100644 --- a/airbyte-integrations/bases/source-acceptance-test/Dockerfile +++ b/airbyte-integrations/bases/source-acceptance-test/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connector-templates/destination-python/Dockerfile b/airbyte-integrations/connector-templates/destination-python/Dockerfile index bc70226b73be0..0fc14e67b800d 100644 --- a/airbyte-integrations/connector-templates/destination-python/Dockerfile +++ b/airbyte-integrations/connector-templates/destination-python/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connector-templates/source-python-http-api/Dockerfile b/airbyte-integrations/connector-templates/source-python-http-api/Dockerfile index fa754e7afbf36..66b0b426628b7 100644 --- a/airbyte-integrations/connector-templates/source-python-http-api/Dockerfile +++ b/airbyte-integrations/connector-templates/source-python-http-api/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connector-templates/source-python/Dockerfile b/airbyte-integrations/connector-templates/source-python/Dockerfile index fa754e7afbf36..66b0b426628b7 100644 --- a/airbyte-integrations/connector-templates/source-python/Dockerfile +++ b/airbyte-integrations/connector-templates/source-python/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connector-templates/source-singer/Dockerfile b/airbyte-integrations/connector-templates/source-singer/Dockerfile index 88fd7b1b13507..08618b9730936 100644 --- a/airbyte-integrations/connector-templates/source-singer/Dockerfile +++ b/airbyte-integrations/connector-templates/source-singer/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && apt-get install -y gcc && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/destination-amazon-sqs/Dockerfile b/airbyte-integrations/connectors/destination-amazon-sqs/Dockerfile index 95248bfea342c..50e7598d2c3ed 100644 --- a/airbyte-integrations/connectors/destination-amazon-sqs/Dockerfile +++ b/airbyte-integrations/connectors/destination-amazon-sqs/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/destination-aws-datalake/Dockerfile b/airbyte-integrations/connectors/destination-aws-datalake/Dockerfile index 8449398cce7d0..12ec2897fd097 100644 --- a/airbyte-integrations/connectors/destination-aws-datalake/Dockerfile +++ b/airbyte-integrations/connectors/destination-aws-datalake/Dockerfile @@ -1,5 +1,5 @@ -FROM python:3.7-slim -# FROM python:3.7.11-alpine3.14 +FROM python:3.9-slim +# FROM python:3.9.11-alpine3.15 # Bash is installed for more convenient debugging. # RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/destination-aws-datalake/build.gradle b/airbyte-integrations/connectors/destination-aws-datalake/build.gradle index 5c3928a365d57..b39e2774c5b48 100644 --- a/airbyte-integrations/connectors/destination-aws-datalake/build.gradle +++ b/airbyte-integrations/connectors/destination-aws-datalake/build.gradle @@ -1,9 +1,14 @@ plugins { id 'application' + id 'airbyte-python' id 'airbyte-docker' id 'airbyte-integration-test-java' } +airbytePython { + moduleDirectory 'destination_aws_datalake' +} + dependencies { // https://mvnrepository.com/artifact/com.google.guava/guava implementation 'com.google.guava:guava:30.1.1-jre' diff --git a/airbyte-integrations/connectors/destination-firestore/Dockerfile b/airbyte-integrations/connectors/destination-firestore/Dockerfile index 95e16b3bbe9bf..b1384f8725b09 100644 --- a/airbyte-integrations/connectors/destination-firestore/Dockerfile +++ b/airbyte-integrations/connectors/destination-firestore/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/destination-kvdb/Dockerfile b/airbyte-integrations/connectors/destination-kvdb/Dockerfile index 533046f7b3f5f..fba4f5cb3d41a 100644 --- a/airbyte-integrations/connectors/destination-kvdb/Dockerfile +++ b/airbyte-integrations/connectors/destination-kvdb/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 +FROM python:3.9.11-alpine3.15 # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/destination-rabbitmq/Dockerfile b/airbyte-integrations/connectors/destination-rabbitmq/Dockerfile index 61645d0255879..8f50039aa01a5 100644 --- a/airbyte-integrations/connectors/destination-rabbitmq/Dockerfile +++ b/airbyte-integrations/connectors/destination-rabbitmq/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/destination-scaffold-destination-python/Dockerfile b/airbyte-integrations/connectors/destination-scaffold-destination-python/Dockerfile index 1232426e990bb..7d70a8b79d085 100644 --- a/airbyte-integrations/connectors/destination-scaffold-destination-python/Dockerfile +++ b/airbyte-integrations/connectors/destination-scaffold-destination-python/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-airtable/Dockerfile b/airbyte-integrations/connectors/source-airtable/Dockerfile index b44c7f9f55abf..0d73131353a76 100644 --- a/airbyte-integrations/connectors/source-airtable/Dockerfile +++ b/airbyte-integrations/connectors/source-airtable/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-amazon-ads/Dockerfile b/airbyte-integrations/connectors/source-amazon-ads/Dockerfile index 5d7d367c99f29..549d2e27d559d 100644 --- a/airbyte-integrations/connectors/source-amazon-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-amazon-ads/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-amazon-seller-partner/Dockerfile b/airbyte-integrations/connectors/source-amazon-seller-partner/Dockerfile index 5f6e16b4d1368..98b5becc7aff3 100644 --- a/airbyte-integrations/connectors/source-amazon-seller-partner/Dockerfile +++ b/airbyte-integrations/connectors/source-amazon-seller-partner/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-amazon-sqs/Dockerfile b/airbyte-integrations/connectors/source-amazon-sqs/Dockerfile index c49374e88a185..f8020036fba85 100644 --- a/airbyte-integrations/connectors/source-amazon-sqs/Dockerfile +++ b/airbyte-integrations/connectors/source-amazon-sqs/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-amplitude/Dockerfile b/airbyte-integrations/connectors/source-amplitude/Dockerfile index 9780761c914a3..210e952009ec7 100644 --- a/airbyte-integrations/connectors/source-amplitude/Dockerfile +++ b/airbyte-integrations/connectors/source-amplitude/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-apify-dataset/Dockerfile b/airbyte-integrations/connectors/source-apify-dataset/Dockerfile index 4e7fefd22e76d..fbf31c680e2f8 100644 --- a/airbyte-integrations/connectors/source-apify-dataset/Dockerfile +++ b/airbyte-integrations/connectors/source-apify-dataset/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-appsflyer/Dockerfile b/airbyte-integrations/connectors/source-appsflyer/Dockerfile index 1cbe06cc5a961..d315551c04e74 100644 --- a/airbyte-integrations/connectors/source-appsflyer/Dockerfile +++ b/airbyte-integrations/connectors/source-appsflyer/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-appstore-singer/Dockerfile b/airbyte-integrations/connectors/source-appstore-singer/Dockerfile index 8bd83dd139dbe..2527cdf48fbb2 100644 --- a/airbyte-integrations/connectors/source-appstore-singer/Dockerfile +++ b/airbyte-integrations/connectors/source-appstore-singer/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-asana/Dockerfile b/airbyte-integrations/connectors/source-asana/Dockerfile index c84ae82567783..edb890dc8459e 100644 --- a/airbyte-integrations/connectors/source-asana/Dockerfile +++ b/airbyte-integrations/connectors/source-asana/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-aws-cloudtrail/Dockerfile b/airbyte-integrations/connectors/source-aws-cloudtrail/Dockerfile index 5cf2683ccefc2..c0ad050822622 100644 --- a/airbyte-integrations/connectors/source-aws-cloudtrail/Dockerfile +++ b/airbyte-integrations/connectors/source-aws-cloudtrail/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-azure-table/Dockerfile b/airbyte-integrations/connectors/source-azure-table/Dockerfile index 87bda53ae54f9..84cbb169fd79d 100644 --- a/airbyte-integrations/connectors/source-azure-table/Dockerfile +++ b/airbyte-integrations/connectors/source-azure-table/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-bamboo-hr/Dockerfile b/airbyte-integrations/connectors/source-bamboo-hr/Dockerfile index 3a93a7100b8e6..3ed0ce8fd4769 100644 --- a/airbyte-integrations/connectors/source-bamboo-hr/Dockerfile +++ b/airbyte-integrations/connectors/source-bamboo-hr/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-bigcommerce/Dockerfile b/airbyte-integrations/connectors/source-bigcommerce/Dockerfile index 39ba240369abd..192ee3073b47c 100644 --- a/airbyte-integrations/connectors/source-bigcommerce/Dockerfile +++ b/airbyte-integrations/connectors/source-bigcommerce/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-bing-ads/Dockerfile b/airbyte-integrations/connectors/source-bing-ads/Dockerfile index 3939a6a722c4e..4bc175d391c4f 100644 --- a/airbyte-integrations/connectors/source-bing-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-bing-ads/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-braintree/Dockerfile b/airbyte-integrations/connectors/source-braintree/Dockerfile index 8d9434d3dba63..d09b119433b2a 100644 --- a/airbyte-integrations/connectors/source-braintree/Dockerfile +++ b/airbyte-integrations/connectors/source-braintree/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-cart/Dockerfile b/airbyte-integrations/connectors/source-cart/Dockerfile index 5ab879c4f3f1b..c49305c8cad9a 100644 --- a/airbyte-integrations/connectors/source-cart/Dockerfile +++ b/airbyte-integrations/connectors/source-cart/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base FROM base as builder diff --git a/airbyte-integrations/connectors/source-chargebee/Dockerfile b/airbyte-integrations/connectors/source-chargebee/Dockerfile index d888cb4b72afa..50ffb5c3b2d11 100644 --- a/airbyte-integrations/connectors/source-chargebee/Dockerfile +++ b/airbyte-integrations/connectors/source-chargebee/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-chargify/Dockerfile b/airbyte-integrations/connectors/source-chargify/Dockerfile index aea82a991173b..8d9fd809b173f 100644 --- a/airbyte-integrations/connectors/source-chargify/Dockerfile +++ b/airbyte-integrations/connectors/source-chargify/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-chartmogul/Dockerfile b/airbyte-integrations/connectors/source-chartmogul/Dockerfile index bf9eff300902e..af4b8545b5d65 100644 --- a/airbyte-integrations/connectors/source-chartmogul/Dockerfile +++ b/airbyte-integrations/connectors/source-chartmogul/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-close-com/Dockerfile b/airbyte-integrations/connectors/source-close-com/Dockerfile index 1e200792f10e9..8ae4d853fc97a 100644 --- a/airbyte-integrations/connectors/source-close-com/Dockerfile +++ b/airbyte-integrations/connectors/source-close-com/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-commercetools/Dockerfile b/airbyte-integrations/connectors/source-commercetools/Dockerfile index b0a8217f854d7..f2b6a4948e72a 100644 --- a/airbyte-integrations/connectors/source-commercetools/Dockerfile +++ b/airbyte-integrations/connectors/source-commercetools/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-confluence/Dockerfile b/airbyte-integrations/connectors/source-confluence/Dockerfile index 1d123db03a8b3..52d50a608f405 100644 --- a/airbyte-integrations/connectors/source-confluence/Dockerfile +++ b/airbyte-integrations/connectors/source-confluence/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-delighted/Dockerfile b/airbyte-integrations/connectors/source-delighted/Dockerfile index c098a13136594..068fdf381a2ea 100644 --- a/airbyte-integrations/connectors/source-delighted/Dockerfile +++ b/airbyte-integrations/connectors/source-delighted/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-dixa/Dockerfile b/airbyte-integrations/connectors/source-dixa/Dockerfile index ecf25737983bf..f163ff02c104f 100644 --- a/airbyte-integrations/connectors/source-dixa/Dockerfile +++ b/airbyte-integrations/connectors/source-dixa/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-drift/Dockerfile b/airbyte-integrations/connectors/source-drift/Dockerfile index 7488ae6fdf659..3e8ad28e1ff38 100644 --- a/airbyte-integrations/connectors/source-drift/Dockerfile +++ b/airbyte-integrations/connectors/source-drift/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-exchange-rates/Dockerfile b/airbyte-integrations/connectors/source-exchange-rates/Dockerfile index 5233bbfe192c8..30094b221d439 100644 --- a/airbyte-integrations/connectors/source-exchange-rates/Dockerfile +++ b/airbyte-integrations/connectors/source-exchange-rates/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile b/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile index 666c64eccd6b9..4ae194813001c 100644 --- a/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile +++ b/airbyte-integrations/connectors/source-facebook-marketing/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-facebook-pages/Dockerfile b/airbyte-integrations/connectors/source-facebook-pages/Dockerfile index eb60f1aea6eac..3d95e1d8b18da 100644 --- a/airbyte-integrations/connectors/source-facebook-pages/Dockerfile +++ b/airbyte-integrations/connectors/source-facebook-pages/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-file/Dockerfile b/airbyte-integrations/connectors/source-file/Dockerfile index aec77806deb0e..98d63b5b4d005 100644 --- a/airbyte-integrations/connectors/source-file/Dockerfile +++ b/airbyte-integrations/connectors/source-file/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y jq curl bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-flexport/Dockerfile b/airbyte-integrations/connectors/source-flexport/Dockerfile index f111db41ddb4a..463534a929bd8 100644 --- a/airbyte-integrations/connectors/source-flexport/Dockerfile +++ b/airbyte-integrations/connectors/source-flexport/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-freshdesk/Dockerfile b/airbyte-integrations/connectors/source-freshdesk/Dockerfile index 40f60b0c00905..83765ef3f49be 100644 --- a/airbyte-integrations/connectors/source-freshdesk/Dockerfile +++ b/airbyte-integrations/connectors/source-freshdesk/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-freshdesk/source_freshdesk/utils.py b/airbyte-integrations/connectors/source-freshdesk/source_freshdesk/utils.py index 1e1c90f670eb2..f88669b8a28fe 100644 --- a/airbyte-integrations/connectors/source-freshdesk/source_freshdesk/utils.py +++ b/airbyte-integrations/connectors/source-freshdesk/source_freshdesk/utils.py @@ -77,7 +77,7 @@ def consume(self, credit: int): if self._credits_consumed + credit >= self._max_balance: sleep_time = self._balance_reload_period - (time.time() - self._current_period_start) - logger.trace(f"Reached call limit for this minute, wait for {sleep_time:.2f} seconds") + logger.info(f"Reached call limit for this minute, wait for {sleep_time:.2f} seconds") time.sleep(max(1.0, sleep_time)) self.reset_period() diff --git a/airbyte-integrations/connectors/source-freshsales/Dockerfile b/airbyte-integrations/connectors/source-freshsales/Dockerfile index 04a39200b2b18..0da75a653abc0 100644 --- a/airbyte-integrations/connectors/source-freshsales/Dockerfile +++ b/airbyte-integrations/connectors/source-freshsales/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-freshservice/Dockerfile b/airbyte-integrations/connectors/source-freshservice/Dockerfile index 857bf236df892..09bf02290748b 100644 --- a/airbyte-integrations/connectors/source-freshservice/Dockerfile +++ b/airbyte-integrations/connectors/source-freshservice/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-github/Dockerfile b/airbyte-integrations/connectors/source-github/Dockerfile index cfa3cd834bd4d..d94aaa62a3373 100644 --- a/airbyte-integrations/connectors/source-github/Dockerfile +++ b/airbyte-integrations/connectors/source-github/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-gitlab/Dockerfile b/airbyte-integrations/connectors/source-gitlab/Dockerfile index bad9e5b8da752..9cd9977769ff1 100644 --- a/airbyte-integrations/connectors/source-gitlab/Dockerfile +++ b/airbyte-integrations/connectors/source-gitlab/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-google-ads/Dockerfile b/airbyte-integrations/connectors/source-google-ads/Dockerfile index c9f0f2ee5a78b..3471d21e25af7 100644 --- a/airbyte-integrations/connectors/source-google-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-google-ads/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-google-analytics-v4/Dockerfile b/airbyte-integrations/connectors/source-google-analytics-v4/Dockerfile index 609fb81096acd..489d2bbdb84a5 100644 --- a/airbyte-integrations/connectors/source-google-analytics-v4/Dockerfile +++ b/airbyte-integrations/connectors/source-google-analytics-v4/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-google-directory/Dockerfile b/airbyte-integrations/connectors/source-google-directory/Dockerfile index 982955751bb99..42416d9902d0b 100644 --- a/airbyte-integrations/connectors/source-google-directory/Dockerfile +++ b/airbyte-integrations/connectors/source-google-directory/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-google-search-console/Dockerfile b/airbyte-integrations/connectors/source-google-search-console/Dockerfile index ac0985737b872..627219bb61648 100755 --- a/airbyte-integrations/connectors/source-google-search-console/Dockerfile +++ b/airbyte-integrations/connectors/source-google-search-console/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-google-search-console/credentials/Dockerfile b/airbyte-integrations/connectors/source-google-search-console/credentials/Dockerfile index f7e02e370a0ca..13a08239ca959 100755 --- a/airbyte-integrations/connectors/source-google-search-console/credentials/Dockerfile +++ b/airbyte-integrations/connectors/source-google-search-console/credentials/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-google-sheets/Dockerfile b/airbyte-integrations/connectors/source-google-sheets/Dockerfile index a90647b24c180..b6c9df0e9198f 100644 --- a/airbyte-integrations/connectors/source-google-sheets/Dockerfile +++ b/airbyte-integrations/connectors/source-google-sheets/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-google-workspace-admin-reports/Dockerfile b/airbyte-integrations/connectors/source-google-workspace-admin-reports/Dockerfile index 6f0ad633a34ae..6a4be680b7761 100644 --- a/airbyte-integrations/connectors/source-google-workspace-admin-reports/Dockerfile +++ b/airbyte-integrations/connectors/source-google-workspace-admin-reports/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-greenhouse/Dockerfile b/airbyte-integrations/connectors/source-greenhouse/Dockerfile index 267a7cdc85dc6..e1c14e5f5555c 100644 --- a/airbyte-integrations/connectors/source-greenhouse/Dockerfile +++ b/airbyte-integrations/connectors/source-greenhouse/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-harvest/Dockerfile b/airbyte-integrations/connectors/source-harvest/Dockerfile index 515e9f1a4eb54..aab94b394e667 100644 --- a/airbyte-integrations/connectors/source-harvest/Dockerfile +++ b/airbyte-integrations/connectors/source-harvest/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-hellobaton/Dockerfile b/airbyte-integrations/connectors/source-hellobaton/Dockerfile index f8bf6c037c6e1..146576b35cb75 100644 --- a/airbyte-integrations/connectors/source-hellobaton/Dockerfile +++ b/airbyte-integrations/connectors/source-hellobaton/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-hubspot/Dockerfile b/airbyte-integrations/connectors/source-hubspot/Dockerfile index ed40e83576271..e82ffce085973 100644 --- a/airbyte-integrations/connectors/source-hubspot/Dockerfile +++ b/airbyte-integrations/connectors/source-hubspot/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-instagram/Dockerfile b/airbyte-integrations/connectors/source-instagram/Dockerfile index 8f749b1c96fb1..1684aaba026dc 100644 --- a/airbyte-integrations/connectors/source-instagram/Dockerfile +++ b/airbyte-integrations/connectors/source-instagram/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-intercom/Dockerfile b/airbyte-integrations/connectors/source-intercom/Dockerfile index 9c21baded33a4..d409c57f04268 100644 --- a/airbyte-integrations/connectors/source-intercom/Dockerfile +++ b/airbyte-integrations/connectors/source-intercom/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-iterable/Dockerfile b/airbyte-integrations/connectors/source-iterable/Dockerfile index e130934244f21..3920d9c80ee16 100644 --- a/airbyte-integrations/connectors/source-iterable/Dockerfile +++ b/airbyte-integrations/connectors/source-iterable/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-jira/Dockerfile b/airbyte-integrations/connectors/source-jira/Dockerfile index 3c2d4ee41e2fb..7ec15d6700ad2 100644 --- a/airbyte-integrations/connectors/source-jira/Dockerfile +++ b/airbyte-integrations/connectors/source-jira/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-klaviyo/Dockerfile b/airbyte-integrations/connectors/source-klaviyo/Dockerfile index c307d96bc2e63..316f3e986371b 100644 --- a/airbyte-integrations/connectors/source-klaviyo/Dockerfile +++ b/airbyte-integrations/connectors/source-klaviyo/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-kustomer-singer/Dockerfile b/airbyte-integrations/connectors/source-kustomer-singer/Dockerfile index 6d59f01251eb1..788587c5482f8 100644 --- a/airbyte-integrations/connectors/source-kustomer-singer/Dockerfile +++ b/airbyte-integrations/connectors/source-kustomer-singer/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-lemlist/Dockerfile b/airbyte-integrations/connectors/source-lemlist/Dockerfile index f043abdb06b32..6519fa94ff942 100644 --- a/airbyte-integrations/connectors/source-lemlist/Dockerfile +++ b/airbyte-integrations/connectors/source-lemlist/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-lever-hiring/Dockerfile b/airbyte-integrations/connectors/source-lever-hiring/Dockerfile index a5b4e9402e03f..f76384f303507 100644 --- a/airbyte-integrations/connectors/source-lever-hiring/Dockerfile +++ b/airbyte-integrations/connectors/source-lever-hiring/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-linkedin-ads/Dockerfile b/airbyte-integrations/connectors/source-linkedin-ads/Dockerfile index 71e2e090c3f61..d402e1ae7b854 100644 --- a/airbyte-integrations/connectors/source-linkedin-ads/Dockerfile +++ b/airbyte-integrations/connectors/source-linkedin-ads/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-linnworks/Dockerfile b/airbyte-integrations/connectors/source-linnworks/Dockerfile index e675c2e641156..c8b96529f82af 100644 --- a/airbyte-integrations/connectors/source-linnworks/Dockerfile +++ b/airbyte-integrations/connectors/source-linnworks/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-looker/Dockerfile b/airbyte-integrations/connectors/source-looker/Dockerfile index 4e30e99f66386..c7500bc009eb1 100644 --- a/airbyte-integrations/connectors/source-looker/Dockerfile +++ b/airbyte-integrations/connectors/source-looker/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-mailchimp/Dockerfile b/airbyte-integrations/connectors/source-mailchimp/Dockerfile index 48591729451db..757587a2a891b 100644 --- a/airbyte-integrations/connectors/source-mailchimp/Dockerfile +++ b/airbyte-integrations/connectors/source-mailchimp/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-mailgun/Dockerfile b/airbyte-integrations/connectors/source-mailgun/Dockerfile index 2ad687d6d93f4..d7ccccd37aa8f 100644 --- a/airbyte-integrations/connectors/source-mailgun/Dockerfile +++ b/airbyte-integrations/connectors/source-mailgun/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-marketo/Dockerfile b/airbyte-integrations/connectors/source-marketo/Dockerfile index f8373f8478034..83d335c1d40b6 100644 --- a/airbyte-integrations/connectors/source-marketo/Dockerfile +++ b/airbyte-integrations/connectors/source-marketo/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-microsoft-teams/Dockerfile b/airbyte-integrations/connectors/source-microsoft-teams/Dockerfile index 969e794249dab..3cdb20113e747 100644 --- a/airbyte-integrations/connectors/source-microsoft-teams/Dockerfile +++ b/airbyte-integrations/connectors/source-microsoft-teams/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-mixpanel/Dockerfile b/airbyte-integrations/connectors/source-mixpanel/Dockerfile index fbaf92fbb7db4..e43ef5992f8a6 100644 --- a/airbyte-integrations/connectors/source-mixpanel/Dockerfile +++ b/airbyte-integrations/connectors/source-mixpanel/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-monday/Dockerfile b/airbyte-integrations/connectors/source-monday/Dockerfile index 8d2e5e171be1a..d12ad8de5e71e 100644 --- a/airbyte-integrations/connectors/source-monday/Dockerfile +++ b/airbyte-integrations/connectors/source-monday/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-my-hours/Dockerfile b/airbyte-integrations/connectors/source-my-hours/Dockerfile index 7b0b6f13c02d3..78aba99b8b510 100644 --- a/airbyte-integrations/connectors/source-my-hours/Dockerfile +++ b/airbyte-integrations/connectors/source-my-hours/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-notion/Dockerfile b/airbyte-integrations/connectors/source-notion/Dockerfile index c43238645f350..e6bb3527b120c 100644 --- a/airbyte-integrations/connectors/source-notion/Dockerfile +++ b/airbyte-integrations/connectors/source-notion/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-okta/Dockerfile b/airbyte-integrations/connectors/source-okta/Dockerfile index 1c554912b8906..50d5d9cb04a57 100644 --- a/airbyte-integrations/connectors/source-okta/Dockerfile +++ b/airbyte-integrations/connectors/source-okta/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-onesignal/Dockerfile b/airbyte-integrations/connectors/source-onesignal/Dockerfile index 208cf1cc56198..4c06a40536a09 100644 --- a/airbyte-integrations/connectors/source-onesignal/Dockerfile +++ b/airbyte-integrations/connectors/source-onesignal/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-openweather/Dockerfile b/airbyte-integrations/connectors/source-openweather/Dockerfile index 81da93152a972..8b82589d62f2a 100644 --- a/airbyte-integrations/connectors/source-openweather/Dockerfile +++ b/airbyte-integrations/connectors/source-openweather/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-orb/Dockerfile b/airbyte-integrations/connectors/source-orb/Dockerfile index d673aafcd4784..103bb600576dd 100644 --- a/airbyte-integrations/connectors/source-orb/Dockerfile +++ b/airbyte-integrations/connectors/source-orb/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-outreach/Dockerfile b/airbyte-integrations/connectors/source-outreach/Dockerfile index 7de18970924ca..7a9aec1bb2262 100644 --- a/airbyte-integrations/connectors/source-outreach/Dockerfile +++ b/airbyte-integrations/connectors/source-outreach/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-pardot/Dockerfile b/airbyte-integrations/connectors/source-pardot/Dockerfile index dfb11bb0d6018..f3d48734a32fa 100644 --- a/airbyte-integrations/connectors/source-pardot/Dockerfile +++ b/airbyte-integrations/connectors/source-pardot/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile b/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile index 6a1b4d70646a2..3372b96801322 100644 --- a/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile +++ b/airbyte-integrations/connectors/source-paypal-transaction/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-paystack/Dockerfile b/airbyte-integrations/connectors/source-paystack/Dockerfile index b710f9278c970..f832721b0ef47 100644 --- a/airbyte-integrations/connectors/source-paystack/Dockerfile +++ b/airbyte-integrations/connectors/source-paystack/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-persistiq/Dockerfile b/airbyte-integrations/connectors/source-persistiq/Dockerfile index e533a190826d1..f995b5438c8ee 100644 --- a/airbyte-integrations/connectors/source-persistiq/Dockerfile +++ b/airbyte-integrations/connectors/source-persistiq/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-pinterest/Dockerfile b/airbyte-integrations/connectors/source-pinterest/Dockerfile index 78e07b1d03370..c5bbeb3e7a181 100644 --- a/airbyte-integrations/connectors/source-pinterest/Dockerfile +++ b/airbyte-integrations/connectors/source-pinterest/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-pipedrive/Dockerfile b/airbyte-integrations/connectors/source-pipedrive/Dockerfile index 0b9fd56f724d3..16d99ef08ea5b 100644 --- a/airbyte-integrations/connectors/source-pipedrive/Dockerfile +++ b/airbyte-integrations/connectors/source-pipedrive/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-pivotal-tracker/Dockerfile b/airbyte-integrations/connectors/source-pivotal-tracker/Dockerfile index bc7549c338383..016438b17b42e 100644 --- a/airbyte-integrations/connectors/source-pivotal-tracker/Dockerfile +++ b/airbyte-integrations/connectors/source-pivotal-tracker/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-plaid/Dockerfile b/airbyte-integrations/connectors/source-plaid/Dockerfile index 722c43732c0ef..99e77e0eb82f0 100644 --- a/airbyte-integrations/connectors/source-plaid/Dockerfile +++ b/airbyte-integrations/connectors/source-plaid/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-pokeapi/Dockerfile b/airbyte-integrations/connectors/source-pokeapi/Dockerfile index 608b5102e6888..eb6b8d8bb3870 100644 --- a/airbyte-integrations/connectors/source-pokeapi/Dockerfile +++ b/airbyte-integrations/connectors/source-pokeapi/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-posthog/Dockerfile b/airbyte-integrations/connectors/source-posthog/Dockerfile index 03dc99814904f..ba6216d6e1c29 100644 --- a/airbyte-integrations/connectors/source-posthog/Dockerfile +++ b/airbyte-integrations/connectors/source-posthog/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-prestashop/Dockerfile b/airbyte-integrations/connectors/source-prestashop/Dockerfile index 338e422ae9d43..320ddabe171ab 100644 --- a/airbyte-integrations/connectors/source-prestashop/Dockerfile +++ b/airbyte-integrations/connectors/source-prestashop/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-python-http-tutorial/Dockerfile b/airbyte-integrations/connectors/source-python-http-tutorial/Dockerfile index d27f2e3884faa..c495282fbfa74 100644 --- a/airbyte-integrations/connectors/source-python-http-tutorial/Dockerfile +++ b/airbyte-integrations/connectors/source-python-http-tutorial/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-qualaroo/Dockerfile b/airbyte-integrations/connectors/source-qualaroo/Dockerfile index fe7e0d1906b95..ec2c3aad88540 100644 --- a/airbyte-integrations/connectors/source-qualaroo/Dockerfile +++ b/airbyte-integrations/connectors/source-qualaroo/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-quickbooks-singer/Dockerfile b/airbyte-integrations/connectors/source-quickbooks-singer/Dockerfile index 25f96add8815d..9e5078a73a0ae 100644 --- a/airbyte-integrations/connectors/source-quickbooks-singer/Dockerfile +++ b/airbyte-integrations/connectors/source-quickbooks-singer/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-recharge/Dockerfile b/airbyte-integrations/connectors/source-recharge/Dockerfile index 1ff6f41bd45bb..52327e862d226 100644 --- a/airbyte-integrations/connectors/source-recharge/Dockerfile +++ b/airbyte-integrations/connectors/source-recharge/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-recurly/Dockerfile b/airbyte-integrations/connectors/source-recurly/Dockerfile index 6dcdbd125246b..6518a6a5da916 100644 --- a/airbyte-integrations/connectors/source-recurly/Dockerfile +++ b/airbyte-integrations/connectors/source-recurly/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-retently/Dockerfile b/airbyte-integrations/connectors/source-retently/Dockerfile index a5968047256b8..7ccaa4606ff3b 100644 --- a/airbyte-integrations/connectors/source-retently/Dockerfile +++ b/airbyte-integrations/connectors/source-retently/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim as base +FROM python:3.9-slim as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-s3/Dockerfile b/airbyte-integrations/connectors/source-s3/Dockerfile index ac922d6f6dc54..7229259512eb9 100644 --- a/airbyte-integrations/connectors/source-s3/Dockerfile +++ b/airbyte-integrations/connectors/source-s3/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim as base +FROM python:3.9-slim as base FROM base as builder RUN apt-get update diff --git a/airbyte-integrations/connectors/source-salesforce/Dockerfile b/airbyte-integrations/connectors/source-salesforce/Dockerfile index ae9873a54e5fa..3cefe1115ef4f 100644 --- a/airbyte-integrations/connectors/source-salesforce/Dockerfile +++ b/airbyte-integrations/connectors/source-salesforce/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base FROM base as builder diff --git a/airbyte-integrations/connectors/source-salesloft/Dockerfile b/airbyte-integrations/connectors/source-salesloft/Dockerfile index 79ed59caf2dfb..4efdbce574eb9 100644 --- a/airbyte-integrations/connectors/source-salesloft/Dockerfile +++ b/airbyte-integrations/connectors/source-salesloft/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-scaffold-source-http/Dockerfile b/airbyte-integrations/connectors/source-scaffold-source-http/Dockerfile index 6a21c8226134a..add764c26f4c2 100644 --- a/airbyte-integrations/connectors/source-scaffold-source-http/Dockerfile +++ b/airbyte-integrations/connectors/source-scaffold-source-http/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-scaffold-source-python/Dockerfile b/airbyte-integrations/connectors/source-scaffold-source-python/Dockerfile index 48439824cb991..30147c935d943 100644 --- a/airbyte-integrations/connectors/source-scaffold-source-python/Dockerfile +++ b/airbyte-integrations/connectors/source-scaffold-source-python/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-search-metrics/Dockerfile b/airbyte-integrations/connectors/source-search-metrics/Dockerfile index 1baeeeaee74ce..f2a89cd5501cc 100644 --- a/airbyte-integrations/connectors/source-search-metrics/Dockerfile +++ b/airbyte-integrations/connectors/source-search-metrics/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-sendgrid/Dockerfile b/airbyte-integrations/connectors/source-sendgrid/Dockerfile index 894635796fe55..4a84701406dfa 100644 --- a/airbyte-integrations/connectors/source-sendgrid/Dockerfile +++ b/airbyte-integrations/connectors/source-sendgrid/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-sentry/Dockerfile b/airbyte-integrations/connectors/source-sentry/Dockerfile index 39bdf6390c5dc..12c54ceaa2adb 100644 --- a/airbyte-integrations/connectors/source-sentry/Dockerfile +++ b/airbyte-integrations/connectors/source-sentry/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-shopify/Dockerfile b/airbyte-integrations/connectors/source-shopify/Dockerfile index db1c017b89156..e8d842c23592a 100644 --- a/airbyte-integrations/connectors/source-shopify/Dockerfile +++ b/airbyte-integrations/connectors/source-shopify/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-shortio/Dockerfile b/airbyte-integrations/connectors/source-shortio/Dockerfile index 94ae2eec6a081..7d0b19c573771 100644 --- a/airbyte-integrations/connectors/source-shortio/Dockerfile +++ b/airbyte-integrations/connectors/source-shortio/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-slack/Dockerfile b/airbyte-integrations/connectors/source-slack/Dockerfile index dd7d06391fdb1..32f8dca0b7fed 100644 --- a/airbyte-integrations/connectors/source-slack/Dockerfile +++ b/airbyte-integrations/connectors/source-slack/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-smartsheets/Dockerfile b/airbyte-integrations/connectors/source-smartsheets/Dockerfile index 99fb7994236f4..048f6095d3c40 100644 --- a/airbyte-integrations/connectors/source-smartsheets/Dockerfile +++ b/airbyte-integrations/connectors/source-smartsheets/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-snapchat-marketing/Dockerfile b/airbyte-integrations/connectors/source-snapchat-marketing/Dockerfile index b3855ff5f3f38..a135182c9b249 100644 --- a/airbyte-integrations/connectors/source-snapchat-marketing/Dockerfile +++ b/airbyte-integrations/connectors/source-snapchat-marketing/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base FROM base as builder diff --git a/airbyte-integrations/connectors/source-square/Dockerfile b/airbyte-integrations/connectors/source-square/Dockerfile index ef116771ded83..f1f4164ea0354 100644 --- a/airbyte-integrations/connectors/source-square/Dockerfile +++ b/airbyte-integrations/connectors/source-square/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/Dockerfile b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/Dockerfile index cc76538952d31..7569ec87749eb 100644 --- a/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/Dockerfile +++ b/airbyte-integrations/connectors/source-stock-ticker-api-tutorial/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # We change to a directory unique to us WORKDIR /airbyte/integration_code diff --git a/airbyte-integrations/connectors/source-strava/Dockerfile b/airbyte-integrations/connectors/source-strava/Dockerfile index 5b729efd234b1..42039b176342a 100644 --- a/airbyte-integrations/connectors/source-strava/Dockerfile +++ b/airbyte-integrations/connectors/source-strava/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-stripe/Dockerfile b/airbyte-integrations/connectors/source-stripe/Dockerfile index a90d7c815126a..9b6a706a22eca 100644 --- a/airbyte-integrations/connectors/source-stripe/Dockerfile +++ b/airbyte-integrations/connectors/source-stripe/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-surveymonkey/Dockerfile b/airbyte-integrations/connectors/source-surveymonkey/Dockerfile index 96e643b7ded75..c265cc7e6a32e 100644 --- a/airbyte-integrations/connectors/source-surveymonkey/Dockerfile +++ b/airbyte-integrations/connectors/source-surveymonkey/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-tempo/Dockerfile b/airbyte-integrations/connectors/source-tempo/Dockerfile index 17190dc251435..7308aa6d7b209 100644 --- a/airbyte-integrations/connectors/source-tempo/Dockerfile +++ b/airbyte-integrations/connectors/source-tempo/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-tiktok-marketing/Dockerfile b/airbyte-integrations/connectors/source-tiktok-marketing/Dockerfile index 13d5967d168f2..b9e7ada49d7f6 100644 --- a/airbyte-integrations/connectors/source-tiktok-marketing/Dockerfile +++ b/airbyte-integrations/connectors/source-tiktok-marketing/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-tplcentral/Dockerfile b/airbyte-integrations/connectors/source-tplcentral/Dockerfile index 6043239384db0..1a37735dfd614 100644 --- a/airbyte-integrations/connectors/source-tplcentral/Dockerfile +++ b/airbyte-integrations/connectors/source-tplcentral/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-trello/Dockerfile b/airbyte-integrations/connectors/source-trello/Dockerfile index 8fa1bfd8923cd..368b992ccd095 100644 --- a/airbyte-integrations/connectors/source-trello/Dockerfile +++ b/airbyte-integrations/connectors/source-trello/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-twilio/Dockerfile b/airbyte-integrations/connectors/source-twilio/Dockerfile index 5f05467ffef82..f4f1212fb6b74 100644 --- a/airbyte-integrations/connectors/source-twilio/Dockerfile +++ b/airbyte-integrations/connectors/source-twilio/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-typeform/Dockerfile b/airbyte-integrations/connectors/source-typeform/Dockerfile index 3239731630246..9188867605be4 100644 --- a/airbyte-integrations/connectors/source-typeform/Dockerfile +++ b/airbyte-integrations/connectors/source-typeform/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-us-census/Dockerfile b/airbyte-integrations/connectors/source-us-census/Dockerfile index 27024c230b37c..8ce00031e8b7d 100644 --- a/airbyte-integrations/connectors/source-us-census/Dockerfile +++ b/airbyte-integrations/connectors/source-us-census/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-woocommerce/Dockerfile b/airbyte-integrations/connectors/source-woocommerce/Dockerfile index ac2f837f07d26..1d8c09a77bd83 100644 --- a/airbyte-integrations/connectors/source-woocommerce/Dockerfile +++ b/airbyte-integrations/connectors/source-woocommerce/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-yahoo-finance-price/Dockerfile b/airbyte-integrations/connectors/source-yahoo-finance-price/Dockerfile index 593f57d0e31a4..62249e997e9e2 100644 --- a/airbyte-integrations/connectors/source-yahoo-finance-price/Dockerfile +++ b/airbyte-integrations/connectors/source-yahoo-finance-price/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-youtube-analytics/Dockerfile b/airbyte-integrations/connectors/source-youtube-analytics/Dockerfile index 2ec4d249d363a..f0f91b3a511ed 100644 --- a/airbyte-integrations/connectors/source-youtube-analytics/Dockerfile +++ b/airbyte-integrations/connectors/source-youtube-analytics/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-zendesk-chat/Dockerfile b/airbyte-integrations/connectors/source-zendesk-chat/Dockerfile index 5ec0398430dfd..0a3fd7cda035c 100644 --- a/airbyte-integrations/connectors/source-zendesk-chat/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-chat/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-zendesk-sunshine/Dockerfile b/airbyte-integrations/connectors/source-zendesk-sunshine/Dockerfile index ddfe861d3711f..d8c3461984234 100644 --- a/airbyte-integrations/connectors/source-zendesk-sunshine/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-sunshine/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-zendesk-support/Dockerfile b/airbyte-integrations/connectors/source-zendesk-support/Dockerfile index 639e74db066ea..69cb8c312ea39 100644 --- a/airbyte-integrations/connectors/source-zendesk-support/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-support/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base FROM base as builder diff --git a/airbyte-integrations/connectors/source-zendesk-talk/Dockerfile b/airbyte-integrations/connectors/source-zendesk-talk/Dockerfile index b3ef1ba773b10..06a9154b7226d 100644 --- a/airbyte-integrations/connectors/source-zendesk-talk/Dockerfile +++ b/airbyte-integrations/connectors/source-zendesk-talk/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim # Bash is installed for more convenient debugging. RUN apt-get update && apt-get install -y bash && rm -rf /var/lib/apt/lists/* diff --git a/airbyte-integrations/connectors/source-zenloop/Dockerfile b/airbyte-integrations/connectors/source-zenloop/Dockerfile index ca6b601ec0127..b25105603d053 100644 --- a/airbyte-integrations/connectors/source-zenloop/Dockerfile +++ b/airbyte-integrations/connectors/source-zenloop/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/airbyte-integrations/connectors/source-zuora/Dockerfile b/airbyte-integrations/connectors/source-zuora/Dockerfile index d9a3d43e7ca54..e7925278a3db2 100644 --- a/airbyte-integrations/connectors/source-zuora/Dockerfile +++ b/airbyte-integrations/connectors/source-zuora/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base # build and load all requirements FROM base as builder diff --git a/buildSrc/src/main/groovy/airbyte-python.gradle b/buildSrc/src/main/groovy/airbyte-python.gradle index 9ec0ac07987da..ef710f5a5bf4d 100644 --- a/buildSrc/src/main/groovy/airbyte-python.gradle +++ b/buildSrc/src/main/groovy/airbyte-python.gradle @@ -79,7 +79,7 @@ class AirbytePythonPlugin implements Plugin { project.python { envPath = venvDirectoryName - minPythonVersion = '3.7' + minPythonVersion = '3.9' scope = 'VIRTUALENV' installVirtualenv = true pip 'pip:21.3.1' diff --git a/docs/connector-development/cdk-python/README.md b/docs/connector-development/cdk-python/README.md index 2e3262ba4d446..0e25dcc78fb04 100644 --- a/docs/connector-development/cdk-python/README.md +++ b/docs/connector-development/cdk-python/README.md @@ -69,7 +69,7 @@ You can find a complete tutorial for implementing an HTTP source connector in [t ### First time setup -We assume `python` points to python >=3.7. +We assume `python` points to python >=3.9. Setup a virtual env: diff --git a/docs/connector-development/tutorials/build-a-connector-the-hard-way.md b/docs/connector-development/tutorials/build-a-connector-the-hard-way.md index a781e0faa4354..98f70354f135a 100644 --- a/docs/connector-development/tutorials/build-a-connector-the-hard-way.md +++ b/docs/connector-development/tutorials/build-a-connector-the-hard-way.md @@ -24,11 +24,11 @@ To run this tutorial, you'll need: * Docker, Python, and Java with the versions listed in the [tech stack section](../../understanding-airbyte/tech-stack.md). * The `requests` Python package installed via `pip install requests` \(or `pip3` if `pip` is linked to a Python2 installation on your system\) -**A note on running Python**: all the commands below assume that `python` points to a version of Python 3.7 or greater. Verify this by running +**A note on running Python**: all the commands below assume that `python` points to a version of Python 3.9 or greater. Verify this by running ```bash $ python --version -Python 3.7.0 +Python 3.9.11 ``` On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3` . Otherwise, make sure to install Python 3 before beginning. @@ -882,7 +882,7 @@ A full connector in less than 200 lines of code. Not bad! We're now ready to pac Our connector is very lightweight, so the Dockerfile needed to run it is very light as well. We edit the autogenerated `Dockerfile` so that its contents are as followed: ```Dockerfile -FROM python:3.7-slim +FROM python:3.9-slim # We change to a directory unique to us WORKDIR /airbyte/integration_code diff --git a/docs/connector-development/tutorials/cdk-speedrun-deprecated.md b/docs/connector-development/tutorials/cdk-speedrun-deprecated.md index 13263e1e746d0..1a86c13c48c81 100644 --- a/docs/connector-development/tutorials/cdk-speedrun-deprecated.md +++ b/docs/connector-development/tutorials/cdk-speedrun-deprecated.md @@ -6,7 +6,7 @@ This is a blazing fast guide to building an HTTP source connector. Think of it a ## Dependencies -1. Python >= 3.7 +1. Python >= 3.9 2. Docker 3. NodeJS diff --git a/docs/connector-development/tutorials/cdk-speedrun.md b/docs/connector-development/tutorials/cdk-speedrun.md index fdefb56ba76f3..85caf68e070b3 100644 --- a/docs/connector-development/tutorials/cdk-speedrun.md +++ b/docs/connector-development/tutorials/cdk-speedrun.md @@ -10,7 +10,7 @@ If you are a visual learner and want to see a video version of this guide going ## Dependencies -1. Python >= 3.7 +1. Python >= 3.9 2. Docker 3. NodeJS diff --git a/docs/connector-development/tutorials/cdk-tutorial-python-http/0-getting-started.md b/docs/connector-development/tutorials/cdk-tutorial-python-http/0-getting-started.md index cbee09971d102..a1bc7b2227253 100644 --- a/docs/connector-development/tutorials/cdk-tutorial-python-http/0-getting-started.md +++ b/docs/connector-development/tutorials/cdk-tutorial-python-http/0-getting-started.md @@ -6,11 +6,11 @@ This is a step-by-step guide for how to create an Airbyte source in Python to re ## Requirements -* Python >= 3.7 +* Python >= 3.9 * Docker * NodeJS \(only used to generate the connector\). We'll remove the NodeJS dependency soon. -All the commands below assume that `python` points to a version of python >=3.7.0. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. +All the commands below assume that `python` points to a version of python >=3.9.0. On some systems, `python` points to a Python2 installation and `python3` points to Python3. If this is the case on your machine, substitute all `python` commands in this guide with `python3`. ## Checklist diff --git a/docs/contributing-to-airbyte/developing-locally.md b/docs/contributing-to-airbyte/developing-locally.md index feeccd5f6ed57..daa5b8ad01ecd 100644 --- a/docs/contributing-to-airbyte/developing-locally.md +++ b/docs/contributing-to-airbyte/developing-locally.md @@ -4,7 +4,7 @@ The following technologies are required to build Airbyte locally. 1. [`Java 17`](https://jdk.java.net/archive/) 2. `Node 16` -3. `Python 3.7` +3. `Python 3.9` 4. `Docker` 5. `Jq` diff --git a/docs/understanding-airbyte/tech-stack.md b/docs/understanding-airbyte/tech-stack.md index cb5a9476007ce..f3129051398f3 100644 --- a/docs/understanding-airbyte/tech-stack.md +++ b/docs/understanding-airbyte/tech-stack.md @@ -13,7 +13,7 @@ Connectors can be written in any language. However the most common languages are: -* Python 3.7.0 +* Python 3.9.0 * [Java 17](https://jdk.java.net/archive/) ## **Frontend** diff --git a/octavia-cli/.python-version b/octavia-cli/.python-version index 89a1ad7ad3cad..a9f8d1be337f7 100644 --- a/octavia-cli/.python-version +++ b/octavia-cli/.python-version @@ -1 +1 @@ -3.8.12 +3.9.11 diff --git a/octavia-cli/Dockerfile b/octavia-cli/Dockerfile index c1aa2d3ed79d3..0f3cf30a9ef20 100644 --- a/octavia-cli/Dockerfile +++ b/octavia-cli/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.8.12-slim as base +FROM python:3.9-slim as base RUN apt-get upgrade \ && pip install --upgrade pip diff --git a/tools/bin/check_requirements.sh b/tools/bin/check_requirements.sh index 8b61fa49171c8..23a29cd6c6fae 100755 --- a/tools/bin/check_requirements.sh +++ b/tools/bin/check_requirements.sh @@ -41,7 +41,7 @@ if [[ "$(which pip)" && "$(pip --version)" ]]; printf "not installed, must have version ${desired} at least" fi; printf "\n"; -desired="3.7.9" +desired="3.9.11" printf "Python "; if [[ "$(which python3)" && "$(python3 --version)" ]]; then diff --git a/tools/ci_code_validator/ci_changes_detection/main.py b/tools/ci_code_validator/ci_changes_detection/main.py index 3d2188a26af89..af949f95511d9 100644 --- a/tools/ci_code_validator/ci_changes_detection/main.py +++ b/tools/ci_code_validator/ci_changes_detection/main.py @@ -4,10 +4,9 @@ import json import sys from pathlib import Path -from typing import Dict, List, Optional +from typing import Dict, List from ci_common_utils import Logger - from ci_sonar_qube import ROOT_DIR LOGGER = Logger() @@ -19,28 +18,31 @@ ) -def folder_generator(dir_path: Path) -> Path: +def get_module_folder(dir_path: Path) -> Path: while dir_path and str(dir_path) != dir_path.root and dir_path != dir_path.parent: + parent_path = dir_path.parent if dir_path.is_dir(): - yield dir_path + for available_folder in AVAILABLE_SCAN_FOLDERS: + if str(parent_path).endswith(available_folder): + """first child of known folder""" + return dir_path + """keep looking up""" dir_path = dir_path.parent - -def find_py_module(changed_path: Path) -> Optional[Path]: - """All Python connectors have setup.py file into own sortware folders""" - for dir_path in folder_generator(changed_path): - setup_py_file = dir_path / "setup.py" - if setup_py_file.is_file(): - return dir_path return None -def find_java_module(changed_path: Path) -> Optional[Path]: +def get_module_type(dir_path: Path) -> Path: """All Java connectors have a folder src/main/java into own folders""" - for dir_path in folder_generator(changed_path): - required_java_dir = dir_path / "src/main/java" - if required_java_dir.is_dir(): - return dir_path + required_java_dir = dir_path / "src/main/java" + if required_java_dir.is_dir(): + return "java" + + """All Python connectors have setup.py file into own software folders""" + setup_py_file = dir_path / "setup.py" + if setup_py_file.is_file(): + return "py" + return None @@ -55,26 +57,18 @@ def list_changed_modules(changed_files: List[str]) -> List[Dict[str, str]]: file_path = ROOT_DIR / file_path else: file_path = Path(file_path) - module_folder = find_py_module(file_path) - if module_folder: - module_folders[module_folder] = "py" - continue - module_folder = find_java_module(file_path) + + module_folder = get_module_folder(file_path) if module_folder: - module_folders[module_folder] = "java" + module_type = get_module_type(module_folder) + if not module_type: + LOGGER.info(f"skip the folder {module_folder}...") + else: + module_folders[module_folder] = module_type modules = [] for module_folder, lang in module_folders.items(): module_folder = str(module_folder) - has = False - for available_folder in AVAILABLE_SCAN_FOLDERS: - if available_folder in module_folder: - has = True - break - if not has: - LOGGER.info(f"skip the folder {module_folder}...") - continue - parts = module_folder.split("/") module_name = "/".join(parts[-2:]) modules.append({"folder": module_folder, "lang": lang, "module": module_name}) diff --git a/tools/ci_code_validator/ci_sonar_qube/__init__.py b/tools/ci_code_validator/ci_sonar_qube/__init__.py index 0be1d14aa82d5..a6e83a6386e8a 100644 --- a/tools/ci_code_validator/ci_sonar_qube/__init__.py +++ b/tools/ci_code_validator/ci_sonar_qube/__init__.py @@ -1,3 +1,6 @@ +# +# Copyright (c) 2021 Airbyte, Inc., all rights reserved. +# import os from pathlib import Path @@ -9,4 +12,4 @@ while str(ROOT_DIR) != "/" and not (ROOT_DIR / "gradlew").is_file(): ROOT_DIR = ROOT_DIR.parent if str(ROOT_DIR) == "/": - LOGGER.critical("this script must be executed into the Airbite repo only") + LOGGER.critical("this script must be executed into the Airbyte repo only") diff --git a/tools/ci_code_validator/setup.py b/tools/ci_code_validator/setup.py index b4a1a853822fa..62e2cd9788463 100644 --- a/tools/ci_code_validator/setup.py +++ b/tools/ci_code_validator/setup.py @@ -13,13 +13,7 @@ "mypy==0.930", ] -TEST_REQUIREMENTS = [ - "requests-mock", - "pytest", - "black", - "lxml", - "isort" -] +TEST_REQUIREMENTS = ["requests-mock", "pytest", "black", "lxml", "isort"] setup( version="0.0.0", @@ -29,15 +23,14 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - python_requires='>=3.7', + python_requires=">=3.9", extras_require={ "tests": TEST_REQUIREMENTS, - }, entry_points={ - 'console_scripts': [ - 'ci_sonar_qube = ci_sonar_qube.main:main', - 'ci_changes_detection = ci_changes_detection.main:main', + "console_scripts": [ + "ci_sonar_qube = ci_sonar_qube.main:main", + "ci_changes_detection = ci_changes_detection.main:main", ], }, ) diff --git a/tools/ci_common_utils/setup.py b/tools/ci_common_utils/setup.py index 8e24d60c2909d..2c5aa9692ece1 100644 --- a/tools/ci_common_utils/setup.py +++ b/tools/ci_common_utils/setup.py @@ -17,7 +17,7 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - python_requires='>=3.7', + python_requires=">=3.9", extras_require={ "tests": TEST_REQUIREMENTS, }, diff --git a/tools/ci_credentials/setup.py b/tools/ci_credentials/setup.py index f4c4136d534ff..2c06e0a3cbbf7 100644 --- a/tools/ci_credentials/setup.py +++ b/tools/ci_credentials/setup.py @@ -17,13 +17,13 @@ author_email="contact@airbyte.io", packages=find_packages(), install_requires=MAIN_REQUIREMENTS, - python_requires='>=3.7', + python_requires=">=3.9", extras_require={ "tests": TEST_REQUIREMENTS, }, entry_points={ - 'console_scripts': [ - 'ci_credentials = ci_credentials.main:main', + "console_scripts": [ + "ci_credentials = ci_credentials.main:main", ], }, ) diff --git a/tools/code-generator/Dockerfile b/tools/code-generator/Dockerfile index e70ba0fae7140..cb3253f03933e 100644 --- a/tools/code-generator/Dockerfile +++ b/tools/code-generator/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7.11-alpine3.14 as base +FROM python:3.9.11-alpine3.15 as base FROM base as builder diff --git a/tools/openapi2jsonschema/Dockerfile b/tools/openapi2jsonschema/Dockerfile index 4c0f73451a5f4..0e48a462bf32c 100644 --- a/tools/openapi2jsonschema/Dockerfile +++ b/tools/openapi2jsonschema/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.7-slim +FROM python:3.9-slim RUN apt-get update && apt-get install -y git && rm -rf /var/lib/apt/lists/*