summaryrefslogtreecommitdiffstats
path: root/.github
diff options
context:
space:
mode:
Diffstat (limited to '.github')
-rw-r--r--.github/PULL_REQUEST_TEMPLATE.rst5
-rw-r--r--.github/dependabot.yml14
-rw-r--r--.github/workflows/automerge.yml39
-rw-r--r--.github/workflows/build.yml11
-rw-r--r--.github/workflows/linters.yml18
-rw-r--r--.github/workflows/pr-check.yml27
-rw-r--r--.github/workflows/pypi.yml12
-rw-r--r--.github/workflows/tests-macos.yml17
-rw-r--r--.github/workflows/tests.yml15
9 files changed, 158 insertions, 0 deletions
diff --git a/.github/PULL_REQUEST_TEMPLATE.rst b/.github/PULL_REQUEST_TEMPLATE.rst
new file mode 100644
index 0000000..910a482
--- /dev/null
+++ b/.github/PULL_REQUEST_TEMPLATE.rst
@@ -0,0 +1,5 @@
+Chore that needs to be done:
+
+* [ ] Add newsfragment `pipenv run towncrier create [issue_number].[type].rst`
+
+Types are defined in the pyproject.toml, issue_numer either from issue tracker or the Pull request number \ No newline at end of file
diff --git a/.github/dependabot.yml b/.github/dependabot.yml
new file mode 100644
index 0000000..1173e0c
--- /dev/null
+++ b/.github/dependabot.yml
@@ -0,0 +1,14 @@
+version: 2
+updates:
+- package-ecosystem: pip
+ directory: "/"
+ schedule:
+ interval: daily
+ time: "04:00"
+ open-pull-requests-limit: 1
+- package-ecosystem: github-actions
+ directory: "/"
+ schedule:
+ interval: weekly
+ time: "02:00"
+ open-pull-requests-limit: 1 \ No newline at end of file
diff --git a/.github/workflows/automerge.yml b/.github/workflows/automerge.yml
new file mode 100644
index 0000000..aa0e102
--- /dev/null
+++ b/.github/workflows/automerge.yml
@@ -0,0 +1,39 @@
+name: Merge me test dependencies!
+
+on:
+ workflow_run:
+ types:
+ - completed
+ workflows:
+ # List all required workflow names here.
+ - 'Run linters'
+ - 'Run tests'
+ - 'Run tests on macos'
+ - 'Test build package'
+ - 'Run test commands'
+
+jobs:
+ merge-me:
+ name: Merge me!
+ runs-on: ubuntu-latest
+ steps:
+ - # It is often a desired behavior to merge only when a workflow execution
+ # succeeds. This can be changed as needed.
+ if: ${{ github.event.workflow_run.conclusion == 'success' }}
+ name: Merge me!
+ uses: ridedott/merge-me-action@v2
+ with:
+ # Depending on branch protection rules, a manually populated
+ # `GITHUB_TOKEN_WORKAROUND` secret with permissions to push to
+ # a protected branch must be used. This secret can have an arbitrary
+ # name, as an example, this repository uses `DOTTBOTT_TOKEN`.
+ #
+ # When using a custom token, it is recommended to leave the following
+ # comment for other developers to be aware of the reasoning behind it:
+ #
+ # This must be used as GitHub Actions token does not support pushing
+ # to protected branches.
+ GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
+ MERGE_METHOD: MERGE
+ PRESET: DEPENDABOT_MINOR
+ ENABLED_FOR_MANUAL_CHANGES: 'true'
diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml
new file mode 100644
index 0000000..ebaa45f
--- /dev/null
+++ b/.github/workflows/build.yml
@@ -0,0 +1,11 @@
+name: Test build package
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ build:
+ uses: fizyk/actions-reuse/.github/workflows/pypi.yml@v2.1.2
diff --git a/.github/workflows/linters.yml b/.github/workflows/linters.yml
new file mode 100644
index 0000000..dec9e2e
--- /dev/null
+++ b/.github/workflows/linters.yml
@@ -0,0 +1,18 @@
+name: Run linters
+
+on:
+ push:
+ branches: [ master ]
+ paths:
+ - '**.py'
+ - .github/workflows/linters.yml
+ - requirements-lint.txt
+ pull_request:
+ branches: [ master ]
+jobs:
+ lint:
+ uses: fizyk/actions-reuse/.github/workflows/linters-python.yml@v2.1.2
+ with:
+ pipenv: true
+ mypy: true
+ pydocstyle: false \ No newline at end of file
diff --git a/.github/workflows/pr-check.yml b/.github/workflows/pr-check.yml
new file mode 100644
index 0000000..758fd46
--- /dev/null
+++ b/.github/workflows/pr-check.yml
@@ -0,0 +1,27 @@
+name: Run test commands
+
+on:
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ bump:
+ runs-on: ubuntu-latest
+ steps:
+ - name: Check out repository
+ uses: actions/checkout@v3
+ - uses: fizyk/actions-reuse/.github/actions/pipenv@v2.1.2
+ with:
+ python-version: "3.11"
+ pipenv-install-options: "--skip-lock"
+ command: tbump --dry-run --only-patch $(pipenv run tbump current-version)"-x"
+ towncrier:
+ runs-on: ubuntu-latest
+ if: ${{ github.actor != 'dependabot[bot]' }}
+ steps:
+ - uses: fizyk/actions-reuse/.github/actions/pipenv@v2.1.2
+ with:
+ python-version: "3.11"
+ pipenv-install-options: "--skip-lock"
+ command: towncrier check --compare-with origin/master
+ fetch-depth: 0
diff --git a/.github/workflows/pypi.yml b/.github/workflows/pypi.yml
new file mode 100644
index 0000000..f90d2ce
--- /dev/null
+++ b/.github/workflows/pypi.yml
@@ -0,0 +1,12 @@
+name: Package and publish
+on:
+ push:
+ tags:
+ - v*
+jobs:
+ build:
+ uses: fizyk/actions-reuse/.github/workflows/pypi.yml@v2.1.2
+ with:
+ publish: true
+ secrets:
+ pypi_token: ${{ secrets.pypi_token }}
diff --git a/.github/workflows/tests-macos.yml b/.github/workflows/tests-macos.yml
new file mode 100644
index 0000000..4732209
--- /dev/null
+++ b/.github/workflows/tests-macos.yml
@@ -0,0 +1,17 @@
+name: Run tests on macos
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+
+jobs:
+ tests:
+ uses: fizyk/actions-reuse/.github/workflows/tests-pytests.yml@v2.1.2
+ with:
+ python-versions: '["3.7", "3.8", "3.9", "3.10", "3.11", "pypy-3.8"]'
+ os: macos-latest
+ pipenv: true
+ pipenv-install-options: --skip-lock
diff --git a/.github/workflows/tests.yml b/.github/workflows/tests.yml
new file mode 100644
index 0000000..adbb036
--- /dev/null
+++ b/.github/workflows/tests.yml
@@ -0,0 +1,15 @@
+name: Run tests
+
+on:
+ push:
+ branches: [ master ]
+ pull_request:
+ branches: [ master ]
+
+jobs:
+ tests:
+ uses: fizyk/actions-reuse/.github/workflows/tests-pytests.yml@v2.1.2
+ with:
+ python-versions: '["3.7", "3.8", "3.9", "3.10", "3.11", "pypy-3.8"]'
+ pipenv: true
+ pipenv-install-options: --skip-lock