Skip to content

Refactor AutoGenPKI implementation and update related forms, views, and templates - #959

Merged
FHatCSW merged 2 commits into
mainfrom
move_autogen_pki
Oct 6, 2026
Merged

FHatCSW merged 2 commits into
mainfrom
move_autogen_pki

Conversation

@FHatCSW

@FHatCSW FHatCSW commented Oct 6, 2026

Copy link
Copy Markdown
Collaborator
  • Migrate from using AutoGenPkiKeyAlgorithm to a shared key generation service for key types.
  • Update BackendConfigurationView to reflect changes in supported key types.
  • Remove legacy AutoGenPkiKeyAlgorithm references from SecuritySettingsView and related forms.
  • Introduce IssuingCaAddAutoGenForm for generating AutoGenPKI with backend-filtered key types.
  • Implement new IssuingCaAddAutoGenView to handle AutoGenPKI creation.
  • Update templates to support new AutoGenPKI generation workflow and display relevant messages.
  • Add tests for AutoGenPKI generation and ensure proper handling of security settings and permissions.

Legal

  • I certify that I have all necessary rights to publish this contribution under the MIT license. I agree to the Trustpoint CLA and have added my name to the AUTHORS.md file.

@codecov

codecov Bot commented Oct 6, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 89.28571% with 12 lines in your changes missing coverage. Please review.
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
trustpoint/pki/views/issuing_cas.py 88.88% 5 Missing ⚠️
trustpoint/pki/auto_gen_pki.py 90.00% 4 Missing ⚠️
trustpoint/pki/forms/issuing_cas.py 88.23% 2 Missing ⚠️
trustpoint/management/forms.py 85.71% 1 Missing ⚠️
Files with missing lines Coverage Δ
...ustpoint/management/views/backend_configuration.py 83.33% <100.00%> (ø)
trustpoint/management/views/settings.py 73.64% <100.00%> (-0.55%) ⬇️
trustpoint/pki/forms/__init__.py 100.00% <ø> (ø)
trustpoint/pki/urls.py 100.00% <ø> (ø)
trustpoint/pki/util/keys.py 88.23% <ø> (-3.07%) ⬇️
trustpoint/management/forms.py 89.83% <85.71%> (+0.87%) ⬆️
trustpoint/pki/forms/issuing_cas.py 82.90% <88.23%> (+0.20%) ⬆️
trustpoint/pki/auto_gen_pki.py 90.00% <90.00%> (-0.98%) ⬇️
trustpoint/pki/views/issuing_cas.py 46.69% <88.88%> (+1.76%) ⬆️
🚀 New features to boost your workflow:
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@github-actions

github-actions Bot commented Oct 6, 2026

