CLOUDSHELL

cloudshell.operations.cancel

valid {
    input.Body.STRING == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.operations.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.operations.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.operations.list

valid {
    input.ReqMap.name == STRING
    input.Qs.filter == STRING
    input.Qs.pageSize == INTEGER
    input.Qs.pageToken == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.addPublicKey

valid {
    input.Body.key == STRING
    input.ReqMap.environment == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.authorize

valid {
    input.Body.accessToken == STRING
    input.Body.expireTime == STRING
    input.Body.idToken == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.get

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.patch

enum_EnvironmentSize := [ "VM_SIZE_UNSPECIFIED", "DEFAULT", "BOOSTED" ]
enum_EnvironmentState := [ "STATE_UNSPECIFIED", "DISABLED", "STARTING", "RUNNING", "DELETING" ]
enum_PublicKeyFormat := [ "FORMAT_UNSPECIFIED", "SSH_DSS", "SSH_RSA", "ECDSA_SHA2_NISTP256", "ECDSA_SHA2_NISTP384", "ECDSA_SHA2_NISTP521" ]

valid {
    input.Body.dockerImage == STRING
    input.Body.id == STRING
    input.Body.name == STRING
    input.Body.publicKeys[_].format == enum_PublicKeyFormat[_]
    input.Body.publicKeys[_].key == STRING
    input.Body.publicKeys[_].name == STRING
    input.Body.size == enum_EnvironmentSize[_]
    input.Body.sshHost == STRING
    input.Body.sshPort == INTEGER
    input.Body.sshUsername == STRING
    input.Body.state == enum_EnvironmentState[_]
    input.Body.vmSizeExpireTime == STRING
    input.Body.webHost == STRING
    input.Body.webPorts[_] == INTEGER
    input.ReqMap.name == STRING
    input.Qs.updateMask == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.publicKeys.create

enum_PublicKeyFormat := [ "FORMAT_UNSPECIFIED", "SSH_DSS", "SSH_RSA", "ECDSA_SHA2_NISTP256", "ECDSA_SHA2_NISTP384", "ECDSA_SHA2_NISTP521" ]

valid {
    input.Body.key.format == enum_PublicKeyFormat[_]
    input.Body.key.key == STRING
    input.Body.key.name == STRING
    input.ReqMap.parent == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.publicKeys.delete

valid {
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.removePublicKey

valid {
    input.Body.key == STRING
    input.ReqMap.environment == STRING
    input.ProviderMetadata.Region == STRING
}

cloudshell.users.environments.start

valid {
    input.Body.accessToken == STRING
    input.Body.publicKeys[_] == STRING
    input.ReqMap.name == STRING
    input.ProviderMetadata.Region == STRING
}