diff --git a/.release-please-manifest.json b/.release-please-manifest.json index d0972da..099626f 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "1.7.1" + ".": "1.8.0" } diff --git a/CHANGELOG.md b/CHANGELOG.md index 14ff1ab..6fbaf1c 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,12 @@ # Changelog +## [1.8.0](https://github.com/googleapis/python-security-private-ca/compare/v1.7.1...v1.8.0) (2023-04-05) + + +### Features + +* Added ignore_dependent_resources to DeleteCaPoolRequest, DeleteCertificateAuthorityRequest, DisableCertificateAuthorityRequest ([#345](https://github.com/googleapis/python-security-private-ca/issues/345)) ([7f71213](https://github.com/googleapis/python-security-private-ca/commit/7f7121369343b67d1bd8182888272185d9262162)) + ## [1.7.1](https://github.com/googleapis/python-security-private-ca/compare/v1.7.0...v1.7.1) (2023-03-23) diff --git a/google/cloud/security/privateca/gapic_version.py b/google/cloud/security/privateca/gapic_version.py index 84856f0..b334dcc 100644 --- a/google/cloud/security/privateca/gapic_version.py +++ b/google/cloud/security/privateca/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.1" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/security/privateca_v1/gapic_version.py b/google/cloud/security/privateca_v1/gapic_version.py index 84856f0..b334dcc 100644 --- a/google/cloud/security/privateca_v1/gapic_version.py +++ b/google/cloud/security/privateca_v1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.1" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/google/cloud/security/privateca_v1/types/resources.py b/google/cloud/security/privateca_v1/types/resources.py index 5bfe1e6..16a3bbc 100644 --- a/google/cloud/security/privateca_v1/types/resources.py +++ b/google/cloud/security/privateca_v1/types/resources.py @@ -128,7 +128,7 @@ class SubjectRequestMode(proto.Enum): permission. REFLECTED_SPIFFE (2): A mode reserved for special cases. Indicates that the - certificate should have one or more SPIFFE + certificate should have one SPIFFE [SubjectAltNames][google.cloud.security.privateca.v1.SubjectAltNames] set by the service based on the caller's identity. This mode will ignore any explicitly specified diff --git a/google/cloud/security/privateca_v1/types/service.py b/google/cloud/security/privateca_v1/types/service.py index d9cc0fe..a678d94 100644 --- a/google/cloud/security/privateca_v1/types/service.py +++ b/google/cloud/security/privateca_v1/types/service.py @@ -526,6 +526,13 @@ class DisableCertificateAuthorityRequest(proto.Message): The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + ignore_dependent_resources (bool): + Optional. This field allows this CA to be + disabled even if it's being depended on by + another resource. However, doing so may result + in unintended and unrecoverable effects on any + dependent resource(s) since the CA will no + longer be able to issue certificates. """ name: str = proto.Field( @@ -536,6 +543,10 @@ class DisableCertificateAuthorityRequest(proto.Message): proto.STRING, number=2, ) + ignore_dependent_resources: bool = proto.Field( + proto.BOOL, + number=3, + ) class EnableCertificateAuthorityRequest(proto.Message): @@ -805,6 +816,13 @@ class DeleteCertificateAuthorityRequest(proto.Message): undeletion would have been allowed. If you proceed, there will be no way to recover this CA. + ignore_dependent_resources (bool): + Optional. This field allows this ca to be + deleted even if it's being depended on by + another resource. However, doing so may result + in unintended and unrecoverable effects on any + dependent resource(s) since the CA will no + longer be able to issue certificates. """ name: str = proto.Field( @@ -823,6 +841,10 @@ class DeleteCertificateAuthorityRequest(proto.Message): proto.BOOL, number=5, ) + ignore_dependent_resources: bool = proto.Field( + proto.BOOL, + number=6, + ) class UpdateCertificateAuthorityRequest(proto.Message): @@ -1007,6 +1029,13 @@ class DeleteCaPoolRequest(proto.Message): The request ID must be a valid UUID with the exception that zero UUID is not supported (00000000-0000-0000-0000-000000000000). + ignore_dependent_resources (bool): + Optional. This field allows this pool to be + deleted even if it's being depended on by + another resource. However, doing so may result + in unintended and unrecoverable effects on any + dependent resource(s) since the pool will no + longer be able to issue certificates. """ name: str = proto.Field( @@ -1017,6 +1046,10 @@ class DeleteCaPoolRequest(proto.Message): proto.STRING, number=2, ) + ignore_dependent_resources: bool = proto.Field( + proto.BOOL, + number=4, + ) class FetchCaCertsRequest(proto.Message): diff --git a/google/cloud/security/privateca_v1beta1/gapic_version.py b/google/cloud/security/privateca_v1beta1/gapic_version.py index 84856f0..b334dcc 100644 --- a/google/cloud/security/privateca_v1beta1/gapic_version.py +++ b/google/cloud/security/privateca_v1beta1/gapic_version.py @@ -13,4 +13,4 @@ # See the License for the specific language governing permissions and # limitations under the License. # -__version__ = "1.7.1" # {x-release-please-version} +__version__ = "1.8.0" # {x-release-please-version} diff --git a/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1.json b/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1.json index 128327c..73d26be 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-private-ca", - "version": "1.7.1" + "version": "1.8.0" }, "snippets": [ { diff --git a/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1beta1.json b/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1beta1.json index e2c15be..5193f56 100644 --- a/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1beta1.json +++ b/samples/generated_samples/snippet_metadata_google.cloud.security.privateca.v1beta1.json @@ -8,7 +8,7 @@ ], "language": "PYTHON", "name": "google-cloud-private-ca", - "version": "1.7.1" + "version": "1.8.0" }, "snippets": [ { diff --git a/scripts/fixup_privateca_v1_keywords.py b/scripts/fixup_privateca_v1_keywords.py index 54d518c..642e6b1 100644 --- a/scripts/fixup_privateca_v1_keywords.py +++ b/scripts/fixup_privateca_v1_keywords.py @@ -44,10 +44,10 @@ class privatecaCallTransformer(cst.CSTTransformer): 'create_certificate': ('parent', 'certificate', 'certificate_id', 'request_id', 'validate_only', 'issuing_certificate_authority_id', ), 'create_certificate_authority': ('parent', 'certificate_authority_id', 'certificate_authority', 'request_id', ), 'create_certificate_template': ('parent', 'certificate_template_id', 'certificate_template', 'request_id', ), - 'delete_ca_pool': ('name', 'request_id', ), - 'delete_certificate_authority': ('name', 'request_id', 'ignore_active_certificates', 'skip_grace_period', ), + 'delete_ca_pool': ('name', 'request_id', 'ignore_dependent_resources', ), + 'delete_certificate_authority': ('name', 'request_id', 'ignore_active_certificates', 'skip_grace_period', 'ignore_dependent_resources', ), 'delete_certificate_template': ('name', 'request_id', ), - 'disable_certificate_authority': ('name', 'request_id', ), + 'disable_certificate_authority': ('name', 'request_id', 'ignore_dependent_resources', ), 'enable_certificate_authority': ('name', 'request_id', ), 'fetch_ca_certs': ('ca_pool', 'request_id', ), 'fetch_certificate_authority_csr': ('name', ), diff --git a/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py b/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py index c329840..97631d6 100644 --- a/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py +++ b/tests/unit/gapic/privateca_v1/test_certificate_authority_service.py @@ -13808,6 +13808,7 @@ def test_delete_certificate_authority_rest_required_fields( assert not set(unset_fields) - set( ( "ignore_active_certificates", + "ignore_dependent_resources", "request_id", "skip_grace_period", ) @@ -13866,6 +13867,7 @@ def test_delete_certificate_authority_rest_unset_required_fields(): set( ( "ignoreActiveCertificates", + "ignoreDependentResources", "requestId", "skipGracePeriod", ) @@ -16264,7 +16266,12 @@ def test_delete_ca_pool_rest_required_fields(request_type=service.DeleteCaPoolRe credentials=ga_credentials.AnonymousCredentials() ).delete_ca_pool._get_unset_required_fields(jsonified_request) # Check that path parameters and body parameters are not mixing in. - assert not set(unset_fields) - set(("request_id",)) + assert not set(unset_fields) - set( + ( + "ignore_dependent_resources", + "request_id", + ) + ) jsonified_request.update(unset_fields) # verify required fields with non-default values are left alone @@ -16315,7 +16322,15 @@ def test_delete_ca_pool_rest_unset_required_fields(): ) unset_fields = transport.delete_ca_pool._get_unset_required_fields({}) - assert set(unset_fields) == (set(("requestId",)) & set(("name",))) + assert set(unset_fields) == ( + set( + ( + "ignoreDependentResources", + "requestId", + ) + ) + & set(("name",)) + ) @pytest.mark.parametrize("null_interceptor", [True, False])