Copy link
Copy Markdown
filepath passed skipped SUBTOTAL
trustpoint/agents/tests/test_views.py 41 0 41
trustpoint/appsecrets/tests/test_service.py 11 0 11
trustpoint/cmp/tests/test_views.py 29 0 29
trustpoint/crypto/tests/test_application_backend.py 18 0 18
trustpoint/crypto/tests/test_local_development_backend.py 4 0 4
trustpoint/crypto/tests/test_managed_key_repository.py 4 0 4
trustpoint/crypto/tests/test_mldsa_private_keys.py 16 0 16
trustpoint/crypto/tests/test_repositories.py 5 0 5
trustpoint/crypto/tests/test_tls_export.py 9 0 9
trustpoint/devices/tests/test_api/test_credential_expiry.py 27 0 27
trustpoint/devices/tests/test_api/test_device_viewset.py 30 0 30
trustpoint/devices/tests/test_credential_download.py 4 0 4
trustpoint/devices/tests/test_forms/test_base_credential_forms.py 31 0 31
trustpoint/devices/tests/test_forms/test_browser_login.py 5 0 5
trustpoint/devices/tests/test_forms/test_clm_forms.py 23 0 23
trustpoint/devices/tests/test_forms/test_create_device_form.py 3 0 3
trustpoint/devices/tests/test_forms/test_credential_download_form.py 3 0 3
trustpoint/devices/tests/test_forms/test_credential_forms.py 16 0 16
trustpoint/devices/tests/test_forms/test_device_creation_forms.py 31 0 31
trustpoint/devices/tests/test_forms/test_forms_coverage_boost.py 9 0 9
trustpoint/devices/tests/test_issuer/test_domain_credential.py 1 0 1
trustpoint/devices/tests/test_issuer/test_issuer_extended.py 24 0 24
trustpoint/devices/tests/test_issuer/test_opcua_client_credential.py 1 0 1
trustpoint/devices/tests/test_issuer/test_opcua_server_credential.py 1 0 1
trustpoint/devices/tests/test_issuer/test_tls_client_credential.py 2 0 2
trustpoint/devices/tests/test_issuer/test_tls_server_credential.py 1 0 1
trustpoint/devices/tests/test_model_delete.py 4 0 4
trustpoint/devices/tests/test_models/test_device_model.py 8 0 8
trustpoint/devices/tests/test_models/test_remote_device_credential.py 14 0 14
trustpoint/devices/tests/test_revocation/test_device_credential_revocation.py 3 0 3
trustpoint/devices/tests/test_tasks.py 19 0 19
trustpoint/devices/tests/test_urls/test_urls.py 12 0 12
trustpoint/devices/tests/test_utils.py 6 0 6
trustpoint/devices/tests/test_views/test_device_views.py 29 0 29
trustpoint/devices/tests/test_views/test_device_views_clm.py 11 0 11
trustpoint/devices/tests/test_views/test_device_views_extended.py 26 0 26
trustpoint/discovery/tests/test_discovery_views.py 18 0 18
trustpoint/help_pages/tests/test_base.py 20 0 20
trustpoint/help_pages/tests/test_devices_help_views.py 43 0 43
trustpoint/help_pages/tests/test_pki_help_views.py 23 0 23
trustpoint/home/tests/test_filters.py 11 0 11
trustpoint/home/tests/test_integration.py 6 0 6
trustpoint/home/tests/test_views.py 27 0 27
trustpoint/management/tests/test_api/test_backup_viewset.py 13 0 13
trustpoint/management/tests/test_api/test_health_viewset.py 3 0 3
trustpoint/management/tests/test_api/test_logging_viewset.py 19 0 19
trustpoint/management/tests/test_api/test_role_viewset.py 13 0 13
trustpoint/management/tests/test_api/test_tls_viewset.py 12 0 12
trustpoint/management/tests/test_api/test_user_viewset.py 13 0 13
trustpoint/management/tests/test_capabilities.py 4 0 4
trustpoint/management/tests/test_commands.py 28 0 28
trustpoint/management/tests/test_filters/test_audit_log.py 2 0 2
trustpoint/management/tests/test_forms/test_backup.py 5 0 5
trustpoint/management/tests/test_forms/test_ipv4_address_form.py 5 0 5
trustpoint/management/tests/test_forms/test_pkcs11configform.py 4 0 4
trustpoint/management/tests/test_forms/test_security_config.py 38 0 38
trustpoint/management/tests/test_forms/test_tls_import.py 27 0 27
trustpoint/management/tests/test_models/test_audit_log.py 2 0 2
trustpoint/management/tests/test_models/test_backup.py 7 0 7
trustpoint/management/tests/test_models/test_notifications.py 15 0 15
trustpoint/management/tests/test_password_policy.py 23 0 23
trustpoint/management/tests/test_security_decorators.py 14 0 14
trustpoint/management/tests/test_security_env.py 12 0 12
trustpoint/management/tests/test_security_features.py 21 0 21
trustpoint/management/tests/test_security_manager.py 22 0 22
trustpoint/management/tests/test_security_mixins.py 17 0 17
trustpoint/management/tests/test_urls.py 25 0 25
trustpoint/management/tests/test_util/test_output_wrapper.py 11 0 11
trustpoint/management/tests/test_util/test_startup_context.py 5 0 5
trustpoint/management/tests/test_util/test_startup_strategies.py 6 0 6
trustpoint/management/tests/test_views/test_audit_log.py 5 0 5
trustpoint/management/tests/test_views/test_backend_configuration.py 15 0 15
trustpoint/management/tests/test_views/test_backup.py 40 0 40
trustpoint/management/tests/test_views/test_help_support.py 10 0 10
trustpoint/management/tests/test_views/test_logging.py 32 0 32
trustpoint/management/tests/test_views/test_notifications.py 8 0 8
trustpoint/management/tests/test_views/test_organization_management.py 6 0 6
trustpoint/management/tests/test_views/test_pkcs11.py 4 0 4
trustpoint/management/tests/test_views/test_role_management.py 10 0 10
trustpoint/management/tests/test_views/test_settings.py 42 0 42
trustpoint/management/tests/test_views/test_tls.py 38 0 38
trustpoint/management/tests/test_views/test_tls_external_csr.py 41 0 41
trustpoint/management/tests/test_views/test_user_management.py 16 0 16
trustpoint/pki/tests/test_authorization.py 8 0 8
trustpoint/pki/tests/test_auto_gen_pki.py 9 0 9
trustpoint/pki/tests/test_auto_gen_pki_lifecycle.py 9 0 9
trustpoint/pki/tests/test_ca_rollover_model.py 18 0 18
trustpoint/pki/tests/test_ca_rollover_service.py 19 0 19
trustpoint/pki/tests/test_cert_profiles.py 42 0 42
trustpoint/pki/tests/test_crl.py 48 0 48
trustpoint/pki/tests/test_crl_cycle.py 12 0 12
trustpoint/pki/tests/test_crl_cycle_form.py 9 0 9
trustpoint/pki/tests/test_crl_cycle_signals.py 5 0 5
trustpoint/pki/tests/test_crl_cycle_views.py 4 0 4
trustpoint/pki/tests/test_crl_on_revocation.py 5 0 5
trustpoint/pki/tests/test_csr_issuance.py 14 0 14
trustpoint/pki/tests/test_external_csr.py 2 0 2
trustpoint/pki/tests/test_filters.py 16 0 16
trustpoint/pki/tests/test_filters_extended.py 25 0 25
trustpoint/pki/tests/test_forms_cert_profiles_extended.py 25 0 25
trustpoint/pki/tests/test_forms_extended.py 78 0 78
trustpoint/pki/tests/test_forms_issuing_cas_extended.py 47 0 47
trustpoint/pki/tests/test_forms_owner_credential_extended.py 27 0 27
trustpoint/pki/tests/test_forms_truststores.py 21 0 21
trustpoint/pki/tests/test_idevid_authenticator.py 6 0 6
trustpoint/pki/tests/test_idevid_verifier.py 10 0 10
trustpoint/pki/tests/test_issued_credential.py 12 0 12
trustpoint/pki/tests/test_issuing_ca_mixins.py 5 0 5
trustpoint/pki/tests/test_management_ca.py 12 0 12
trustpoint/pki/tests/test_models/test_ca_model_extended.py 34 0 34
trustpoint/pki/tests/test_models/test_certificate_extensions.py 17 0 17
trustpoint/pki/tests/test_models/test_certificate_model.py 2 0 2
trustpoint/pki/tests/test_models/test_certificate_values.py 17 0 17
trustpoint/pki/tests/test_models/test_credential.py 12 0 12
trustpoint/pki/tests/test_models/test_domain_model.py 1 0 1
trustpoint/pki/tests/test_models/test_domain_profiles.py 21 0 21
trustpoint/pki/tests/test_models/test_extension_models.py 90 0 90
trustpoint/pki/tests/test_models/test_issuing_ca_model.py 9 0 9
trustpoint/pki/tests/test_owner_credential_api_helpers.py 8 0 8
trustpoint/pki/tests/test_owner_credential_forms.py 30 0 30
trustpoint/pki/tests/test_owner_credential_models.py 13 0 13
trustpoint/pki/tests/test_owner_credential_views.py 48 0 48
trustpoint/pki/tests/test_rollover_import_ca.py 26 0 26
trustpoint/pki/tests/test_rollover_strategy_contracts.py 3 0 3
trustpoint/pki/tests/test_rollover_tasks.py 8 0 8
trustpoint/pki/tests/test_serializer_owner_credential.py 25 0 25
trustpoint/pki/tests/test_serializer_truststore.py 16 0 16
trustpoint/pki/tests/test_services.py 19 0 19
trustpoint/pki/tests/test_user_client_certificate.py 8 0 8
trustpoint/pki/tests/test_util_cert_req_converter.py 37 0 37
trustpoint/pki/tests/test_util_keys.py 13 0 13
trustpoint/pki/tests/test_util_keys_extended.py 5 0 5
trustpoint/pki/tests/test_util_x509.py 16 0 16
trustpoint/pki/tests/test_util_x509_managed_key_unwrap.py 2 0 2
trustpoint/pki/tests/test_views_ca.py 5 0 5
trustpoint/pki/tests/test_views_ca_rollover.py 19 0 19
trustpoint/pki/tests/test_views_cert_profiles.py 10 0 10
trustpoint/pki/tests/test_views_certificates.py 28 0 28
trustpoint/pki/tests/test_views_domains.py 27 0 27
trustpoint/pki/tests/test_views_issuing_ca_core.py 10 0 10
trustpoint/pki/tests/test_views_issuing_cas.py 2 0 2
trustpoint/pki/tests/test_views_issuing_cas_autogen.py 8 0 8
trustpoint/pki/tests/test_views_truststores.py 21 0 21
trustpoint/pki/tests/test_views_truststores_extended.py 13 0 13
trustpoint/request/tests/test_authentication.py 13 0 13
trustpoint/request/tests/test_authentication_extended.py 73 0 73
trustpoint/request/tests/test_cmp_authorization.py 35 0 35
trustpoint/request/tests/test_cmp_transaction_pipeline.py 27 0 27
trustpoint/request/tests/test_message_responder.py 50 0 50
trustpoint/request/tests/test_mldsa_signing.py 7 0 7
trustpoint/request/tests/test_profile_validator.py 7 0 7
trustpoint/request/tests/test_request_components_additional.py 54 0 54
trustpoint/request/tests/test_workflow2_issuance.py 8 0 8
trustpoint/request/tests/test_workflows2_handler.py 17 0 17
trustpoint/rest_pki/tests/test_revoke.py 39 0 39
trustpoint/setup_wizard/tests/test_forms/test_fresh_install_backend_config_form.py 17 0 17
trustpoint/setup_wizard/tests/test_forms/test_fresh_install_forms.py 41 0 41
trustpoint/setup_wizard/tests/test_models.py 29 0 29
trustpoint/setup_wizard/tests/test_restore_backup.py 5 0 5
trustpoint/setup_wizard/tests/test_urls.py 6 0 6
trustpoint/setup_wizard/tests/test_views/test_fresh_install_views.py 11 0 11
trustpoint/setup_wizard/tests/test_views/test_utility_functions.py 9 0 9
trustpoint/signer/tests/test_api_views.py 22 0 22
trustpoint/signer/tests/test_forms.py 43 0 43
trustpoint/signer/tests/test_models.py 22 0 22
trustpoint/signer/tests/test_views.py 38 0 38
trustpoint/trustpoint/tests/test_forms.py 8 0 8
trustpoint/trustpoint/tests/test_middleware.py 13 0 13
trustpoint/trustpoint/tests/test_page_context.py 9 0 9
trustpoint/trustpoint/tests/test_views/test_bulk_delete.py 13 0 13
trustpoint/trustpoint/tests/test_views/test_context_data.py 4 0 4
trustpoint/trustpoint/tests/test_views/test_index_view.py 2 0 2
trustpoint/trustpoint/tests/test_views/test_list_in_detail_view.py 5 0 5
trustpoint/trustpoint/tests/test_views/test_logged_response.py 7 0 7
trustpoint/trustpoint/tests/test_views/test_sortable_is_active.py 2 0 2
trustpoint/trustpoint/tests/test_views/test_sortable_table.py 5 0 5
trustpoint/users/tests/test_certificate_authentication.py 20 0 20
trustpoint/users/tests/test_integration.py 12 0 12
trustpoint/users/tests/test_management_commands.py 1 0 1
trustpoint/users/tests/test_profile_delete.py 4 0 4
trustpoint/users/tests/test_service_accounts.py 40 0 40
trustpoint/users/tests/test_views.py 37 0 37
trustpoint/util/tests/test_email.py 6 0 6
trustpoint/util/tests/test_email_service.py 19 0 19
trustpoint/util/tests/test_encrypted_fields.py 18 0 18
trustpoint/util/tests/test_sftp.py 18 0 18
trustpoint/workflows2/tests/test_adapters.py 7 1 8
trustpoint/workflows2/tests/test_api_views.py 7 0 7
trustpoint/workflows2/tests/test_crash_recovery.py 3 0 3
trustpoint/workflows2/tests/test_dispatch.py 16 0 16
trustpoint/workflows2/tests/test_dispatch_signal.py 2 0 2
trustpoint/workflows2/tests/test_jobs.py 2 0 2
trustpoint/workflows2/tests/test_persistence.py 1 0 1
trustpoint/workflows2/tests/test_views_http.py 20 0 20
trustpoint/workflows2/tests/test_worker.py 2 0 2
trustpoint/workflows2/tests/test_workflow2_bundle_approval_reject.py 14 0 14
trustpoint/workflows2/tests/test_worker_heartbeat.py 1 0 1
trustpoint/agents/tests/test_agent.py 137 0 137
trustpoint/aoki/tests/test_apps.py 3 0 3
trustpoint/aoki/tests/test_management_commands.py 8 0 8
trustpoint/aoki/tests/test_urls.py 2 0 2
trustpoint/aoki/tests/test_views.py 14 0 14
trustpoint/cmp/tests/test_apps.py 3 0 3
trustpoint/cmp/tests/test_urls.py 9 0 9
trustpoint/cmp/tests/test_util.py 22 0 22
trustpoint/crypto/tests/test_backend.py 12 0 12
trustpoint/crypto/tests/test_backend_placeholders.py 2 0 2
trustpoint/crypto/tests/test_capability_probe.py 4 0 4
trustpoint/crypto/tests/test_config.py 9 0 9
trustpoint/crypto/tests/test_error_map.py 7 0 7
trustpoint/crypto/tests/test_mechanisms.py 11 0 11
trustpoint/crypto/tests/test_session_pool.py 1 0 1
trustpoint/crypto/tests/test_software_backend.py 16 0 16
trustpoint/discovery/tests/test_scanner.py 10 0 10
trustpoint/est/tests/test_est_interface.py 7 0 7
trustpoint/est/tests/test_urls.py 24 0 24
trustpoint/est/tests/test_views.py 33 0 33
trustpoint/help_pages/tests/test_cert_parameters.py 31 0 31
trustpoint/help_pages/tests/test_commands.py 35 0 35
trustpoint/help_pages/tests/test_credential_expiry.py 24 0 24
trustpoint/help_pages/tests/test_csrf_token_filter.py 5 0 5
trustpoint/help_pages/tests/test_help_section.py 11 0 11
trustpoint/help_pages/tests/test_no_onboarding_webui.py 25 0 25
trustpoint/home/tests/test_urls.py 5 0 5
trustpoint/management/tests/test_models/test_account_security.py 1 0 1
trustpoint/management/tests/test_pkcs11_aes_key.py 34 0 34
trustpoint/management/tests/test_pkcs11_private_key.py 23 0 23
trustpoint/request/tests/test_authentication_branches.py 46 0 46
trustpoint/request/tests/test_authorization.py 57 0 57
trustpoint/request/tests/test_certificate_request_processors.py 4 0 4
trustpoint/request/tests/test_cmp_authentication.py 2 0 2
trustpoint/request/tests/test_cmp_client.py 39 0 39
trustpoint/request/tests/test_cmp_message_builder.py 29 0 29
trustpoint/request/tests/test_cmp_remaining_branches.py 24 0 24
trustpoint/request/tests/test_cmp_workflow.py 3 0 3
trustpoint/request/tests/test_est_client.py 11 0 11
trustpoint/request/tests/test_est_workflow.py 2 0 2
trustpoint/request/tests/test_gds_push_service.py 70 0 70
trustpoint/request/tests/test_http_request_validator.py 44 0 44
trustpoint/request/tests/test_issue_cert_processor.py 20 0 20
trustpoint/request/tests/test_message_builder_base.py 13 0 13
trustpoint/request/tests/test_operation_processors_csr.py 36 0 36
trustpoint/request/tests/test_pki_message_parser.py 60 0 60
trustpoint/request/tests/test_request_context.py 10 0 10
trustpoint/request/tests/test_rest_message_parser.py 30 0 30
trustpoint/request/tests/test_sign_operation_processor.py 8 0 8
trustpoint/request/tests/test_template_vars.py 18 0 18
trustpoint/rest_pki/tests/test_views.py 4 0 4
trustpoint/setup_wizard/tests/test_operational_attach.py 15 0 15
trustpoint/setup_wizard/tests/test_operational_handoff.py 2 0 2
trustpoint/setup_wizard/tests/test_tls_credential.py 22 0 22
trustpoint/setup_wizard/tests/test_tls_credential_parser.py 33 0 33
trustpoint/shared/tests/test_templatetags.py 22 0 22
trustpoint/trustpoint/tests/test_asgi.py 1 0 1
trustpoint/trustpoint/tests/test_logger.py 4 0 4
trustpoint/trustpoint/tests/test_settings.py 25 0 25
trustpoint/trustpoint/tests/test_urls.py 8 0 8
trustpoint/trustpoint/tests/test_wsgi.py 1 0 1
trustpoint/users/tests/test_urls.py 11 0 11
trustpoint/util/tests/test_field.py 17 0 17
trustpoint/util/tests/test_mult_obj_views.py 15 0 15
trustpoint/util/tests/test_validation.py 21 0 21
trustpoint/workflows2/tests/test_certificate_integration.py 3 0 3
trustpoint/workflows2/tests/test_compiler.py 34 0 34
trustpoint/workflows2/tests/test_device_integration.py 4 0 4
trustpoint/workflows2/tests/test_eval.py 2 0 2
trustpoint/workflows2/tests/test_executor.py 4 0 4
trustpoint/crypto/tests/test_pkcs11_integration_keys.py 0 2 2
trustpoint/crypto/tests/test_pkcs11_integration_probe.py 0 2 2
trustpoint/crypto/tests/test_pkcs11_integration_signing_contract.py 0 4 4
trustpoint/crypto/tests/test_pkcs11_integration_verify.py 0 3 3
TOTAL 4566 12 4578

@FHatCSW
FHatCSW merged commit 67b9689 into main Oct 6, 2026
25 checks passed
@FHatCSW
FHatCSW deleted the move_autogen_pki branch October 6, 2026 11:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant