Example #1
0
    def Run(self, args):
        messages = secrets_api.GetMessages()
        secret_ref = args.CONCEPTS.secret.Parse()

        # List all secret versions and parse their refs
        versions = secrets_api.Versions().ListWithPager(secret_ref=secret_ref,
                                                        limit=9999)
        version_refs = []
        for version in versions:
            if version.state != messages.SecretVersion.StateValueValuesEnum.DESTROYED:
                version_ref = secrets_args.ParseVersionRef(version.name)
                version_refs.append(version_ref)

        msg = self.CONFIRM_DELETE_MESSAGE.format(
            secret=secret_ref.Name(), num_versions=len(version_refs))
        console_io.PromptContinue(msg,
                                  throw_if_unattended=True,
                                  cancel_on_no=True)

        for version_ref in version_refs:
            secrets_api.Versions().Destroy(version_ref)
            secrets_log.Versions().Destroyed(version_ref)

        result = secrets_api.Secrets().Delete(secret_ref)
        secrets_log.Secrets().Deleted(secret_ref)
        return result
Example #2
0
 def Run(self, args):
     version_ref = args.CONCEPTS.version.Parse()
     result = secrets_api.Versions(
         version=secrets_util.GetVersionFromReleasePath(
             self.ReleaseTrack())).Enable(version_ref)
     secrets_log.Versions().Enabled(version_ref)
     return result
Example #3
0
    def Run(self, args):
        messages = secrets_api.GetMessages(
            version=secrets_util.GetVersionFromReleasePath(
                self.ReleaseTrack()))
        secret_ref = args.CONCEPTS.secret.Parse()

        # List all secret versions and parse their refs
        versions = secrets_api.Versions(
            version=secrets_util.GetVersionFromReleasePath(
                self.ReleaseTrack())).ListWithPager(secret_ref=secret_ref,
                                                    limit=9999)
        active_version_count = 0
        for version in versions:
            if version.state != messages.SecretVersion.StateValueValuesEnum.DESTROYED:
                active_version_count += 1

        msg = self.CONFIRM_DELETE_MESSAGE.format(
            secret=secret_ref.Name(), num_versions=active_version_count)
        console_io.PromptContinue(msg,
                                  throw_if_unattended=True,
                                  cancel_on_no=True)

        result = secrets_api.Secrets(
            version=secrets_util.GetVersionFromReleasePath(
                self.ReleaseTrack())).Delete(secret_ref)
        secrets_log.Secrets().Deleted(secret_ref)
        return result
Example #4
0
 def Run(self, args):
     version_ref = args.CONCEPTS.version.Parse()
     version = secrets_api.Versions().Access(version_ref)
     if version.payload.dataCrc32c is None or crc32c.does_data_match_checksum(
             version.payload.data, version.payload.dataCrc32c):
         return version
     raise exceptions.HttpException(CHECKSUM_VERIFICATION_FAILURE_MESSAGE)
Example #5
0
    def Run(self, args):
        version_ref = args.CONCEPTS.version.Parse()

        # Destructive action, prompt to continue
        console_io.PromptContinue(self.CONFIRM_DESTROY_MESSAGE.format(
            version=version_ref.Name(), secret=version_ref.Parent().Name()),
                                  throw_if_unattended=True,
                                  cancel_on_no=True)

        result = secrets_api.Versions().Destroy(version_ref)
        secrets_log.Versions().Destroyed(version_ref)
        return result
  def Run(self, args):
    secret_ref = args.CONCEPTS.secret.Parse()
    server_filter = None
    if args.filter:
      rewriter = resource_expr_rewrite.Backend()
      display_info = args.GetDisplayInfo()
      defaults = resource_projection_spec.ProjectionSpec(
          symbols=display_info.transforms, aliases=display_info.aliases)
      _, server_filter = rewriter.Rewrite(args.filter, defaults=defaults)

    return secrets_api.Versions().ListWithPager(
        secret_ref=secret_ref, limit=args.limit, request_filter=server_filter)
Example #7
0
 def Run(self, args):
     version_ref = args.CONCEPTS.version.Parse()
     return secrets_api.Versions().Get(version_ref)
Example #8
0
 def Run(self, args):
     version_ref = args.CONCEPTS.version.Parse()
     result = secrets_api.Versions().Disable(version_ref)
     secrets_log.Versions().Disabled(version_ref)
     return result
Example #9
0
 def Run(self, args):
     secret_ref = args.CONCEPTS.secret.Parse()
     return secrets_api.Versions().ListWithPager(secret_ref=secret_ref,
                                                 limit=args.limit)
Example #10
0
 def Run(self, args):
     version_ref = args.CONCEPTS.version.Parse()
     return secrets_api.Versions(
         version=secrets_util.GetVersionFromReleasePath(
             self.ReleaseTrack())).Access(version_ref)
Example #11
0
 def Run(self, args):
     secret_ref = args.CONCEPTS.secret.Parse()
     return secrets_api.Versions(
         version=secrets_util.GetVersionFromReleasePath(
             self.ReleaseTrack())).ListWithPager(secret_ref=secret_ref,
                                                 limit=args.limit)