Skip to content

Add implementation of persist_docs using extending properties #203

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
wants to merge 241 commits into from
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
241 commits
Select commit Hold shift + click to select a range
c3571fa
uppercased information_schema
TatianaLinnik Dec 22, 2021
6528079
set env vars explicitly to fix circle ci check
sdebruyn Jan 17, 2022
7fd0f5a
New logging
semcha Jan 23, 2022
f45ef44
Add implementation of persist_docs using extending properties
semcha Jan 23, 2022
56a44f3
Escape schema names so they can contain strange characters
johnf Apr 17, 2022
8233443
Merge pull request #198 from datarootsio/fix-circleci-spenv
sdebruyn Apr 17, 2022
337b543
rename dir
dataders Apr 20, 2022
512cf45
new config
dataders Apr 20, 2022
3fca2e3
bump version
dataders Apr 20, 2022
fb53a1e
typo
dataders Apr 20, 2022
e8b3734
ignore logs
dataders Apr 20, 2022
e44cc79
add initial tests
dataders Apr 20, 2022
f4f2ab9
initial override
dataders Apr 20, 2022
cfbf86e
weird thing with pyodbc and committing
dataders Apr 20, 2022
88ab54d
add logging
dataders Apr 20, 2022
ffb2e82
accidentally added?
dataders Apr 20, 2022
a68fdc2
drop_schema didn't drop views
dataders Apr 20, 2022
65720f7
add docker image in GH packages
sdebruyn May 21, 2022
c94fc76
Bump docker/metadata-action from 3.7.0 to 4.0.1
dependabot[bot] May 21, 2022
0af8ce2
Bump docker/login-action from 1.14.1 to 2.0.0
dependabot[bot] May 21, 2022
a2386af
Dockerfile location fixed
sdebruyn May 21, 2022
91d245c
Bump docker/build-push-action from 2.10.0 to 3.0.0
dependabot[bot] May 21, 2022
17f2f77
use new image in circleci and update orbs
sdebruyn May 21, 2022
ad6797b
tox envilst update to 3.10
sdebruyn May 21, 2022
4161210
update dev dependencies
sdebruyn May 21, 2022
7d248c7
use python 3.9
sdebruyn May 21, 2022
f67aab8
add contributing docs
sdebruyn May 21, 2022
d1db784
cleanup circle ci config for azure tests
sdebruyn May 21, 2022
ba37d8d
install packages
sdebruyn May 21, 2022
edd2496
add aiohttp dependency to dev requirements
sdebruyn May 21, 2022
c0a8255
remove hostname suffix in wakeup script
sdebruyn May 21, 2022
bd4e637
try syntax without $
sdebruyn May 21, 2022
464f52b
set env vars in step
sdebruyn May 21, 2022
8e80272
add automated process to release new versions
sdebruyn May 21, 2022
0ee2cf5
update metadata
sdebruyn May 21, 2022
9c1460f
only run release on tags
sdebruyn May 21, 2022
e79d561
version check fix
sdebruyn May 21, 2022
3389cab
fix version/tag checking
sdebruyn May 21, 2022
23d70bd
pre-commit setup
sdebruyn May 21, 2022
ee90019
add makefile
sdebruyn May 21, 2022
c54ec5d
update contributing
sdebruyn May 21, 2022
bf1a6df
typos in Makefile
sdebruyn May 21, 2022
b1dc40f
fix unused import
sdebruyn May 21, 2022
f10c231
fix mypy checks
sdebruyn May 22, 2022
4eff323
Merge pull request #228 from dbt-msft/pre-commit-setup
sdebruyn May 22, 2022
3668c59
fix azsql resume script
sdebruyn May 22, 2022
2e0f1e6
add retry & sleep
sdebruyn May 22, 2022
f181c31
makefile all
sdebruyn May 22, 2022
c58f6af
print exc
sdebruyn May 22, 2022
8cadb23
print connection string
sdebruyn May 22, 2022
6fcdb74
fix script
sdebruyn May 22, 2022
65d9e61
limit attempts
sdebruyn May 22, 2022
8f58ada
Merge pull request #229 from dbt-msft/fix-azsql-resume
sdebruyn May 22, 2022
e08cb36
remove aiohttp dependency
sdebruyn May 22, 2022
23d7f82
typo
sdebruyn May 22, 2022
eb45401
add pip install self
sdebruyn May 22, 2022
7219b95
Merge pull request #230 from dbt-msft/remove-aiohttp
sdebruyn May 22, 2022
91e836d
Merge pull request #222 from dbt-msft/dependabot/github_actions/docke…
sdebruyn May 22, 2022
b5814e9
Merge pull request #221 from dbt-msft/dependabot/github_actions/docke…
sdebruyn May 22, 2022
8890a40
Merge pull request #220 from dbt-msft/dependabot/github_actions/docke…
sdebruyn May 22, 2022
aff5a14
Merge pull request #215 from johnf/escape
sdebruyn May 22, 2022
4fb2d47
Merge pull request #194 from TrololoLi/uppercase_infromation_schema
sdebruyn May 22, 2022
3f2915a
update changelog
sdebruyn May 22, 2022
8912811
Merge pull request #201 from semcha/new-logging
sdebruyn May 22, 2022
4a1c5d8
update changelog
sdebruyn May 22, 2022
0c01f0a
Merge from master
sdebruyn May 22, 2022
614f315
dbt core dependency to stable
sdebruyn May 22, 2022
4b1b731
remove yyy zzz logs
sdebruyn May 22, 2022
846469e
fix pytest version
sdebruyn May 22, 2022
0de37b0
skip test rather than commenting it
sdebruyn May 22, 2022
5630d79
add docker-compose file to spin up a local server
sdebruyn May 22, 2022
639d124
add docker-compose config in sample env file
sdebruyn May 22, 2022
9831745
provide profiles for all CI use cases
sdebruyn May 22, 2022
5879de8
build one docker img per python version
sdebruyn May 22, 2022
7d7bf83
Merge pull request #231 from dbt-msft/docker-all-versions
sdebruyn May 22, 2022
c1998f5
fix repo name for docker builds
sdebruyn May 22, 2022
d47987e
Merge branch 'master' into add_testing
sdebruyn May 22, 2022
1d9e013
add GH action to run unit tests
sdebruyn May 22, 2022
935c11d
other syntax for getting env var
sdebruyn May 22, 2022
3bdbc40
move to single step for toxenv
sdebruyn May 22, 2022
d321cb8
toxenv starts with py
sdebruyn May 22, 2022
cb31f8a
try to fix build arg
sdebruyn May 22, 2022
b29728f
try to fix build arg
sdebruyn May 22, 2022
0fe3961
try to fix build arg
sdebruyn May 22, 2022
0b7ea82
setup integration testing in GH actions
sdebruyn May 22, 2022
0796a96
set names for tests
sdebruyn May 22, 2022
3031d3a
use login as script
sdebruyn May 22, 2022
8061a66
try with login in same step
sdebruyn May 22, 2022
2c4c3c0
Revert "try with login in same step"
sdebruyn May 22, 2022
60ac004
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] May 23, 2022
de39310
Merge pull request #232 from dbt-msft/pre-commit-ci-update-config
sdebruyn May 26, 2022
c8b056b
try with az login with username/password
sdebruyn May 26, 2022
b9b0907
allow az and /bin/sh externals in tox
sdebruyn May 26, 2022
e1fa65f
bump azure-identity
sdebruyn May 26, 2022
6a589e6
validate az cli login
sdebruyn May 26, 2022
2aa2bf4
show az account in tox
sdebruyn May 26, 2022
eb1da59
do az login inside tox
sdebruyn May 26, 2022
6c01a0c
use sp login
sdebruyn May 26, 2022
0bc46dc
tox syntax for env vars
sdebruyn May 26, 2022
f7adeed
tox default env list
sdebruyn May 26, 2022
cff9a9d
add missing env vars
sdebruyn May 26, 2022
ddddbe9
rename env vars
sdebruyn May 26, 2022
ee41f44
update makefile
sdebruyn May 26, 2022
5977e9f
disable skipsdit
sdebruyn May 26, 2022
ff770b6
add distinct on cols
sdebruyn May 26, 2022
86fe8cd
remove duplicate cols
sdebruyn May 26, 2022
5c88c6e
only run 1 azure test at a time
sdebruyn May 26, 2022
8c47213
split azure and sqlserver tests
sdebruyn May 26, 2022
9c29466
set azure to max parallel 1
sdebruyn May 26, 2022
50edd9b
Merge pull request #216 from dbt-msft/add_testing
sdebruyn May 30, 2022
8b45ec8
Update CHANGELOG.md
sdebruyn May 30, 2022
bb2aeeb
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] May 30, 2022
688986b
Bump twine from 4.0.0 to 4.0.1
dependabot[bot] Jun 2, 2022
bc1ab70
Add get_true_sql function for sqlserver adapter to allow snapshots to…
jakemcaferty Jun 2, 2022
6b3b284
Merge pull request #238 from jakemcaferty/master
sdebruyn Jun 2, 2022
19dd4c0
Merge pull request #237 from dbt-msft/dependabot/pip/twine-4.0.1
sdebruyn Jun 2, 2022
77c3c77
Merge pull request #235 from dbt-msft/pre-commit-ci-update-config
sdebruyn Jun 2, 2022
2f67c95
run CI tests on trusted PRs and include secrets
sdebruyn Jun 2, 2022
d42e9d5
migrate last circleci pipeline to GH actions
sdebruyn Jun 2, 2022
152c2fd
add version check
sdebruyn Jun 2, 2022
b4bfd57
Merge pull request #240 from dbt-msft/circleci-github-release
sdebruyn Jun 3, 2022
f24f3f4
Merge pull request #239 from dbt-msft/run-pr-tests
sdebruyn Jun 3, 2022
0f21f2b
remove old integration tests
sdebruyn Jun 3, 2022
24b3c81
typo
sdebruyn Jun 3, 2022
7023753
Merge pull request #242 from dbt-msft/cleanup-integration
sdebruyn Jun 3, 2022
a2e074b
always run integration tests on Azure on commits to master
sdebruyn Jun 3, 2022
ff4806f
Merge pull request #243 from dbt-msft/always-run-on-master
sdebruyn Jun 3, 2022
5859adb
do not skip azure tests on master branch
sdebruyn Jun 4, 2022
666d0d9
Merge pull request #244 from dbt-msft/skip-tests-azure
sdebruyn Jun 4, 2022
1516cf6
fix version matching
sdebruyn Jun 4, 2022
2467278
Merge pull request #245 from dbt-msft/fix-version-verify
sdebruyn Jun 4, 2022
641ca3f
Clean-up and update README
sdebruyn Jun 6, 2022
263f66b
include readme in pypi
sdebruyn Jun 6, 2022
186fda0
typo
sdebruyn Jun 6, 2022
a30188b
wording
sdebruyn Jun 6, 2022
ed5247a
make Docker version available for Python 3.10
sdebruyn Jun 6, 2022
2f2cd50
Merge pull request #250 from dbt-msft/bump-docker-310
sdebruyn Jun 6, 2022
da4490f
update contribution docs and add Python 3.10
sdebruyn Jun 6, 2022
bcddfd8
Merge pull request #248 from dbt-msft/readme-update
dataders Jun 6, 2022
d3a6859
Merge pull request #249 from dbt-msft/update-testing-docs
sdebruyn Jun 6, 2022
0c01e43
fix typo
sdebruyn Jun 6, 2022
9588a87
bump development version
sdebruyn Jun 6, 2022
153d80a
add test for incremental model with unique array
sdebruyn Jun 6, 2022
4474570
typo
sdebruyn Jun 6, 2022
ec6a862
repro failure and add dbt core macro
sdebruyn Jun 6, 2022
2441e66
apply fix
sdebruyn Jun 6, 2022
b5f901d
fix dead link to docs
sdebruyn Jun 6, 2022
b1fb834
test method naming
sdebruyn Jun 6, 2022
2f050f6
use tests in dbt-core
sdebruyn Jun 6, 2022
8588540
Fix https://github.com/dbt-msft/dbt-sqlserver/issues/213
Apr 13, 2022
3f0c1e0
Merge pull request #251 from dbt-msft/fix-unique-incremental-array
sdebruyn Jun 7, 2022
6cf8513
add test for sources for PR #214
sdebruyn Jun 7, 2022
948644c
Merge branch 'fix-issue-dbt-test-source-name-with-spaces' into add-te…
sdebruyn Jun 7, 2022
bc75fc0
Merge pull request #214 from lynxcare/fix-issue-dbt-test-source-name-…
sdebruyn Jun 7, 2022
4b37f3b
Merge pull request #252 from dbt-msft/add-test-sources
sdebruyn Jun 7, 2022
57a628a
Bump actions/setup-python from 3 to 4
dependabot[bot] Jun 9, 2022
ccd1407
Update CHANGELOG.md
sdebruyn Jun 9, 2022
e73f974
Merge pull request #255 from dbt-msft/dependabot/github_actions/actio…
sdebruyn Jun 9, 2022
a27b2cf
Bump dbt-tests-adapter from 1.1.0 to 1.1.1
dependabot[bot] Jun 16, 2022
7fc71c3
Bump tox from 3.25.0 to 3.25.1
dependabot[bot] Jun 30, 2022
bde0e69
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Jul 4, 2022
75a0b12
Merge pull request #262 from dbt-msft/dependabot/pip/tox-3.25.1
sdebruyn Jul 7, 2022
e58c363
Merge pull request #258 from dbt-msft/dependabot/pip/dbt-tests-adapte…
sdebruyn Jul 7, 2022
586b8f2
Merge pull request #257 from dbt-msft/pre-commit-ci-update-config
sdebruyn Jul 7, 2022
a7bafe2
Bump docker/build-push-action from 3.0.0 to 3.1.1
dependabot[bot] Aug 8, 2022
13f133e
branch off v1.2.0 and package updates
sdebruyn Sep 12, 2022
ae21f80
bump dbt core req
sdebruyn Sep 12, 2022
56fdeba
bump dbt-sqlserver version
sdebruyn Sep 12, 2022
e6cfa3a
add new basic tests
sdebruyn Sep 12, 2022
07bcfb9
add grant tests
sdebruyn Sep 12, 2022
4fc1f2c
test data types
sdebruyn Sep 12, 2022
6de1cbb
add utils tests
sdebruyn Sep 12, 2022
64a309e
add type hints in conn
sdebruyn Sep 12, 2022
0337918
implement connection retries for 1.2
sdebruyn Sep 12, 2022
e6716c1
move docs tests to sep. file and fix
sdebruyn Sep 12, 2022
12bd152
remove old comment
sdebruyn Sep 12, 2022
2525245
fix: return correct owner for a table
sdebruyn Sep 12, 2022
b2a48e6
empty column class
sdebruyn Sep 12, 2022
ecd6002
make columns macro dbtonic
sdebruyn Sep 12, 2022
acfe306
ignore bigint test
sdebruyn Sep 12, 2022
d0a0b0d
use varchar(max) instead of text in col
sdebruyn Sep 12, 2022
cf87e95
ignore the size of the string in testing
sdebruyn Sep 12, 2022
3bf5920
use datetime instead of timestamp for col type
sdebruyn Sep 12, 2022
133215d
fix timestamp test to use datetime
sdebruyn Sep 12, 2022
f37b065
fix any_value macro
sdebruyn Sep 12, 2022
9553504
remove extra test
sdebruyn Sep 12, 2022
f227bdc
use datetimeoffset i/o datetime
sdebruyn Sep 12, 2022
be6f319
port concat macro from t-sql utils
sdebruyn Sep 12, 2022
f12e8b9
bring over remaining macros from t-sql utils
sdebruyn Sep 12, 2022
768c2c0
skip bool_or
sdebruyn Sep 12, 2022
2ff024d
implement macro cast_bool_to_text
sdebruyn Sep 12, 2022
1741ef6
fix dateadd test
sdebruyn Sep 12, 2022
6d90239
implement listagg macro
sdebruyn Sep 12, 2022
63f0437
disable grant tests for now so that we can release a beta
sdebruyn Sep 12, 2022
5878f21
changelog for first beta version
sdebruyn Sep 12, 2022
e24ba08
Merge pull request #276 from dbt-msft/dependabot/github_actions/docke…
sdebruyn Sep 12, 2022
4e6d871
add retries to functional tests
sdebruyn Sep 12, 2022
1b34fff
fix docs test for Azure
sdebruyn Sep 12, 2022
9b13f57
clarify docs on driver install
sdebruyn Sep 12, 2022
4a5dd5e
Merge branch 'master' into v1.2.0
sdebruyn Sep 12, 2022
ee4456b
Merge pull request #283 from dbt-msft/v1.2.0
sdebruyn Sep 12, 2022
5325b7e
[pre-commit.ci] pre-commit autoupdate
pre-commit-ci[bot] Sep 12, 2022
00d2e67
Merge pull request #266 from dbt-msft/pre-commit-ci-update-config
sdebruyn Sep 13, 2022
24f2a21
bump version for next release to beta 2
sdebruyn Sep 13, 2022
86c0f66
create test users
sdebruyn Sep 13, 2022
8020b6f
remove commented code
sdebruyn Sep 13, 2022
c90f8cb
add new files
sdebruyn Sep 13, 2022
6d2bbe7
moved file
sdebruyn Sep 13, 2022
234d9ab
syntax
sdebruyn Sep 13, 2022
739d47b
enable grants tests and fix env file lookup
sdebruyn Sep 13, 2022
8a4f2d4
fix grants and tests
sdebruyn Sep 13, 2022
67a5b3a
add automated testing with msodbc18
sdebruyn Sep 13, 2022
02bbbc7
move credentials to its own file
sdebruyn Sep 13, 2022
32b5e73
fix docker images
sdebruyn Sep 13, 2022
8bb1d60
fix image name
sdebruyn Sep 13, 2022
9345999
remove tox from project
sdebruyn Sep 13, 2022
dc3879d
fix hostname in tests
sdebruyn Sep 13, 2022
f6ded44
test with multiple SQL Server versions
sdebruyn Sep 13, 2022
49f9ff0
use custom Docker MS SQL server img
sdebruyn Sep 13, 2022
8f46e7b
fix unit tests image reference
sdebruyn Sep 13, 2022
65551cc
fix docker context
sdebruyn Sep 13, 2022
dc0a939
fix dockerfile paths
sdebruyn Sep 13, 2022
f387548
fix user inside docker img
sdebruyn Sep 13, 2022
5b1fa9e
remove fail-fast
sdebruyn Sep 13, 2022
e33e32e
remove extra :
sdebruyn Sep 13, 2022
598da2a
parametrize ODBC driver version
sdebruyn Sep 13, 2022
a2c4bf0
use encryption with msodbc18
sdebruyn Sep 13, 2022
36c2138
fix path to devops script
sdebruyn Sep 13, 2022
e909b57
enable azure testing on azure-testing branch
sdebruyn Sep 13, 2022
388d89c
test azure with pyodbc 4.0.32
sdebruyn Sep 13, 2022
03e4455
do not skip tests
sdebruyn Sep 13, 2022
df0a582
always set Encrypt and TrustCert
sdebruyn Sep 13, 2022
b09a8e0
remove source quoting policy
sdebruyn Sep 13, 2022
49e67ed
trust server cert when using Windows login
sdebruyn Sep 13, 2022
0619a9a
yaml formatting
sdebruyn Sep 13, 2022
36c17c2
encrypt/trust_cert settings
sdebruyn Sep 13, 2022
06d93dd
set next version to 1.2.0b2
sdebruyn Sep 13, 2022
e488128
use variable ms odbc version in wakeup script
sdebruyn Sep 14, 2022
d15904e
Add implementation of persist_docs using extending properties
semcha Jan 23, 2022
e66600a
Merge branch 'persist-docs' of https://github.com/semcha/dbt-sqlserve…
semcha Sep 17, 2022
ea978a6
[pre-commit.ci] auto fixes from pre-commit.com hooks
pre-commit-ci[bot] Sep 17, 2022
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
30 changes: 0 additions & 30 deletions .circleci/Dockerfile

