Skip to content

Commit 7c72657

Browse files
committed
update github workflows
1 parent fb48463 commit 7c72657

File tree

5 files changed

+143
-33
lines changed

5 files changed

+143
-33
lines changed

.github/dependabot.yml

Lines changed: 32 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,32 @@
1+
# To get started with Dependabot version updates, you'll need to specify which
2+
# package ecosystems to update and where the package manifests are located.
3+
# Please see the documentation for all configuration options:
4+
# https://help.github.com/github/administering-a-repository/configuration-options-for-dependency-updates
5+
6+
version: 2
7+
updates:
8+
- package-ecosystem: uv
9+
directory: "/"
10+
schedule:
11+
interval: weekly
12+
commit-message:
13+
prefix: "chore(deps): "
14+
prefix-development: "chore(deps-dev): "
15+
groups:
16+
development-dependencies:
17+
dependency-type: development
18+
runtime-dependencies:
19+
dependency-type: production
20+
update-types:
21+
- "patch"
22+
versioning-strategy: increase-if-necessary
23+
- package-ecosystem: github-actions
24+
directory: "/"
25+
schedule:
26+
interval: weekly
27+
commit-message:
28+
prefix: "ci: "
29+
groups:
30+
actions:
31+
patterns:
32+
- "*"

.github/workflows/build.yml

Lines changed: 41 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,41 @@
1+
name: Release
2+
3+
on:
4+
push:
5+
6+
permissions:
7+
contents: write # Needed to upload artifacts to the release
8+
id-token: write # Needed for OIDC PyPI publishing
9+
10+
jobs:
11+
build:
12+
name: Build Wheel and SDist
13+
runs-on: ubuntu-latest
14+
outputs:
15+
name: ${{ steps.baipp.outputs.package_name }}
16+
version: ${{ steps.baipp.outputs.package_version }}
17+
steps:
18+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
19+
- uses: hynek/build-and-inspect-python-package@c52c3a4710070b50470d903818a7b25115dcd076 # v2.13.0
20+
id: baipp
21+
22+
publish:
23+
name: Publish to PyPI
24+
runs-on: ubuntu-latest
25+
needs: [build]
26+
## TODO: optionally provide the name of the environment for the trusted
27+
## publisher on PyPI
28+
## https://docs.github.com/en/actions/deployment/targeting-different-environments/using-environments-for-deployment
29+
# environment:
30+
# name: pypi
31+
# url: https://pypi.org/project/${{ needs.build.outputs.name }}/${{ needs.build.outputs.version }}
32+
if: startsWith(github.ref, 'refs/tags/')
33+
steps:
34+
- uses: actions/download-artifact@634f93cb2916e3fdff6788551b99b062d0335ce0 # v5.0.0
35+
with:
36+
name: Packages
37+
path: dist
38+
- name: Publish
39+
## TODO: create a trusted publisher on PyPI
40+
## https://docs.pypi.org/trusted-publishers/
41+
uses: pypa/gh-action-pypi-publish@ed0c53931b1dc9bd32cbe73a98c7f6766f8a527e # v1.13.0

.github/workflows/ci_workflow.yml

Lines changed: 0 additions & 32 deletions
This file was deleted.

.github/workflows/test.yml

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
### A CI workflow template that runs linting and python testing
2+
### TODO: Modify as needed or as desired.
3+
4+
name: Test tap-mongodb
5+
6+
on:
7+
push:
8+
branches: [main]
9+
paths:
10+
- .github/workflows/test.yml
11+
- tap_mongodb/**
12+
- tests/**
13+
- pyproject.toml
14+
- uv.lock
15+
pull_request:
16+
branches: [main]
17+
paths:
18+
- .github/workflows/test.yml
19+
- tap_mongodb/**
20+
- tests/**
21+
- pyproject.toml
22+
- uv.lock
23+
workflow_dispatch:
24+
25+
env:
26+
FORCE_COLOR: 1
27+
28+
jobs:
29+
pytest:
30+
name: Integration Tests
31+
runs-on: ubuntu-latest
32+
strategy:
33+
fail-fast: false
34+
matrix:
35+
python-version:
36+
- "3.10"
37+
- "3.11"
38+
- "3.12"
39+
- "3.13"
40+
steps:
41+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
42+
- name: Set up Python ${{ matrix.python-version }}
43+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
44+
with:
45+
python-version: ${{ matrix.python-version }}
46+
- name: Setup uv
47+
uses: astral-sh/setup-uv@557e51de59eb14aaaba2ed9621916900a91d50c6 # v6.6.1
48+
with:
49+
version: ">=0.8"
50+
- name: Run Tox
51+
run: |
52+
uvx --with=tox-uv tox -e $(echo py${{ matrix.python-version }} | tr -d .)
53+
54+
typing:
55+
name: Type Checking
56+
runs-on: ubuntu-latest
57+
steps:
58+
- uses: actions/checkout@08c6903cd8c0fde910a37f88322edcfb5dd907a8 # v5.0.0
59+
- name: Set up Python
60+
uses: actions/setup-python@e797f83bcb11b83ae66e0230d6156d7c80228e7c # v6.0.0
61+
with:
62+
python-version: 3.x
63+
- name: Setup uv
64+
uses: astral-sh/setup-uv@557e51de59eb14aaaba2ed9621916900a91d50c6 # v6.6.1
65+
with:
66+
version: ">=0.8"
67+
- name: Run Tox
68+
run: |
69+
uvx --with=tox-uv tox -e typing

pyproject.toml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ name = "tap-mongodb"
33
version = "0.1.0"
44
description = "Add your description here"
55
readme = "README.md"
6-
requires-python = ">=3.13"
6+
requires-python = ">=3.11,<3.13"
77
dependencies = [
88
"genson>=1.3.0",
99
"orjson>=3.11.3",

0 commit comments

Comments
 (0)