- release_tracks: [ALPHA, GA]
  help_text:
    brief: Delete a Cloud Security Command Center (SCC) posture.
    description: |
      Delete a Cloud Security Command Center (SCC) posture.

      Posture with all its revisions is deleted. Deletion won't be allowed in case any of the versions of the posture is deployed on a workload.
      ETAG can be provided as an optional flag.
    examples: |
      Delete the posture named `organizations/123/locations/global/postures/posture-foo-1` (i.e. a posture in organization `123`, location `global`, with id `posture-foo-1`):

        $ {command} organizations/123/locations/global/postures/posture-foo-1

      Delete the posture named `organizations/123/locations/global/postures/posture-foo-1` (i.e. a posture in organization `123`, location `global`, with id `posture-foo-1`)
      for the ETAG ABcdO1Rf5clu7Yhlkwgelo7Vl4tiqd7Sy5iP5SdkSVU

        $ {command} organizations/123/locations/global/postures/posture-foo-1 --etag=ABcdO1Rf5clu7Yhlkwgelo7Vl4tiqd7Sy5iI5SdkSVU

  request:
    collection: securityposture.organizations.locations.postures
    api_version: v1alpha
    method: delete
    GA:
      api_version: v1

  arguments:
    resource:
      spec: !REF googlecloudsdk.command_lib.scc.resources:posture
      help_text: |
          The name of the posture to be deleted. For example organizations/<organizationID>/locations/<location>/postures/<postureID>.

    params:
    - arg_name: etag
      api_field: etag
      required: false
      help_text: |
          Etag is an optional flag. If the provided Etag doesn't match the server generated Etag, the delete operation won't proceed.

  input:
    confirmation_prompt: |
      You are about to delete a posture [{__name__}]. All its revisions will be deleted.

  async:
    collection: securityposture.organizations.locations.operations
