Class: Infrawrench::TagPolicyNamespace

Inherits:
Object
  • Object
show all
Defined in:
lib/infrawrench/client.rb,
sig/infrawrench/sdk.rbs

Overview

client.tag_policy

Instance Method Summary collapse

Constructor Details

#initialize(transport) ⇒ TagPolicyNamespace

This method is part of a private API. You should avoid using this method if possible, as it may be removed or be changed in the future.

Returns a new instance of TagPolicyNamespace.

Parameters:



6911
6912
6913
# File 'lib/infrawrench/client.rb', line 6911

def initialize(transport)
  @transport = transport
end

Instance Method Details

#compliance(org_id: nil, request_options: nil) ⇒ Hash

Per-account tag compliance scores

For each account: how many of its resources expose tags and how many of those carry every required tag with an allowed value. score is over the evaluated (tag-capable) set so untaggable resource types don't drag it.

Requires permission: resources:read.

GET /api/org/orgId/tag-policy/compliance

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • org_id: (String, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as TagComplianceReport — see sig/infrawrench/sdk.rbs.

Raises:



6931
6932
6933
6934
6935
6936
6937
6938
# File 'lib/infrawrench/client.rb', line 6931

def compliance(org_id: nil, request_options: nil)
  @transport.request(
    http_method: "GET",
    path: "/api/org/{orgId}/tag-policy/compliance",
    path_params: { "orgId" => org_id },
    request_options: request_options
  )
end

#get(org_id: nil, request_options: nil) ⇒ Hash

The org's required-tag policy

Requires permission: resources:read.

GET /api/org/orgId/tag-policy

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • org_id: (String, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as TagPolicy — see sig/infrawrench/sdk.rbs.

Raises:



6951
6952
6953
6954
6955
6956
6957
6958
# File 'lib/infrawrench/client.rb', line 6951

def get(org_id: nil, request_options: nil)
  @transport.request(
    http_method: "GET",
    path: "/api/org/{orgId}/tag-policy",
    path_params: { "orgId" => org_id },
    request_options: request_options
  )
end

#update(body:, org_id: nil, request_options: nil) ⇒ Hash

Replace the org's tag policy

Sets the required tag keys (each optionally restricted to allowed values) and whether resource creation is blocked when they are missing. Keys are matched case-insensitively against the generic tags/labels field convention.

Requires permission: org:settings:write.

PUT /api/org/orgId/tag-policy

Raises on 400: Bad request

Parameters:

  • org_id (String, nil) (defaults to: nil)

    Organization id. Defaults to the org_id the client was constructed with.

  • body (Hash)

    Request body, shaped as TagPolicy.

  • request_options (Hash, nil) (defaults to: nil)

    Per-call :headers, :timeout and :open_timeout.

  • body: (tag_policy)
  • org_id: (String, nil) (defaults to: nil)
  • request_options: (Hash[Symbol, untyped], nil) (defaults to: nil)

Returns:

  • (Hash)

    Parsed JSON, shaped as TagPolicy — see sig/infrawrench/sdk.rbs.

Raises:



6979
6980
6981
6982
6983
6984
6985
6986
6987
# File 'lib/infrawrench/client.rb', line 6979

def update(body:, org_id: nil, request_options: nil)
  @transport.request(
    http_method: "PUT",
    path: "/api/org/{orgId}/tag-policy",
    path_params: { "orgId" => org_id },
    body: body,
    request_options: request_options
  )
end