This file was deleted.

146 changes: 0 additions & 146 deletions .circleci/config.yml

This file was deleted.

15 changes: 15 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
version: 2
updates:
- package-ecosystem: pip
directory: "/"
schedule:
interval: daily
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: daily
- package-ecosystem: docker
directory: "/"
schedule:
interval: daily
73 changes: 73 additions & 0 deletions .github/workflows/integration-tests-azure.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
---
name: Integration tests on Azure
on: # yamllint disable-line rule:truthy
push:
branches:
- master
- v*
- azure-testing
pull_request_target:
types: [labeled]

jobs:
integration-tests-azure:
name: Integration tests on Azure
if: contains(github.event.pull_request.labels.*.name, 'safe to test') || github.ref_name == 'master' || github.ref_name == 'azure-testing'
strategy:
max-parallel: 1
matrix:
python_version: ["3.7", "3.8", "3.9", "3.10"]
profile: ["ci_azure_cli", "ci_azure_auto", "ci_azure_environment", "ci_azure_basic"]
msodbc_version: ["17", "18"]
runs-on: ubuntu-latest
container:
image: ghcr.io/${{ github.repository }}:CI-${{ matrix.python_version }}-msodbc${{ matrix.msodbc_version }}
steps:
- name: AZ CLI login
run: az login --service-principal --username="${AZURE_CLIENT_ID}" --password="${AZURE_CLIENT_SECRET}" --tenant="${AZURE_TENANT_ID}"
env:
AZURE_CLIENT_ID: ${{ secrets.DBT_AZURE_SP_NAME }}
AZURE_CLIENT_SECRET: ${{ secrets.DBT_AZURE_SP_SECRET }}
AZURE_TENANT_ID: ${{ secrets.DBT_AZURE_TENANT }}

