diff --git a/.github/workflows/make-test.yml b/.github/workflows/make-test.yml index 0c2a148..da72f53 100644 --- a/.github/workflows/make-test.yml +++ b/.github/workflows/make-test.yml @@ -12,10 +12,10 @@ jobs: steps: - uses: actions/checkout@v3 - - name: Set up Python 3.9 + - name: Set up Python 3.12 uses: actions/setup-python@v2 with: - python-version: "3.9" + python-version: "3.12" - name: Install dependencies run: | diff --git a/.mypy.ini b/.mypy.ini index 87abc27..4183914 100644 --- a/.mypy.ini +++ b/.mypy.ini @@ -1,5 +1,5 @@ [mypy] -python_version = 3.7 +python_version = 3.12 mypy_path = gitlab2sentry [mypy-pytest] diff --git a/Dockerfile b/Dockerfile index 7239d99..fa10693 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,4 +1,4 @@ -FROM python:3.9-slim +FROM python:3.12-slim WORKDIR /usr/src/app @@ -10,6 +10,7 @@ RUN groupadd --gid 1000 appuser \ USER appuser COPY gitlab2sentry/ gitlab2sentry/ +COPY tests/ tests/ COPY run.py run.py CMD ["python3", "run.py"] diff --git a/README.md b/README.md index 57380c6..e8f5d19 100644 --- a/README.md +++ b/README.md @@ -96,10 +96,6 @@ make upgrade - name: GITLAB_SENTRYCLIRC_MR_TITLE value: "your sentryclirc mr title" # Gitlab configuration values - - name: GITLAB_AUTHOR_NAME - value: author-name - - name: GITLAB_AUTHOR_EMAIL - value: your-author-email - name: GITLAB_GRAPHQL_SUFFIX value: api/graphql # - name: GITLAB_MENTIONS diff --git a/gitlab2sentry/resources.py b/gitlab2sentry/resources.py index b6d5f87..8ea7ec3 100644 --- a/gitlab2sentry/resources.py +++ b/gitlab2sentry/resources.py @@ -8,8 +8,6 @@ TEST_DSN_MR_CONTENT, TEST_DSN_MR_DESCRIPTION, TEST_DSN_MR_TITLE, - TEST_GITLAB_AUTHOR_EMAIL, - TEST_GITLAB_AUTHOR_NAME, TEST_GITLAB_GRAPHQL_PAGE_LENGTH, TEST_GITLAB_GRAPHQL_SUFFIX, TEST_GITLAB_GRAPHQL_TIMEOUT, @@ -138,16 +136,6 @@ def is_test_env(env: str) -> bool: else int(os.environ["GITLAB_GRAPHQL_PAGE_LENGTH"]) ) GITLAB_GROUP_IDENTIFIER = os.getenv("GITLAB_GROUP_IDENTIFIER", "") - GITLAB_AUTHOR_EMAIL = ( - TEST_GITLAB_AUTHOR_EMAIL - if is_test_env(ENV) - else os.environ["GITLAB_AUTHOR_EMAIL"] - ) - GITLAB_AUTHOR_NAME = ( - TEST_GITLAB_AUTHOR_NAME - if is_test_env(ENV) - else os.environ["GITLAB_AUTHOR_NAME"] - ) GITLAB_PROJECT_CREATION_LIMIT = int(os.getenv("GITLAB_CREATION_DAYS_LIMIT", 30)) GITLAB_RMV_SRC_BRANCH = ( TEST_GITLAB_RMV_SRC_BRANCH diff --git a/gitlab2sentry/utils/gitlab_provider.py b/gitlab2sentry/utils/gitlab_provider.py index 541c903..cb356d7 100644 --- a/gitlab2sentry/utils/gitlab_provider.py +++ b/gitlab2sentry/utils/gitlab_provider.py @@ -16,8 +16,6 @@ DSN_MR_CONTENT, DSN_MR_TITLE, ENV, - GITLAB_AUTHOR_EMAIL, - GITLAB_AUTHOR_NAME, GITLAB_GRAPHQL_PAGE_LENGTH, GITLAB_GRAPHQL_SUFFIX, GITLAB_GRAPHQL_TIMEOUT, @@ -207,8 +205,6 @@ def _get_or_create_sentryclirc( ) f = project.files.create( { - "author_email": GITLAB_AUTHOR_EMAIL, - "author_name": GITLAB_AUTHOR_NAME, "branch": branch_name, "commit_message": SENTRYCLIRC_COM_MSG, "content": content, @@ -220,7 +216,7 @@ def _get_default_mentions(self, project: Project) -> str: return ", ".join( [ f"@{member.username}" - for member in project.members.all() + for member in project.members.list(all=True, iterator=True) if ( member.access_level >= GITLAB_MENTIONS_ACCESS_LEVEL and member.state != "blocked" diff --git a/helm/values-production.yaml b/helm/values-production.yaml index be8449e..1e8f519 100644 --- a/helm/values-production.yaml +++ b/helm/values-production.yaml @@ -79,10 +79,6 @@ cronjob: - name: GITLAB_SENTRYCLIRC_MR_TITLE value: "[gitlab2sentry] Merge me to add sentry to {project_name} or close me" # Gitlab configuration values - - name: GITLAB_AUTHOR_NAME - value: gitlab2sentry - - name: GITLAB_AUTHOR_EMAIL - value: your-author-email - name: GITLAB_GRAPHQL_SUFFIX value: api/graphql # - name: GITLAB_MENTIONS diff --git a/requirements.txt b/requirements.txt index e11283a..a95acac 100644 --- a/requirements.txt +++ b/requirements.txt @@ -1,15 +1,7 @@ -aiohttp==3.8.1 +aiohttp==3.10.5 awesome-slugify==1.6.5 -certifi==2020.6.20 -chardet==3.0.4 -gql==3.2.0 -idna==2.10 -python-gitlab==2.5.0 +gql==3.5.0 +python-gitlab==4.10.0 pytz==2022.1 -pyyaml==6.0.0 -regex==2020.10.28 -requests==2.24.0 -requests-toolbelt==0.9.1 -sentry-sdk==0.19.5 -Unidecode==0.4.21 -urllib3==1.25.11 +requests==2.32.3 +sentry-sdk==2.14.0 diff --git a/tests/conftest.py b/tests/conftest.py index e04103a..a8591c2 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -67,7 +67,7 @@ def __init__(self): class TestGitlabMemberManager: - def all(self): + def list(self, all=True, iterator=True): return TEST_GITLAB_PROJECT_MEMBERS diff --git a/tests/resources.py b/tests/resources.py index 192810c..45aae7e 100644 --- a/tests/resources.py +++ b/tests/resources.py @@ -48,7 +48,5 @@ TEST_GITLAB_GRAPHQL_SUFFIX = "test-content" TEST_GITLAB_GRAPHQL_TIMEOUT = 10 TEST_GITLAB_GRAPHQL_PAGE_LENGTH = 0 -TEST_GITLAB_AUTHOR_EMAIL = "test-content" -TEST_GITLAB_AUTHOR_NAME = "test-content" TEST_GITLAB_RMV_SRC_BRANCH = True -TEST_GITLAB_MR_KEYWORD = "sentry" \ No newline at end of file +TEST_GITLAB_MR_KEYWORD = "sentry" diff --git a/tests/test_gitlab_provider.py b/tests/test_gitlab_provider.py index d7c1f92..acf43aa 100644 --- a/tests/test_gitlab_provider.py +++ b/tests/test_gitlab_provider.py @@ -92,7 +92,7 @@ def test_get_default_mentions(gitlab_provider_fixture, gitlab_project_fixture): ) _project_non_blocked_members = [ member - for member in gitlab_project_fixture.members.all() + for member in gitlab_project_fixture.members.list(all=True) if member.state != "blocked" ] assert len(_mentioned_members) == len(_project_non_blocked_members) @@ -168,4 +168,4 @@ def test_get_all_projects( ] ) == 1 - ) \ No newline at end of file + )