diff --git a/.github/CODEOWNERS b/.github/CODEOWNERS new file mode 100644 index 0000000..29f403e --- /dev/null +++ b/.github/CODEOWNERS @@ -0,0 +1 @@ +* @Bilbottom diff --git a/.github/workflows/application-tests.yaml b/.github/workflows/application-tests.yaml new file mode 100644 index 0000000..8759c45 --- /dev/null +++ b/.github/workflows/application-tests.yaml @@ -0,0 +1,43 @@ +--- +name: Application Tests +run-name: Application tests ๐งช + +on: + workflow_dispatch: + pull_request: + paths: + - "dbt_py/**" + - "tests/**" + - poetry.lock + - .pre-commit-config.yaml + +jobs: + version-testing: + name: Run tests over multiple OSs + runs-on: ${{ matrix.os }} + strategy: + matrix: + os: [windows-latest, macos-latest, ubuntu-latest] + + steps: + - name: ๐๏ธ Check out repository + uses: actions/checkout@v3 + + - name: ๐ฆ Set up Poetry + run: pipx install poetry==1.7.0 + + - name: ๐ Set up Python + uses: actions/setup-python@v4 + with: + python-version: 3.11 + cache: poetry + + - name: ๐จ Install dependencies + run: poetry install --with test + + - name: โ Run unit tests + run: poetry run pytest + env: + # TODO: The tests should configure this themselves + DBT_PY_PACKAGE_ROOT: "tests.integration.jaffle-shop.dbt_py" + DBT_PY_PACKAGE_NAME: "dbt_py" diff --git a/.pre-commit-config.yaml b/.pre-commit-config.yaml index 3b2b11d..4837d44 100644 --- a/.pre-commit-config.yaml +++ b/.pre-commit-config.yaml @@ -31,7 +31,7 @@ repos: name: Validate Python - repo: https://github.com/python-poetry/poetry - rev: 1.6.0 + rev: 1.7.0 hooks: - id: poetry-check name: Check that the Poetry configuration is valid diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..29c1c57 --- /dev/null +++ b/LICENSE @@ -0,0 +1,21 @@ +MIT License + +Copyright (c) 2024 Bilbottom + +Permission is hereby granted, free of charge, to any person obtaining a copy +of this software and associated documentation files (the "Software"), to deal +in the Software without restriction, including without limitation the rights +to use, copy, modify, merge, publish, distribute, sublicense, and/or sell +copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all +copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +SOFTWARE. diff --git a/README.md b/README.md index 371deaa..9ee88eb 100644 --- a/README.md +++ b/README.md @@ -1,6 +1,7 @@