- uses: actions/checkout@v3

- name: Install dependencies
run: pip install -r dev_requirements.txt

- name: Wake up server
env:
DBT_AZURESQL_SERVER: ${{ secrets.DBT_AZURESQL_SERVER }}
DBT_AZURESQL_DB: ${{ secrets.DBT_AZURESQL_DB }}
DBT_AZURESQL_UID: ${{ secrets.DBT_AZURESQL_UID }}
DBT_AZURESQL_PWD: ${{ secrets.DBT_AZURESQL_PWD }}
MSODBC_VERSION: ${{ matrix.msodbc_version }}
run: python devops/scripts/wakeup_azure.py

- name: Configure test users
run: sqlcmd -b -I -i devops/scripts/create_sql_users.sql
env:
DBT_TEST_USER_1: DBT_TEST_USER_1
DBT_TEST_USER_2: DBT_TEST_USER_2
DBT_TEST_USER_3: DBT_TEST_USER_3
SQLCMDUSER: ${{ secrets.DBT_AZURESQL_UID }}
SQLCMDPASSWORD: ${{ secrets.DBT_AZURESQL_PWD }}
SQLCMDSERVER: ${{ secrets.DBT_AZURESQL_SERVER }}
SQLCMDDBNAME: ${{ secrets.DBT_AZURESQL_DB }}

- name: Run functional tests
env:
DBT_AZURESQL_SERVER: ${{ secrets.DBT_AZURESQL_SERVER }}
DBT_AZURESQL_DB: ${{ secrets.DBT_AZURESQL_DB }}
DBT_AZURESQL_UID: ${{ secrets.DBT_AZURESQL_UID }}
DBT_AZURESQL_PWD: ${{ secrets.DBT_AZURESQL_PWD }}
DBT_AZURE_USERNAME: ${{ secrets.DBT_AZURE_USERNAME }}
DBT_AZURE_PASSWORD: ${{ secrets.DBT_AZURE_PASSWORD }}
AZURE_CLIENT_ID: ${{ secrets.DBT_AZURE_SP_NAME }}
AZURE_CLIENT_SECRET: ${{ secrets.DBT_AZURE_SP_SECRET }}
AZURE_TENANT_ID: ${{ secrets.DBT_AZURE_TENANT }}
DBT_TEST_USER_1: DBT_TEST_USER_1
DBT_TEST_USER_2: DBT_TEST_USER_2
DBT_TEST_USER_3: DBT_TEST_USER_3
SQLSERVER_TEST_DRIVER: 'ODBC Driver ${{ matrix.msodbc_version }} for SQL Server'
run: pytest tests/functional --profile "${{ matrix.profile }}"
45 changes: 45 additions & 0 deletions .github/workflows/integration-tests-sqlserver.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
---
name: Integration tests on SQL Server
on: # yamllint disable-line rule:truthy
push:
branches:
- master
- v*
pull_request:
branches:
- master
- v*

