Compare commits

...

19 Commits

Author SHA1 Message Date
4d4514dd95 chore(pip-prod)(deps): bump idna from 3.7 to 3.8
Bumps [idna](https://github.com/kjd/idna) from 3.7 to 3.8.
- [Release notes](https://github.com/kjd/idna/releases)
- [Changelog](https://github.com/kjd/idna/blob/master/HISTORY.rst)
- [Commits](https://github.com/kjd/idna/compare/v3.7...v3.8)

---
updated-dependencies:
- dependency-name: idna
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-23 18:05:14 +01:00
c7128daf73 chore(pip-prod)(deps): bump webex-bot from 0.5.1 to 0.5.2
Bumps [webex-bot](https://github.com/fbradyirl/webex_bot) from 0.5.1 to 0.5.2.
- [Release notes](https://github.com/fbradyirl/webex_bot/releases)
- [Commits](https://github.com/fbradyirl/webex_bot/compare/v0.5.1...v0.5.2)

---
updated-dependencies:
- dependency-name: webex-bot
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-21 18:39:44 +01:00
78af3313bd chore(pip-prod)(deps): bump tomlkit from 0.13.0 to 0.13.2
Bumps [tomlkit](https://github.com/sdispater/tomlkit) from 0.13.0 to 0.13.2.
- [Release notes](https://github.com/sdispater/tomlkit/releases)
- [Changelog](https://github.com/python-poetry/tomlkit/blob/master/CHANGELOG.md)
- [Commits](https://github.com/sdispater/tomlkit/compare/0.13.0...0.13.2)

---
updated-dependencies:
- dependency-name: tomlkit
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-14 19:12:12 +02:00
567906e574 chore(pip-prod)(deps): bump sentry-sdk from 2.12.0 to 2.13.0
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.12.0 to 2.13.0.
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.12.0...2.13.0)

---
updated-dependencies:
- dependency-name: sentry-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-13 18:49:57 +02:00
0e425a35e6 chore(pip-prod)(deps): bump astroid from 3.3.1 to 3.3.2
Bumps [astroid](https://github.com/pylint-dev/astroid) from 3.3.1 to 3.3.2.
- [Release notes](https://github.com/pylint-dev/astroid/releases)
- [Changelog](https://github.com/pylint-dev/astroid/blob/main/ChangeLog)
- [Commits](https://github.com/pylint-dev/astroid/compare/v3.3.1...v3.3.2)

---
updated-dependencies:
- dependency-name: astroid
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-12 18:25:14 +02:00
95de56be42 chore(pip-prod)(deps): bump pyyaml from 6.0.1 to 6.0.2
Bumps [pyyaml](https://github.com/yaml/pyyaml) from 6.0.1 to 6.0.2.
- [Release notes](https://github.com/yaml/pyyaml/releases)
- [Changelog](https://github.com/yaml/pyyaml/blob/main/CHANGES)
- [Commits](https://github.com/yaml/pyyaml/compare/6.0.1...6.0.2)

---
updated-dependencies:
- dependency-name: pyyaml
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-07 18:12:51 +01:00
5cc5aa3718 chore(pip-prod)(deps): bump attrs from 24.1.0 to 24.2.0
Bumps [attrs](https://github.com/sponsors/hynek) from 24.1.0 to 24.2.0.
- [Commits](https://github.com/sponsors/hynek/commits)

---
updated-dependencies:
- dependency-name: attrs
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-06 18:29:31 +01:00
413560e6e2 chore(pip-prod)(deps): bump astroid from 3.3.0 to 3.3.1
Bumps [astroid](https://github.com/pylint-dev/astroid) from 3.3.0 to 3.3.1.
- [Release notes](https://github.com/pylint-dev/astroid/releases)
- [Changelog](https://github.com/pylint-dev/astroid/blob/main/ChangeLog)
- [Commits](https://github.com/pylint-dev/astroid/compare/v3.3.0...v3.3.1)

---
updated-dependencies:
- dependency-name: astroid
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-06 17:31:50 +01:00
f198798a89 chore(pip-prod)(deps): bump astroid from 3.2.4 to 3.3.0
Bumps [astroid](https://github.com/pylint-dev/astroid) from 3.2.4 to 3.3.0.
- [Release notes](https://github.com/pylint-dev/astroid/releases)
- [Changelog](https://github.com/pylint-dev/astroid/blob/main/ChangeLog)
- [Commits](https://github.com/pylint-dev/astroid/compare/v3.2.4...v3.3.0)

---
updated-dependencies:
- dependency-name: astroid
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-05 22:23:21 +01:00
9e9266ed94 chore(pip-prod)(deps): bump pycodestyle from 2.12.0 to 2.12.1
Bumps [pycodestyle](https://github.com/PyCQA/pycodestyle) from 2.12.0 to 2.12.1.
- [Release notes](https://github.com/PyCQA/pycodestyle/releases)
- [Changelog](https://github.com/PyCQA/pycodestyle/blob/main/CHANGES.txt)
- [Commits](https://github.com/PyCQA/pycodestyle/compare/2.12.0...2.12.1)

---
updated-dependencies:
- dependency-name: pycodestyle
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-05 22:02:19 +01:00
d3ba06fa0b chore(pip-prod)(deps): bump attrs from 23.2.0 to 24.1.0
Bumps [attrs](https://github.com/sponsors/hynek) from 23.2.0 to 24.1.0.
- [Commits](https://github.com/sponsors/hynek/commits)

---
updated-dependencies:
- dependency-name: attrs
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-05 19:18:26 +01:00
6c1c5edf04 chore: add pre-commit 2024-08-04 18:50:53 +01:00
0188d8e43d chore(pip-prod)(deps): bump pyjwt from 2.8.0 to 2.9.0
Bumps [pyjwt](https://github.com/jpadilla/pyjwt) from 2.8.0 to 2.9.0.
- [Release notes](https://github.com/jpadilla/pyjwt/releases)
- [Changelog](https://github.com/jpadilla/pyjwt/blob/master/CHANGELOG.rst)
- [Commits](https://github.com/jpadilla/pyjwt/compare/2.8.0...2.9.0)

---
updated-dependencies:
- dependency-name: pyjwt
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-08-01 18:14:57 +01:00
4994aa301d Release once per week instead of daily 2024-07-31 22:05:13 +01:00
9ad8fae9ac chore(pip-prod)(deps): bump sentry-sdk from 2.11.0 to 2.12.0
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.11.0 to 2.12.0.
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.11.0...2.12.0)

---
updated-dependencies:
- dependency-name: sentry-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-31 18:23:28 +01:00
59e4916711 chore(pip-prod)(deps): bump sentry-sdk from 2.10.0 to 2.11.0
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.10.0 to 2.11.0.
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.10.0...2.11.0)

---
updated-dependencies:
- dependency-name: sentry-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-24 18:34:26 +01:00
437c9d87d1 chore(pip-prod)(deps): bump astroid from 3.2.3 to 3.2.4
Bumps [astroid](https://github.com/pylint-dev/astroid) from 3.2.3 to 3.2.4.
- [Release notes](https://github.com/pylint-dev/astroid/releases)
- [Changelog](https://github.com/pylint-dev/astroid/blob/main/ChangeLog)
- [Commits](https://github.com/pylint-dev/astroid/compare/v3.2.3...v3.2.4)

---
updated-dependencies:
- dependency-name: astroid
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-22 18:40:08 +01:00
4bd87538dd Stop release flow if no new release 2024-07-16 19:11:03 +01:00
69f5dfaf20 chore(pip-prod)(deps): bump sentry-sdk from 2.9.0 to 2.10.0
Bumps [sentry-sdk](https://github.com/getsentry/sentry-python) from 2.9.0 to 2.10.0.
- [Release notes](https://github.com/getsentry/sentry-python/releases)
- [Changelog](https://github.com/getsentry/sentry-python/blob/master/CHANGELOG.md)
- [Commits](https://github.com/getsentry/sentry-python/compare/2.9.0...2.10.0)

---
updated-dependencies:
- dependency-name: sentry-sdk
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2024-07-15 20:58:43 +01:00
9 changed files with 103 additions and 42 deletions

View File

@ -5,4 +5,4 @@ ADMIN_EMAIL=""
ADMIN_FIRST_NAME="" ADMIN_FIRST_NAME=""
BOT_NAME="" BOT_NAME=""
N8N_WEBHOOK_URL="" N8N_WEBHOOK_URL=""
WEBEX_API_KEY="" WEBEX_API_KEY=""

2
.github/CODEOWNERS vendored
View File

@ -1 +1 @@
* @luketainton * @luketainton

34
.github/renovate.json vendored
View File

@ -1,47 +1,47 @@
{ {
"assignAutomerge": true,
"assigneesFromCodeOwners": true,
"baseBranches": [
"main"
],
"dependencyDashboardAutoclose": true,
"extends": [ "extends": [
"config:base", "config:base",
":semanticCommits", ":semanticCommits",
":semanticCommitTypeAll(fix)" ":semanticCommitTypeAll(fix)"
], ],
"baseBranches": [
"main"
],
"platformCommit": true,
"dependencyDashboardAutoclose": true,
"assignAutomerge": true,
"assigneesFromCodeOwners": true,
"rebaseWhen": "behind-base-branch",
"rollbackPrs": true,
"labels": [ "labels": [
"dependencies" "dependencies"
], ],
"packageRules": [ "packageRules": [
{ {
"labels": [
"linting"
],
"matchPackagePatterns": [ "matchPackagePatterns": [
"black", "black",
"pylint" "pylint"
],
"labels": [
"linting"
] ]
}, },
{ {
"labels": [
"unit-tests"
],
"matchPackagePatterns": [ "matchPackagePatterns": [
"coverage", "coverage",
"pytest" "pytest"
],
"labels": [
"unit-tests"
] ]
} }
], ],
"platformCommit": true,
"rebaseWhen": "behind-base-branch",
"rollbackPrs": true,
"vulnerabilityAlerts": { "vulnerabilityAlerts": {
"commitMessagePrefix": "[SECURITY] ",
"enabled": true, "enabled": true,
"labels": [ "labels": [
"security" "security"
], ],
"commitMessagePrefix": "[SECURITY] ",
"prCreation": "immediate" "prCreation": "immediate"
} }
} }

View File

@ -2,7 +2,7 @@ name: Release
on: on:
workflow_dispatch: workflow_dispatch:
schedule: schedule:
- cron: "0 9 * * *" - cron: "0 9 * * 0"
jobs: jobs:
create_release: create_release:
@ -12,6 +12,7 @@ jobs:
create_docker: create_docker:
name: Create Docker Image name: Create Docker Image
needs: create_release needs: create_release
if: ${{ needs.create_release.outputs.success == 'true' }}
uses: luketainton/gha-workflows/.github/workflows/build-push-attest-docker.yml@main uses: luketainton/gha-workflows/.github/workflows/build-push-attest-docker.yml@main
with: with:
release: ${{ needs.create_release.outputs.release_name }} release: ${{ needs.create_release.outputs.release_name }}

60
.pre-commit-config.yaml Normal file
View File

@ -0,0 +1,60 @@
fail_fast: false
minimum_pre_commit_version: 3.8.0
default_install_hook_types: [pre-commit, commit-msg]
default_language_version:
python: python3.11
repos:
- repo: https://github.com/pre-commit/pre-commit-hooks
rev: v4.6.0
hooks:
- id: trailing-whitespace
- id: mixed-line-ending
- id: end-of-file-fixer
- id: requirements-txt-fixer
- id: check-yaml
- id: check-added-large-files
- id: check-ast
- id: check-docstring-first
- id: check-json
- id: check-merge-conflict
- id: check-toml
- id: check-xml
- id: detect-private-key
- id: no-commit-to-branch
- id: requirements-txt-fixer
- id: name-tests-test
args: [--pytest-test-first]
- id: pretty-format-json
args: [--autofix]
- repo: https://github.com/astral-sh/ruff-pre-commit
rev: v0.5.6
hooks:
- id: ruff-format # Run the formatter.
- id: ruff # Run the linter.
args: [--fix]
- repo: https://github.com/pycqa/isort
rev: 5.13.2
hooks:
- id: isort
- repo: https://github.com/pre-commit/pygrep-hooks
rev: v1.10.0
hooks:
- id: python-use-type-annotations
- repo: https://github.com/asottile/pyupgrade
rev: v3.17.0
hooks:
- id: pyupgrade
- repo: https://github.com/compilerla/conventional-pre-commit
rev: v3.4.0
hooks:
- id: conventional-pre-commit
stages: [commit-msg]

View File

@ -1,18 +1,18 @@
#!/usr/bin/env python3 #!/usr/bin/env python3
from zoneinfo import ZoneInfo
from datetime import datetime from datetime import datetime
from zoneinfo import ZoneInfo
def timestamp_to_date(timestamp: int) -> str: def timestamp_to_date(timestamp: int) -> str:
"""Convert timestamp to date. """Convert timestamp to date.
Args: Args:
timestamp (int): Timestamp to convert. timestamp (int): Timestamp to convert.
Returns: Returns:
str: Date in the format YYYY-MM-DD. str: Date in the format YYYY-MM-DD.
""" """
return datetime.fromtimestamp(timestamp=timestamp, tz=ZoneInfo("UTC")).strftime("%Y-%m-%d") return datetime.fromtimestamp(timestamp=timestamp, tz=ZoneInfo("UTC")).strftime(
"%Y-%m-%d"
)

View File

@ -6,10 +6,10 @@ from app.utils.config import config
def __n8n_post(data: dict) -> bool: def __n8n_post(data: dict) -> bool:
"""Post data to N8N webhook URL. """Post data to N8N webhook URL.
Args: Args:
data (dict): Data to post to webhook URL. data (dict): Data to post to webhook URL.
Returns: Returns:
bool: True if successful, else False. bool: True if successful, else False.
""" """
@ -26,13 +26,13 @@ def __n8n_post(data: dict) -> bool:
def submit_task(summary, description, completion_date, requestor) -> bool: def submit_task(summary, description, completion_date, requestor) -> bool:
"""Submit task to N8N webhook URL. """Submit task to N8N webhook URL.
Args: Args:
summary (str): Summary of task. summary (str): Summary of task.
description (str): Description of task. description (str): Description of task.
completion_date (str): Completion date of task. completion_date (str): Completion date of task.
requestor (str): Requestor of task. requestor (str): Requestor of task.
Returns: Returns:
bool: True if successful, else False. bool: True if successful, else False.
""" """
@ -49,10 +49,10 @@ def submit_task(summary, description, completion_date, requestor) -> bool:
def get_tasks(requestor) -> bool: def get_tasks(requestor) -> bool:
"""Get tasks from N8N webhook URL. """Get tasks from N8N webhook URL.
Args: Args:
requestor (str): Requestor of tasks. requestor (str): Requestor of tasks.
Returns: Returns:
bool: True if successful, else False. bool: True if successful, else False.
""" """

View File

@ -7,4 +7,4 @@ services:
dockerfile: Dockerfile dockerfile: Dockerfile
restart: unless-stopped restart: unless-stopped
env_file: .env env_file: .env
... ...

View File

@ -1,6 +1,6 @@
appdirs==1.4.4 appdirs==1.4.4
astroid==3.2.3 astroid==3.3.2
attrs==23.2.0 attrs==24.2.0
autopep8==2.3.1 autopep8==2.3.1
backoff==2.2.1 backoff==2.2.1
certifi==2024.7.4 certifi==2024.7.4
@ -14,7 +14,7 @@ filelock==3.15.4
future==1.0.0 future==1.0.0
humanfriendly==10.0 humanfriendly==10.0
identify==2.6.0 identify==2.6.0
idna==3.7 idna==3.8
iniconfig==2.0.0 iniconfig==2.0.0
lazy-object-proxy==1.10.0 lazy-object-proxy==1.10.0
mccabe==0.7.0 mccabe==0.7.0
@ -25,22 +25,22 @@ pathspec==0.12.1
platformdirs==4.2.2 platformdirs==4.2.2
pluggy==1.5.0 pluggy==1.5.0
py==1.11.0 py==1.11.0
pycodestyle==2.12.0 pycodestyle==2.12.1
PyJWT==2.8.0 PyJWT==2.9.0
pyparsing==3.1.2 pyparsing==3.1.2
python-dateutil==2.9.0.post0 python-dateutil==2.9.0.post0
python-dotenv==1.0.1 python-dotenv==1.0.1
PyYAML==6.0.1 PyYAML==6.0.2
requests==2.32.3 requests==2.32.3
requests-toolbelt==1.0.0 requests-toolbelt==1.0.0
sentry-sdk==2.9.0 sentry-sdk==2.13.0
six==1.16.0 six==1.16.0
toml==0.10.2 toml==0.10.2
tomli==2.0.1 tomli==2.0.1
tomlkit==0.13.0 tomlkit==0.13.2
urllib3==2.2.2 urllib3==2.2.2
virtualenv==20.26.3 virtualenv==20.26.3
webex-bot==0.5.1 webex-bot==0.5.2
webexteamssdk==1.6.1 webexteamssdk==1.6.1
websockets==11.0.3 websockets==11.0.3
wrapt==1.16.0 wrapt==1.16.0