#9959 ci: Prepare CI for v3 backport
Pull request opened by
edgarrmondragon
Description
Similar to
•
#9790
Checklist
• I have read the
contribution guide
Was generative AI tooling used to co-author this PR?
• Yes (please specify the tool below)
Related Issues
• Closes #XXXX
Summary by Sourcery
Update CI, tooling, and Docker tag generation to support safe backport releases and align v3 with current project infrastructure.
New Features:
• Adjust Docker tag generation so non-ghcr registries only publish the 'latest' tag for non-prerelease versions that are at least as new as the current latest release, preventing backports from overwriting 'latest'.
Enhancements:
• Convert the Docker tag generation script to a uv-run script with explicit packaging dependency management.
• Align GitHub Actions workflows to use the repository .python-version file and the latest uv setup action across build, test, integration, version bump, and analysis jobs.
• Increase mypy strictness and enable incremental checking while updating Ruff configuration to declare a minimum supported version.
• Refresh pre-commit hooks (check-jsonschema, ruff, uv) and various GitHub Actions (CodeQL, docker, artifact, dependency review, Commitizen, release, and PR creation) to newer versions.
• Simplify the pull request template to match the current contribution and agentic-coding guidelines and reduce boilerplate.
• Make minor code and test cleanups, including removing redundant casts and adding security rule suppressions where appropriate.
• Update dbt-related integration plugin definitions and lockfiles to newer meltano-dbt-ext versions.
Build:
• Exclude the 'gh-readonly-queue/**' branch from build workflow triggers to avoid redundant CI runs.
• Update Docker build, scan, and publish composite action to use newer Docker/QEMU/Anchore/CodeQL/upload actions and artifacts handling.
• Fetch the latest published release version during Docker image builds so tag generation can account for the current overall latest version.
CI:
• Modernize test and coverage workflows by updating artifact and Codecov actions, simplifying container setup, and standardizing Python setup on .python-version.
Documentation:
• Revise the pull request template documentation to emphasize description, checklist, related issues, and generative AI disclosure.
Tests:
• Adjust integration and unit test workflows and expectations to accommodate updated tooling, Python setup, and subprocess invocation linting rules.
Chores:
• Regenerate lockfiles and workflow constraints to align with updated dependencies and tooling versions.
meltano/meltano