jobs:
integration-tests-sql-server:
name: Integration tests on SQL Server
strategy:
matrix:
python_version: ["3.7", "3.8", "3.9", "3.10"]
msodbc_version: ["17", "18"]
sqlserver_version: ["2017", "2019", "2022"]
runs-on: ubuntu-latest
container:
image: ghcr.io/${{ github.repository }}:CI-${{ matrix.python_version }}-msodbc${{ matrix.msodbc_version }}
services:
sqlserver:
image: ghcr.io/${{ github.repository }}:server-${{ matrix.sqlserver_version }}
env:
ACCEPT_EULA: 'Y'
SA_PASSWORD: 5atyaNadella
DBT_TEST_USER_1: DBT_TEST_USER_1
DBT_TEST_USER_2: DBT_TEST_USER_2
DBT_TEST_USER_3: DBT_TEST_USER_3
steps:
- uses: actions/checkout@v3

- name: Install dependencies
run: pip install -r dev_requirements.txt

- name: Run functional tests
run: pytest tests/functional --profile "ci_sql_server"
env:
DBT_TEST_USER_1: DBT_TEST_USER_1
DBT_TEST_USER_2: DBT_TEST_USER_2
DBT_TEST_USER_3: DBT_TEST_USER_3
SQLSERVER_TEST_DRIVER: 'ODBC Driver ${{ matrix.msodbc_version }} for SQL Server'
70 changes: 70 additions & 0 deletions .github/workflows/publish-docker.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,70 @@
---
name: Publish Docker images for CI/CD
on: # yamllint disable-line rule:truthy
push:
paths:
- 'devops/**'
- '.github/workflows/publish-docker.yml'
branches:
- 'master'

jobs:
publish-docker-client:
strategy:
matrix:
python_version: ["3.7", "3.8", "3.9", "3.10"]
docker_target: ["msodbc17", "msodbc18"]
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Log in to the Container registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/[email protected]
with:
context: devops
build-args: PYTHON_VERSION=${{ matrix.python_version }}
file: devops/CI.Dockerfile
push: true
platforms: linux/amd64
target: ${{ matrix.docker_target }}
tags: ghcr.io/${{ github.repository }}:CI-${{ matrix.python_version }}-${{ matrix.docker_target }}

publish-docker-server:
strategy:
matrix:
mssql_version: ["2017", "2019", "2022"]
runs-on: ubuntu-latest
permissions:
contents: read
packages: write
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Log in to the Container registry
uses: docker/[email protected]
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}

- name: Build and push Docker image
uses: docker/[email protected]
with:
context: devops
build-args: MSSQL_VERSION=${{ matrix.mssql_version }}
file: devops/server.Dockerfile
push: true
platforms: linux/amd64
tags: ghcr.io/${{ github.repository }}:server-${{ matrix.mssql_version }}
Loading