Skip to content

Integrations separate CI workflows#1100

Merged
p1c2u merged 8 commits intomasterfrom
feature/integrations-separate-ci-workflows
Feb 17, 2026
Merged

Integrations separate CI workflows#1100
p1c2u merged 8 commits intomasterfrom
feature/integrations-separate-ci-workflows

Conversation

@p1c2u
Copy link
Collaborator

@p1c2u p1c2u commented Feb 17, 2026

This pull request introduces dedicated GitHub Actions workflows for running integration tests against various Python web frameworks and libraries, improving the granularity and maintainability of CI for integration tests. Additionally, the main test workflow is updated to exclude these integration tests, delegating their execution to the new workflows.

Continuous Integration Improvements:

  • Added separate GitHub Actions workflows for integration testing of the following frameworks and libraries, each running on multiple Python versions: aiohttp (integration-aiohttp.yml), django (integration-django.yml), falcon (integration-falcon.yml), fastapi (integration-fastapi.yml), flask (integration-flask.yml), requests (integration-requests.yml), starlette (integration-starlette.yml), and werkzeug (integration-werkzeug.yml). [1] [2] [3] [4] [5] [6] [7] [8]
  • Updated the main python-test.yml workflow to exclude the tests/integration/contrib directory from its test run, ensuring that integration tests are only run in their respective dedicated workflows.

@p1c2u p1c2u force-pushed the feature/integrations-separate-ci-workflows branch from 204f357 to 711d62b Compare February 17, 2026 16:52
@p1c2u p1c2u force-pushed the feature/integrations-separate-ci-workflows branch from 9838230 to 78b5fc6 Compare February 17, 2026 22:39
Comment on lines 13 to 67

Check warning

Code scanning / CodeQL

Workflow does not contain permissions Medium

Actions job or workflow does not limit the permissions of the GITHUB_TOKEN. Consider setting an explicit permissions block, using the following as a minimal starting point: {contents: read}

Copilot Autofix

AI about 10 hours ago

In general, you should explicitly declare permissions for the workflow or for each job, granting only the minimal access required. For this workflow, both jobs (core_tests and static_checks) only need to read the repository contents and use external services (PyPI, Codecov). They do not appear to need any write access to the GitHub API. The best fix is to add a top-level permissions block that applies to all jobs, setting contents: read. This documents intent and ensures the token cannot be used to modify repository contents even if defaults are broad, without changing any existing functionality.

Concretely, in .github/workflows/python-test.yml, add a new root-level permissions: mapping, aligned with name: and on:, for example on a new line after name: CI / Core / Tests. The content should be:

permissions:
  contents: read

No other imports, steps, or job definitions need to change.

Suggested changeset 1
.github/workflows/python-test.yml

Autofix patch

Autofix patch
Run the following command in your local git repository to apply this patch
cat << 'EOF' | git apply
diff --git a/.github/workflows/python-test.yml b/.github/workflows/python-test.yml
--- a/.github/workflows/python-test.yml
+++ b/.github/workflows/python-test.yml
@@ -2,6 +2,8 @@
 # For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions
 
 name: CI / Core / Tests
+permissions:
+  contents: read
 
 on:
   push:
EOF
@@ -2,6 +2,8 @@
# For more information see: https://help.github.com/actions/language-and-framework-guides/using-python-with-github-actions

name: CI / Core / Tests
permissions:
contents: read

on:
push:
Copilot is powered by AI and may make mistakes. Always verify output.
@p1c2u p1c2u merged commit e32cde6 into master Feb 17, 2026
147 checks passed
@p1c2u p1c2u deleted the feature/integrations-separate-ci-workflows branch February 17, 2026 23:06
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant