KMP PHP API Reference

TenantPocCommand extends Command
in package

Automates the two-tenant staging proof-of-concept harness.

Table of Contents

Methods

defaultName()  : string
execute()  : int
buildOptionParser()  : ConsoleOptionParser
assertDistinctTenants()  : void
assertExecutionAllowed()  : void
Enforce explicit safety gates before touching staging resources.
assertValidHost()  : void
Validate DNS host syntax.
assertValidIdentifier()  : void
Validate a PostgreSQL identifier.
assertValidSlug()  : void
Validate tenant slug syntax.
envFlag()  : bool
Read a boolean environment flag.
isProductionEnvironment()  : bool
Determine whether the command is running in production.
platformConnection()  : Connection
Get the platform metadata connection.
provisionTenant()  : void
smokeTenant()  : void
Verify a tenant database is reachable and has the expected table.
tenantDefinition()  : array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}
tenantDefinitions()  : array<int, array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}>

Methods

defaultName()

public static defaultName() : string
Tags
inheritDoc
Return values
string

execute()

public execute(Arguments $args, ConsoleIo $io) : int
Parameters
$args : Arguments
$io : ConsoleIo
Tags
inheritDoc
Return values
int

buildOptionParser()

protected buildOptionParser(ConsoleOptionParser $parser) : ConsoleOptionParser
Parameters
$parser : ConsoleOptionParser
Tags
inheritDoc
Return values
ConsoleOptionParser

assertDistinctTenants()

private assertDistinctTenants(array<int, array{slug: string, host: string}> $tenants) : void
Parameters
$tenants : array<int, array{slug: string, host: string}>

Tenant definitions

assertExecutionAllowed()

Enforce explicit safety gates before touching staging resources.

private assertExecutionAllowed(Arguments $args) : void
Parameters
$args : Arguments

Command arguments

assertValidHost()

Validate DNS host syntax.

private assertValidHost(string $host) : void
Parameters
$host : string

Tenant host

assertValidIdentifier()

Validate a PostgreSQL identifier.

private assertValidIdentifier(string $identifier, string $label) : void
Parameters
$identifier : string

Identifier value

$label : string

Human-readable label

assertValidSlug()

Validate tenant slug syntax.

private assertValidSlug(string $slug) : void
Parameters
$slug : string

Tenant slug

envFlag()

Read a boolean environment flag.

private envFlag(string $name) : bool
Parameters
$name : string

Environment variable name

Return values
bool

isProductionEnvironment()

Determine whether the command is running in production.

private isProductionEnvironment() : bool
Return values
bool

platformConnection()

Get the platform metadata connection.

private platformConnection() : Connection
Return values
Connection

provisionTenant()

private provisionTenant(array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string} $tenant, Arguments $args, ConsoleIo $io) : void
Parameters
$tenant : array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}

Tenant definition

$args : Arguments
$io : ConsoleIo

tenantDefinition()

private tenantDefinition(string $slug, string $host, string $displayName, string $dbPrefix) : array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}
Parameters
$slug : string
$host : string
$displayName : string
$dbPrefix : string
Return values
array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}

tenantDefinitions()

private tenantDefinitions(Arguments $args) : array<int, array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}>
Parameters
$args : Arguments
Return values
array<int, array{slug: string, host: string, displayName: string, dbName: string, dbRole: string, blobContainer: string}>
On this page

Search results