Skip to content

Commit 01be2ac

Browse files
Merge branch 'master' into leti/experiment-add-source-in-signup
* master: (59 commits) 🪟🔧 Remove styled components (round 1) (#18766) Bump Airbyte version from 0.40.17 to 0.40.18 (#18827) ci: add job and run id to test reports (#18832) hide ConfigPersistence inside ConfigRepository to discourage use (#18803) Remove the bulk actions from ConfigPersistence (#18800) remove config persistence from seeding logic (#18749) Remove ConfigPersistence usage from SecretsMigrator (#18747) Add normalization changelog and bump normalization version in platform (#18813) 🐛Source Exchange Rates: Fix handling error during check connection (#18726) 🐛Destination Google Sheets: Fix empty headers list (#18729) Bump helm chart version reference to 0.40.40 (#18815) Use equalsIgnoreCase (#18810) [charts/airbyte-cron] Cleanup env vars (#18787) 🐛 Source Facebook Marketing: reduce request limit after specific error (#18734) Parameterize test_empty_streams and test_stream_with_1_airbyte_column by destination (#18197) Correct coinmarket spec (#18790) ci: use custom test-reporter action to upload job results (#18004) Fix unit tests in source relational db (#18789) query to include data plane attributes (#18531) Mark/update notification settings design (#18159) ...
2 parents 193a644 + 578f40a commit 01be2ac

File tree

526 files changed

+9851
-4005
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

526 files changed

+9851
-4005
lines changed

.bumpversion.cfg

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
[bumpversion]
2-
current_version = 0.40.17
2+
current_version = 0.40.18
33
commit = False
44
tag = False
55
parse = (?P<major>\d+)\.(?P<minor>\d+)\.(?P<patch>\d+)(\-[a-z]+)?
@@ -30,6 +30,8 @@ serialize =
3030

3131
[bumpversion:file:charts/airbyte-bootloader/Chart.yaml]
3232

33+
[bumpversion:file:charts/airbyte-cron/Chart.yaml]
34+
3335
[bumpversion:file:charts/airbyte-server/Chart.yaml]
3436

3537
[bumpversion:file:charts/airbyte-temporal/Chart.yaml]

.env

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,7 +10,7 @@
1010

1111

1212
### SHARED ###
13-
VERSION=0.40.17
13+
VERSION=0.40.18
1414

1515
# When using the airbyte-db via default docker image
1616
CONFIG_ROOT=/data

.github/actions/build-branch/action.yml

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ inputs:
66
required: false
77
outputs:
88
branch_version_tag:
9-
description: 'Tag used for jars and docker images. Either user specified or auto generated as `dev-<commit_hash>`'
9+
description: "Tag used for jars and docker images. Either user specified or auto generated as `dev-<commit_hash>`"
1010
value: ${{ steps.parse-input.outputs.branch_version_tag }}
1111
runs:
1212
using: "composite"
@@ -17,8 +17,8 @@ runs:
1717
run: |-
1818
# if the *branch_version_tag* input param is not specified, then generate it as 'dev-<commit_hash>`
1919
#
20-
[[ "${{ inputs.branch_version_tag }}" != '' ]] && echo "::set-output name=branch_version_tag::${{ inputs.branch_version_tag }}" \
21-
|| { short_hash=$(git rev-parse --short HEAD); echo "::set-output name=branch_version_tag::dev-$short_hash"; }
20+
[[ "${{ inputs.branch_version_tag }}" != '' ]] && echo "branch_version_tag=${{ inputs.branch_version_tag }}" >> $GITHUB_OUTPUT \
21+
|| { short_hash=$(git rev-parse --short HEAD); echo "branch_version_tag=dev-$short_hash" >> $GITHUB_OUTPUT ; }
2222
2323
- uses: actions/setup-java@v1
2424
with:
@@ -49,4 +49,3 @@ runs:
4949
- name: Publish to Maven Local
5050
run: VERSION=${{ steps.parse-input.outputs.branch_version_tag }} SUB_BUILD=PLATFORM ./gradlew publishToMavenLocal
5151
shell: bash
52-

.github/actions/ci-py-tests/action.yml

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ runs:
3232
REPORT_FOLDER="${{ inputs.module-folder }}/coverage/"
3333
./gradlew --no-daemon -Preports_folder=${REPORT_FOLDER} ${GRADLE_JOB}
3434
35-
echo "::set-output name=coverage-paths::coverage/coverage.xml"
35+
echo "coverage-paths=coverage/coverage.xml" >> $GITHUB_OUTPUT
3636
3737
- name: Upload coverage to Codecov
3838
uses: codecov/codecov-action@v2
@@ -48,7 +48,7 @@ runs:
4848
REPORT_FOLDER="${{ inputs.module-folder }}/reports/"
4949
./gradlew --no-daemon -Preports_folder=${REPORT_FOLDER} ${GRADLE_JOB}
5050
51-
echo "::set-output name=mypy-logs::reports/mypy.log"
52-
echo "::set-output name=black-diff::reports/black.diff"
53-
echo "::set-output name=isort-diff::reports/isort.diff"
54-
echo "::set-output name=flake8-logs::reports/flake.txt"
51+
echo "mypy-logs=reports/mypy.log" >> $GITHUB_OUTPUT
52+
echo "black-diff=reports/black.diff" >> $GITHUB_OUTPUT
53+
echo "isort-diff=reports/isort.diff" >> $GITHUB_OUTPUT
54+
echo "flake8-logs=reports/flake.txt" >> $GITHUB_OUTPUT

.github/actions/ci-tests-runner/action.yml

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -67,8 +67,8 @@ runs:
6767
IPS=($(hostname -I))
6868
LOCAL_IP_PORT="${IPS[0]}:${PORT}"
6969
gcloud compute start-iap-tunnel sonarqube-1-vm 80 --local-host-port=${LOCAL_IP_PORT} --zone=europe-central2-a --project dataline-integration-testing &
70-
echo ::set-output name=pid::$!
71-
echo "::set-output name=sonar-host::http://${LOCAL_IP_PORT}/"
70+
echo pid=$! >> $GITHUB_OUTPUT
71+
echo "sonar-host=http://${LOCAL_IP_PORT}/" >> $GITHUB_OUTPUT
7272
echo "::echo::on"
7373
7474
- name: Python Tests
@@ -124,18 +124,18 @@ runs:
124124
fi
125125
126126
# join the array to string format
127-
echo ::set-output name=external_reports::$(IFS=, ; echo "${REPORT_FILES[*]}")
128-
echo ::set-output name=options::$(IFS=' ' ; echo "${OPTIONS[*]}")
127+
echo external_reports=$(IFS=, ; echo "${REPORT_FILES[*]}") >> $GITHUB_OUTPUT
128+
echo options=$(IFS=' ' ; echo "${OPTIONS[*]}") >> $GITHUB_OUTPUT
129129
130130
- name: Create SonarQube Project
131131
shell: bash
132132
id: create-sq-project
133133
run: |
134134
ci_sonar_qube --pr ${{ inputs.pull-request-id }} --create --module ${{ inputs.module-name }} --host ${{ steps.gcloud-tunnel.outputs.sonar-host }} --token ${{ inputs.sonar-token }}
135-
echo "::set-output name=sq_project_name::$(ci_sonar_qube --pr ${{ inputs.pull-request-id }} --print_key --module ${{ inputs.module-name }})"
135+
echo "sq_project_name=$(ci_sonar_qube --pr ${{ inputs.pull-request-id }} --print_key --module ${{ inputs.module-name }})" >> $GITHUB_OUTPUT
136136
ROOT_DIR=$(git rev-parse --show-toplevel)
137137
MODULE_DIR=$(python -c "print('${{ inputs.module-folder }}'.replace('${ROOT_DIR}', '.'))")
138-
echo "::set-output name=module_dir::${MODULE_DIR}"
138+
echo "module_dir::${MODULE_DIR}" >> $GITHUB_OUTPUT
139139
140140
- name: SonarQube Scan
141141

@@ -168,7 +168,7 @@ runs:
168168
body="${body//'%'/'%25'}"
169169
body="${body//$'\n'/'%0A'}"
170170
body="${body//$'\r'/'%0D'}"
171-
echo "::set-output name=sq-report::$body"
171+
echo "sq-report=$body" >> $GITHUB_OUTPUT
172172
173173
- name: Add Comment
174174
if: ${{ github.event_name == 'pull_request' }}

.github/actions/start-aws-runner/action.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@ inputs:
99
required: true
1010
ec2-image-id:
1111
# github-self-hosted-runner-ubuntu-20-100g-disk-with-cypress-deps
12-
default: "ami-0f23be2f917510c26"
12+
default: "ami-005924fb76f7477ce"
1313
required: true
1414
ec2-instance-type:
1515
default: "c5.2xlarge"
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
<!--- this comment is for `report-connectors-dependency.yml` identification, do not remove -->
2+
3+
NOTE ⚠️ Changes in this PR affect the following connectors. Make sure to run corresponding integration tests:
4+
5+
<details>
6+
<summary>
7+
Sources ({num_sources})
8+
9+
</summary>
10+
11+
{sources}
12+
13+
</details>
14+
15+
<details>
16+
<summary>
17+
Destinations ({num_destinations})
18+
19+
</summary>
20+
21+
{destinations}
22+
23+
</details>
24+
25+
{others}

.github/workflows/commands-for-testing-tool.yml

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -26,12 +26,12 @@ jobs:
2626
id: getref
2727
run: |
2828
pr_info="$(curl ${{ github.event.issue.pull_request.url }})"
29-
echo ::set-output name=ref::"$(echo $pr_info | jq -r '.head.ref')"
30-
echo ::set-output name=repo::"$(echo $pr_info | jq -r '.head.repo.full_name')"
29+
echo ref="$(echo $pr_info | jq -r '.head.ref')" >> $GITHUB_OUTPUT
30+
echo repo="$(echo $pr_info | jq -r '.head.repo.full_name')" >> $GITHUB_OUTPUT
3131
- name: Get comment id
3232
id: comment-info
3333
run: |
34-
echo ::set-output name=comment-id::"${{ github.event.comment.id }}"
34+
echo comment-id="${{ github.event.comment.id }}" >> $GITHUB_OUTPUT
3535
- name: Get command
3636
id: regex
3737
uses: AsasInnab/regex-action@v1
@@ -139,4 +139,4 @@ jobs:
139139
comment-id: ${{ needs.set-params.outputs.comment-id }}
140140
body: |
141141
> :x: https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}
142-
reactions: -1
142+
reactions: -1

.github/workflows/create-release.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ jobs:
3232
# The sed removes carriage returns so that the body is easier to parse later, and
3333
# escapes backticks so that they are not executed as commands.
3434
PR_BODY=$(printf '%s' "$PR" | jq '.[0].body' | sed 's/\\r//g' | sed 's/`/\\`/g')
35-
echo ::set-output name=pr_body::${PR_BODY}
35+
echo pr_body=${PR_BODY} >> $GITHUB_OUTPUT
3636
- name: Extract Changelog
3737
id: extract_changelog
3838
shell: bash
@@ -61,7 +61,7 @@ jobs:
6161
shell: bash
6262
run: |
6363
VERSION=$(grep -w VERSION .env | cut -d"=" -f2)
64-
echo ::set-output name=VERSION::${VERSION}
64+
echo VERSION=${VERSION} >> $GITHUB_OUTPUT
6565
- name: Create Release
6666
id: create_release
6767
uses: ncipollo/release-action@v1

.github/workflows/deploy-docs-site.yml

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -40,12 +40,11 @@ jobs:
4040
env:
4141
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN_AIRBYTE_TEAM }}
4242
with:
43-
# 'C03BEADRPNY' channel => '#oss-master-build-failure'
43+
# 'C032Y32T065' channel => '#docs'
4444
args: >-
4545
{\"channel\":\"C03BEADRPNY\", \"blocks\":[
4646
{\"type\":\"divider\"},
4747
{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\"OSS Docs build fails on the latest master :bangbang: \n\n\"}},
4848
{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\"_merged by_: *${{ github.actor }}* \n\"}},
4949
{\"type\":\"section\",\"text\":{\"type\":\"mrkdwn\",\"text\":\" :octavia-shocked: <https://github.com/${{github.repository}}/actions/runs/${{github.run_id}}|View Action Run> :octavia-shocked: \n\"}},
5050
{\"type\":\"divider\"}]}
51-

.github/workflows/gradle.yml

Lines changed: 106 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -86,6 +86,7 @@ jobs:
8686
${{ secrets.SUPERTOPHER_PAT }} \
8787
${{ secrets.DAVINCHIA_PAT }}
8888
89+
8990
# Uncomment to debug.
9091
# changes-output:
9192
# name: "Debug Change Detection Logic"
@@ -237,6 +238,37 @@ jobs:
237238
- name: Ensure no file change
238239
run: git --no-pager diff && test -z "$(git --no-pager diff)"
239240

241+
- name: Publish Connectors Base Test Results
242+
uses: EnricoMi/publish-unit-test-result-action@v2
243+
id: connectors-test-results
244+
if: always()
245+
with:
246+
junit_files: "/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml\n/actions-runner/_work/airbyte/airbyte/*/*/build/test-results/*/*.xml"
247+
comment_mode: off
248+
json_file: connectors_base_results.json
249+
json_test_case_results: true
250+
check_name: "Connectors Base Test Results"
251+
252+
- name: Setup Google Cloud SDK
253+
if: always()
254+
uses: google-github-actions/setup-gcloud@v0
255+
with:
256+
service_account_key: ${{ secrets.GKE_TEST_SA_KEY }}
257+
export_default_credentials: true
258+
259+
- name: Prep Test Results For GCS
260+
if: always()
261+
run: |
262+
python tools/bin/prep_test_results_for_gcs.py --json connectors_base_results.json --jobid $GITHUB_JOB --runid $GITHUB_RUN_ID
263+
264+
- name: Upload Test Results to GCS
265+
if: always()
266+
run: |
267+
gcs_bucket_name="dev-ab-ci-run-results"
268+
filename=$(echo "${{ fromJSON( steps.connectors-test-results.outputs.json ).check_url }}" | sed 's@.*/@@')
269+
echo "$filename"
270+
gsutil -h "Cache-Control:public" cp connectors_base_results.jsonl "gs://$gcs_bucket_name/oss/$filename.jsonl"
271+
240272
- name: Generate Test Report
241273
uses: dorny/test-reporter@v1
242274
if: always()
@@ -524,6 +556,42 @@ jobs:
524556
- name: Automatic Migration Acceptance Test
525557
run: SUB_BUILD=PLATFORM ./gradlew :airbyte-tests:automaticMigrationAcceptanceTest --scan -i
526558

559+
- uses: actions/setup-python@v2
560+
if: always()
561+
with:
562+
python-version: "3.9"
563+
564+
- name: Publish Platform Test Results
565+
uses: EnricoMi/publish-unit-test-result-action@v2
566+
id: platform-results
567+
if: always()
568+
with:
569+
junit_files: "/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml\n/actions-runner/_work/airbyte/airbyte/*/*/build/test-results/*/*.xml"
570+
comment_mode: off
571+
json_file: platform_results.json
572+
json_test_case_results: true
573+
check_name: "Platform Test Results"
574+
575+
- name: Setup Google Cloud SDK
576+
if: always()
577+
uses: google-github-actions/setup-gcloud@v0
578+
with:
579+
service_account_key: ${{ secrets.GKE_TEST_SA_KEY }}
580+
export_default_credentials: true
581+
582+
- name: Prep Test Results For GCS
583+
if: always()
584+
run: |
585+
python tools/bin/prep_test_results_for_gcs.py --json platform_results.json --jobid $GITHUB_JOB --runid $GITHUB_RUN_ID
586+
587+
- name: Upload Test Results to GCS
588+
if: always()
589+
run: |
590+
gcs_bucket_name="dev-ab-ci-run-results"
591+
filename=$(echo "${{ fromJSON( steps.platform-results.outputs.json ).check_url }}" | sed 's@.*/@@')
592+
echo "$filename"
593+
gsutil -h "Cache-Control:public" cp platform_results.jsonl "gs://$gcs_bucket_name/oss/$filename.jsonl"
594+
527595
- name: Generate Test Report
528596
uses: dorny/test-reporter@v1
529597
if: always() # run this step even if previous step failed
@@ -543,15 +611,6 @@ jobs:
543611
key: ${{ secrets.BUILDPULSE_ACCESS_KEY_ID }}
544612
secret: ${{ secrets.BUILDPULSE_SECRET_ACCESS_KEY }}
545613

546-
- name: Upload test results to Github for analysis
547-
if: '!cancelled()' # Run this step even when the tests fail. Skip if the workflow is cancelled.
548-
uses: actions/upload-artifact@v3
549-
with:
550-
path: |
551-
/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml
552-
/actions-runner/_work/airbyte/airbyte/*/*/build/test-results/*/*.xml
553-
name: test-results-build
554-
555614
# In case of self-hosted EC2 errors, remove this block.
556615
stop-platform-build-runner:
557616
name: "Platform: Stop Build EC2 Runner"
@@ -683,6 +742,42 @@ jobs:
683742
run: |
684743
CI=true IS_MINIKUBE=true ./tools/bin/acceptance_test_kube.sh
685744
745+
- uses: actions/setup-python@v2
746+
if: always()
747+
with:
748+
python-version: "3.9"
749+
750+
- name: Publish Kube Test Results
751+
id: kube-results
752+
uses: EnricoMi/publish-unit-test-result-action@v2
753+
if: always()
754+
with:
755+
junit_files: "/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml\n/actions-runner/_work/airbyte/airbyte/*/*/build/test-results/*/*.xml"
756+
comment_mode: off
757+
json_file: kube_results.json
758+
json_test_case_results: true
759+
check_name: "Kube Test Results"
760+
761+
- name: Setup Google Cloud SDK
762+
if: always()
763+
uses: google-github-actions/setup-gcloud@v0
764+
with:
765+
service_account_key: ${{ secrets.GKE_TEST_SA_KEY }}
766+
export_default_credentials: true
767+
768+
- name: Prep Test Results For GCS
769+
if: always()
770+
run: |
771+
python tools/bin/prep_test_results_for_gcs.py --json kube_results.json --jobid $GITHUB_JOB --runid $GITHUB_RUN_ID
772+
773+
- name: Upload Test Results to GCS
774+
if: always()
775+
run: |
776+
gcs_bucket_name="dev-ab-ci-run-results"
777+
filename=$(echo "${{ fromJSON( steps.kube-results.outputs.json ).check_url }}" | sed 's@.*/@@')
778+
echo "$filename"
779+
gsutil -h "Cache-Control:public" cp kube_results.jsonl "gs://$gcs_bucket_name/oss/$filename.jsonl"
780+
686781
- name: Generate Test Report
687782
uses: dorny/test-reporter@v1
688783
if: always() # run this step even if previous step failed
@@ -701,20 +796,13 @@ jobs:
701796
key: ${{ secrets.BUILDPULSE_ACCESS_KEY_ID }}
702797
secret: ${{ secrets.BUILDPULSE_SECRET_ACCESS_KEY }}
703798

704-
- name: Upload test results to Github for analysis
705-
if: '!cancelled()' # Run this step even when the tests fail. Skip if the workflow is cancelled.
706-
uses: actions/upload-artifact@v3
707-
with:
708-
path: |
709-
/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml
710-
/actions-runner/_work/airbyte/airbyte/*/*/build/test-results/*/*.xml
711-
name: test-results-kube
712-
713799
- uses: actions/upload-artifact@v2
714800
if: failure()
715801
with:
716802
name: Kubernetes Logs
717803
path: /tmp/kubernetes_logs/*
804+
805+
718806
# In case of self-hosted EC2 errors, remove this block.
719807
stop-kube-acceptance-test-runner:
720808
name: "Platform: Stop Kube Acceptance Test EC2 Runner"
@@ -861,13 +949,6 @@ jobs:
861949
# SECRET_STORE_GCP_PROJECT_ID: ${{ secrets.SECRET_STORE_GCP_PROJECT_ID }}
862950
# run: |
863951
# CI=true IS_MINIKUBE=true ./tools/bin/acceptance_test_kube_helm.sh
864-
# - name: Generate Test Report
865-
# uses: dorny/test-reporter@v1
866-
# if: always() # run this step even if previous step failed
867-
# with:
868-
# name: Platform Helm E2E Test Report
869-
# path: '/actions-runner/_work/airbyte/airbyte/*/build/test-results/*/*.xml'
870-
# reporter: java-junit
871952
#
872953
# - uses: actions/upload-artifact@v2
873954
# if: failure()

.github/workflows/publish-command.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -175,7 +175,7 @@ jobs:
175175
stripped_connector="$(echo "${{ github.event.inputs.connector }}" | tr -d ' ')"
176176
middle=${stripped_connector//,/$replace}
177177
full="$start$middle$end"
178-
echo "::set-output name=connectorjson::$full"
178+
echo "connectorjson=$full" >> $GITHUB_OUTPUT
179179
write-initial-output-to-comment:
180180
name: Set up git comment
181181
if: github.event.inputs.comment-id

0 commit comments

Comments
 (0)