CreatePipeline

valid {
    input.Body.PipelineName == STRING
    input.Body.MinUnits == INTEGER
    input.Body.MaxUnits == INTEGER
    input.Body.PipelineConfigurationBody == STRING
    input.Body.LogPublishingOptions.IsLoggingEnabled == BOOLEAN
    input.Body.LogPublishingOptions.CloudWatchLogDestination.LogGroup == STRING
    input.Body.VpcOptions.SubnetIds[_] == STRING
    input.Body.VpcOptions.SecurityGroupIds[_] == STRING
    input.Body.BufferOptions.PersistentBufferEnabled == BOOLEAN
    input.Body.EncryptionAtRestOptions.KmsKeyArn == STRING
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

DeletePipeline

valid {
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetPipeline

valid {
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetPipelineBlueprint

valid {
    input.ReqMap.BlueprintName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

GetPipelineChangeProgress

valid {
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListPipelineBlueprints

valid {
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListPipelines

valid {
    input.Qs.maxResults == INTEGER
    input.Qs.nextToken == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ListTagsForResource

valid {
    input.Qs.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StartPipeline

valid {
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

StopPipeline

valid {
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

TagResource

valid {
    input.Body.Tags[_].Key == STRING
    input.Body.Tags[_].Value == STRING
    input.Qs.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UntagResource

valid {
    input.Body.TagKeys[_] == STRING
    input.Qs.arn == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

UpdatePipeline

valid {
    input.Body.MinUnits == INTEGER
    input.Body.MaxUnits == INTEGER
    input.Body.PipelineConfigurationBody == STRING
    input.Body.LogPublishingOptions.IsLoggingEnabled == BOOLEAN
    input.Body.LogPublishingOptions.CloudWatchLogDestination.LogGroup == STRING
    input.Body.BufferOptions.PersistentBufferEnabled == BOOLEAN
    input.Body.EncryptionAtRestOptions.KmsKeyArn == STRING
    input.ReqMap.PipelineName == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}

ValidatePipeline

valid {
    input.Body.PipelineConfigurationBody == STRING
    input.ProviderMetadata.Account == STRING
    input.ProviderMetadata.AccessKeyId == STRING
    input.ProviderMetadata.Region == STRING
}