aws.apigwv2-stage

Filters

json-diff

Compute the diff from the current resource to a previous version.

A resource matches the filter if a diff exists between the current resource and the selected revision.

Utilizes config as a resource revision database.

Revisions can be selected by date, against the previous version, and against a locked version (requires use of is-locked filter).

properties:
  selector:
    enum:
    - previous
    - date
    - locked
  selector_value:
    type: string
  type:
    enum:
    - json-diff
required:
- type

Permissions - config:GetResourceConfigHistory

Actions

delete

Delete an HTTP or WebSocket API stage.

example:

policies:
- name: apigwv2-stage-delete
  resource: apigwv2-stage
  filters:
    - ApiGatewayManaged: False
  actions:
    - type: delete
properties:
  type:
    enum:
    - delete
required:
- type

Permissions - apigateway:DELETE

rename-tag

Rename an existing tag key to a new value.

example:

rename Application, and Bap to App, if a resource has both of the old keys then we’ll use the value specified by Application, which is based on the order of values of old_keys.

policies:
- name: rename-tags-example
  resource: aws.log-group
  filters:
    - or:
      - "tag:Bap": present
      - "tag:Application": present
  actions:
    - type: rename-tag
      old_keys: [Application, Bap]
      new_key: App
properties:
  new_key:
    type: string
  old_key:
    type: string
  old_keys:
    items:
      type: string
    type: array
  type:
    enum:
    - rename-tag
required:
- type

Permissions - tag:TagResources, tag:UntagResources

update

Update configuration of a WebSocket or HTTP API stage.

https://boto3.amazonaws.com/v1/documentation/api/latest/reference/services/apigatewayv2/client/update_stage.html

example:

policies:
  - name: apigw-stage-update
    resource: apigwv2-stage
    filters:
      - description: empty
    actions:
      - type: update
        AutoDeploy: True
        Description: My APIv2
        DefaultRouteSettings:
          DetailedMetricsEnabled: True
properties:
  AccessLogSettings:
    properties:
      DestinationArn:
        type: string
      Format:
        type: string
    type: object
  AutoDeploy:
    type: boolean
  ClientCertificateId:
    type: string
  DefaultRouteSettings:
    properties:
      DataTraceEnabled:
        type: boolean
      DetailedMetricsEnabled:
        type: boolean
      LoggingLevel:
        enum:
        - ERROR
        - INFO
        - 'OFF'
        type: string
      ThrottlingBurstLimit:
        type: integer
      ThrottlingRateLimit:
        type: number
    type: object
  DeploymentId:
    type: string
  Description:
    type: string
  RouteSettings:
    patternProperties:
      ^.+$:
        DataTraceEnabled:
          type: boolean
        DetailedMetricsEnabled:
          type: boolean
        LoggingLevel:
          enum:
          - ERROR
          - INFO
          - 'OFF'
          type: string
        ThrottlingBurstLimit:
          type: integer
        ThrottlingRateLimit:
          type: number
    type: object
  StageVariables:
    patternProperties:
      ^.+$:
        type: string
    type: object
  type:
    enum:
    - update
required:
- type

Permissions - apigateway:PATCH