From dff089b15765da445b42c733011409b0181f5ab7 Mon Sep 17 00:00:00 2001 From: pulpbot Date: Tue, 17 Feb 2026 20:49:20 +0000 Subject: [PATCH] Update CI files --- .ci/assets/ci_constraints.txt | 11 +++- .ci/scripts/check_release.py | 11 +++- .github/pull_request_template.md | 15 +++++ .github/workflows/scripts/install.sh | 2 +- template_config.yml | 88 ++++++++++++++-------------- 5 files changed, 81 insertions(+), 46 deletions(-) create mode 100644 .github/pull_request_template.md diff --git a/.ci/assets/ci_constraints.txt b/.ci/assets/ci_constraints.txt index 8f41e3f65..c9198f19a 100644 --- a/.ci/assets/ci_constraints.txt +++ b/.ci/assets/ci_constraints.txt @@ -1,5 +1,6 @@ # Pulpcore versions without the openapi command do no longer work in the CI -pulpcore>=3.21.30,!=3.23.*,!=3.24.*,!=3.25.*,!=3.26.*,!=3.27.*,!=3.29.*,!=3.30.*,!=3.31.*,!=3.32.*,!=3.33.*,!=3.34.*,!=3.35.*,!=3.36.*,!=3.37.*,!=3.38.*,!=3.40.*,!=3.41.*,!=3.42.*,!=3.43.*,!=3.44.*,!=3.45.*,!=3.46.*,!=3.47.*,!=3.48.*,!=3.50.*,!=3.51.*,!=3.52.*,!=3.53.*,!=3.54.* +# Pulpcore versions without the django 5 storage compatibility will fail, >3.63,<3.70 +pulpcore>=3.21.30,!=3.23.*,!=3.24.*,!=3.25.*,!=3.26.*,!=3.27.*,!=3.29.*,!=3.30.*,!=3.31.*,!=3.32.*,!=3.33.*,!=3.34.*,!=3.35.*,!=3.36.*,!=3.37.*,!=3.38.*,!=3.40.*,!=3.41.*,!=3.42.*,!=3.43.*,!=3.44.*,!=3.45.*,!=3.46.*,!=3.47.*,!=3.48.*,!=3.50.*,!=3.51.*,!=3.52.*,!=3.53.*,!=3.54.*,!=3.64.*,!=3.65.*,!=3.66.*,!=3.67.*,!=3.68.*,!=3.69.* tablib!=3.6.0 @@ -8,3 +9,11 @@ tablib!=3.6.0 multidict!=6.3.0 # This release failed the lower bounds test for some case sensitivity in CIMultiDict. + + +azure-storage-blob!=12.28.* +# Apparently does not work with current azurite. + + +pycares<5 +# older aiodns versions don't pin pycares UB, and are broken by pycares>=5 diff --git a/.ci/scripts/check_release.py b/.ci/scripts/check_release.py index 81bae1fd1..86e250e4c 100755 --- a/.ci/scripts/check_release.py +++ b/.ci/scripts/check_release.py @@ -1,11 +1,20 @@ #!/usr/bin/env python +# /// script +# requires-python = ">=3.13" +# dependencies = [ +# "gitpython>=3.1.46,<3.2.0", +# "packaging>=26.0,<26.1", +# "pyyaml>=6.0.3,<6.1.0", +# ] +# /// import argparse import re import os import tomllib -import yaml from pathlib import Path + +import yaml from packaging.version import Version from git import Repo diff --git a/.github/pull_request_template.md b/.github/pull_request_template.md new file mode 100644 index 000000000..4bee60faf --- /dev/null +++ b/.github/pull_request_template.md @@ -0,0 +1,15 @@ + + +### 📜 Checklist + +- [ ] Commits are cleanly separated with meaningful messages (simple features and bug fixes should be [squashed](https://pulpproject.org/pulpcore/docs/dev/guides/git/#rebasing-and-squashing) to one commit) +- [ ] A [changelog entry](https://pulpproject.org/pulpcore/docs/dev/guides/git/#changelog-update) or entries has been added for any significant changes +- [ ] Follows the [Pulp policy on AI Usage](https://pulpproject.org/help/more/governance/ai_policy/) +- [ ] (For new features) - User documentation and test coverage has been added + +See: [Pull Request Walkthrough](https://pulpproject.org/pulpcore/docs/dev/guides/pull-request-walkthrough/) diff --git a/.github/workflows/scripts/install.sh b/.github/workflows/scripts/install.sh index a63cd3c15..e52cb40a9 100755 --- a/.github/workflows/scripts/install.sh +++ b/.github/workflows/scripts/install.sh @@ -107,7 +107,7 @@ if [ "$TEST" = "azure" ]; then image: mcr.microsoft.com/azure-storage/azurite\ volumes:\ - ./azurite:/etc/pulp\ - command: "azurite-blob --blobHost 0.0.0.0"' vars/main.yaml + command: "azurite-blob --skipApiVersionCheck --blobHost 0.0.0.0"' vars/main.yaml sed -i -e '$a azure_test: true\ pulp_scenario_settings: {"AZURE_ACCOUNT_KEY": "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==", "AZURE_ACCOUNT_NAME": "devstoreaccount1", "AZURE_CONNECTION_STRING": "DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://ci-azurite:10000/devstoreaccount1;", "AZURE_CONTAINER": "pulp-test", "AZURE_LOCATION": "pulp3", "AZURE_OVERWRITE_FILES": true, "AZURE_URL_EXPIRATION_SECS": 120, "DEFAULT_FILE_STORAGE": "storages.backends.azure_storage.AzureStorage", "MEDIA_ROOT": ""}\ pulp_scenario_env: {}\ diff --git a/template_config.yml b/template_config.yml index 2210c693f..4c9ca0b81 100644 --- a/template_config.yml +++ b/template_config.yml @@ -2,18 +2,21 @@ # were not present before running plugin-template have been added with their default values. # generated with plugin_template +# +# After editing this file please always reapply the plugin template before committing any changes. -api_root: /pulp/ +--- +api_root: "/pulp/" black: true check_commit_message: true check_gettext: true check_manifest: true check_stray_pulpcore_imports: true -ci_base_image: ghcr.io/pulp/pulp-ci-centos +ci_base_image: "ghcr.io/pulp/pulp-ci-centos" ci_env: {} -ci_trigger: '{pull_request: {branches: [''*'']}}' -cli_package: pulp-cli -cli_repo: https://github.com/pulp/pulp-cli.git +ci_trigger: "{pull_request: {branches: ['*']}}" +cli_package: "pulp-cli" +cli_repo: "https://github.com/pulp/pulp-cli.git" core_import_allowed: [] deploy_client_to_pypi: true deploy_client_to_rubygems: true @@ -23,68 +26,66 @@ docker_fixtures: false extra_files: [] flake8: true flake8_ignore: [] -github_org: pulp +github_org: "pulp" latest_release_branch: null lint_requirements: true os_required_packages: [] parallel_test_workers: 8 -plugin_app_label: container -plugin_default_branch: main -plugin_name: pulp_container +plugin_app_label: "container" +plugin_default_branch: "main" +plugin_name: "pulp_container" plugins: -- app_label: container - name: pulp_container -post_job_template: null -pre_job_template: null + - app_label: "container" + name: "pulp_container" pulp_env: {} pulp_env_azure: {} pulp_env_gcp: {} pulp_env_s3: {} -pulp_scheme: https +pulp_scheme: "https" pulp_settings: allowed_content_checksums: - - sha1 - - sha224 - - sha256 - - sha384 - - sha512 + - "sha1" + - "sha224" + - "sha256" + - "sha384" + - "sha512" allowed_export_paths: - - /tmp + - "/tmp" allowed_import_paths: - - /tmp + - "/tmp" pulp_settings_azure: - AZURE_ACCOUNT_KEY: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw== - AZURE_ACCOUNT_NAME: devstoreaccount1 - AZURE_CONNECTION_STRING: DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://ci-azurite:10000/devstoreaccount1; - AZURE_CONTAINER: pulp-test - AZURE_LOCATION: pulp3 + AZURE_ACCOUNT_KEY: "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==" + AZURE_ACCOUNT_NAME: "devstoreaccount1" + AZURE_CONNECTION_STRING: "DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://ci-azurite:10000/devstoreaccount1;" + AZURE_CONTAINER: "pulp-test" + AZURE_LOCATION: "pulp3" AZURE_OVERWRITE_FILES: true AZURE_URL_EXPIRATION_SECS: 120 - DEFAULT_FILE_STORAGE: storages.backends.azure_storage.AzureStorage - MEDIA_ROOT: '' + DEFAULT_FILE_STORAGE: "storages.backends.azure_storage.AzureStorage" + MEDIA_ROOT: "" pulp_settings_gcp: null pulp_settings_s3: - AWS_ACCESS_KEY_ID: AKIAIT2Z5TDYPX3ARJBA - AWS_DEFAULT_ACL: '@none None' - AWS_S3_ADDRESSING_STYLE: path - AWS_S3_ENDPOINT_URL: http://minio:9000 - AWS_S3_REGION_NAME: eu-central-1 - AWS_S3_SIGNATURE_VERSION: s3v4 - AWS_SECRET_ACCESS_KEY: fqRvjWaPU5o0fCqQuUWbj9Fainj2pVZtBCiDiieS - AWS_STORAGE_BUCKET_NAME: pulp3 - DEFAULT_FILE_STORAGE: storages.backends.s3boto3.S3Boto3Storage - MEDIA_ROOT: '' + AWS_ACCESS_KEY_ID: "AKIAIT2Z5TDYPX3ARJBA" + AWS_DEFAULT_ACL: "@none None" + AWS_S3_ADDRESSING_STYLE: "path" + AWS_S3_ENDPOINT_URL: "http://minio:9000" + AWS_S3_REGION_NAME: "eu-central-1" + AWS_S3_SIGNATURE_VERSION: "s3v4" + AWS_SECRET_ACCESS_KEY: "fqRvjWaPU5o0fCqQuUWbj9Fainj2pVZtBCiDiieS" + AWS_STORAGE_BUCKET_NAME: "pulp3" + DEFAULT_FILE_STORAGE: "storages.backends.s3boto3.S3Boto3Storage" + MEDIA_ROOT: "" pydocstyle: true -release_email: pulp-infra@redhat.com -release_user: pulpbot +release_email: "pulp-infra@redhat.com" +release_user: "pulpbot" stalebot: true stalebot_days_until_close: 30 stalebot_days_until_stale: 90 stalebot_limit_to_pulls: true supported_release_branches: -- '2.9' -- '2.10' -- '2.14' + - "2.9" + - "2.10" + - "2.14" sync_ci: true test_azure: true test_cli: true @@ -95,4 +96,5 @@ test_performance: false test_reroute: true test_s3: true use_issue_template: true +...