Skip to content

Commit

Permalink
Check downstream backwards compatibility (#600)
Browse files Browse the repository at this point in the history
## Changes
Comments on PR whenever downstream fails to compile or fails unit tests.
See implementation for more details:
- databrickslabs/sandbox#141

Backwards incompatible changes would result in comments similar to:
<img width="832" alt="image"
src="https://github.com/databricks/databricks-sdk-py/assets/259697/b1554491-6a80-417b-a2be-1350fa09b424">

Current downstream checking graph:

```mermaid
graph TD

pysdk[Python SDK: ***this PR***] --> ucx
pysdk --> blueprint

blueprint --> lsql
blueprint --> ucx
blueprint --> remorph

lsql --> ucx
lsql --> remorph
```


## Tests

Manual

---------

Signed-off-by: Serge Smertin <[email protected]>
  • Loading branch information
nfx authored Apr 5, 2024
1 parent d91f353 commit 3c5b176
Showing 1 changed file with 54 additions and 0 deletions.
54 changes: 54 additions & 0 deletions .github/workflows/downstreams.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
name: downstreams

on:
pull_request:
types: [opened, synchronize]
merge_group:
types: [checks_requested]
push:
# Always run on push to main. The build cache can only be reused
# if it was saved by a run from the repository's default branch.
# The run result will be identical to that from the merge queue
# because the commit is identical, yet we need to perform it to
# seed the build cache.
branches:
- main

permissions:
id-token: write
contents: read
pull-requests: write

jobs:
compatibility:
strategy:
fail-fast: false
matrix:
downstream:
- name: ucx
org: databrickslabs
- name: blueprint
org: databrickslabs
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Install Python
uses: actions/setup-python@v4
with:
python-version: '3.10'

- name: Install toolchain
run: |
pip install hatch==1.9.4
- name: Acceptance
uses: databrickslabs/sandbox/downstreams@downstreams/v0.0.1
with:
repo: ${{ matrix.downstream.name }}
org: ${{ matrix.downstream.org }}
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

0 comments on commit 3c5b176

Please sign in to comment.