armpit
Version:
Another resource manager programming interface toolkit.
49 lines • 2.81 kB
TypeScript
import type { ContainerAppsAPIClientOptionalParams, ManagedEnvironment, ContainerApp, KnownManagedServiceIdentityType, Configuration, Ingress, Template, KnownActiveRevisionsMode, KnownIngressTransportMethod, KnownIngressClientCertificateMode } from "@azure/arm-appcontainers";
import { ContainerAppsAPIClient } from "@azure/arm-appcontainers";
import { type SubscriptionId } from "./azureUtils.js";
import { ManagementClientFactory } from "./azureSdkUtils.js";
import { AzCliInvoker } from "./azCliInvoker.js";
interface ContainerAppToolsOptions {
groupName?: string | null;
location?: string | null;
subscriptionId?: SubscriptionId | null;
abortSignal?: AbortSignal;
}
type UserAssignedIdentityDescriptor = object;
interface ManagedServiceIdentityDescriptor {
type: `${KnownManagedServiceIdentityType}`;
userAssignedIdentities?: {
[propertyName: string]: UserAssignedIdentityDescriptor;
};
}
interface ManagedEnvironmentDescriptor extends Pick<ManagedEnvironment, "daprAIInstrumentationKey" | "daprAIConnectionString" | "vnetConfiguration" | "appLogsConfiguration" | "zoneRedundant" | "workloadProfiles" | "infrastructureResourceGroup" | "peerAuthentication" | "peerTrafficConfiguration"> {
identity?: ManagedServiceIdentityDescriptor;
}
interface IngressDescriptor extends Omit<Ingress, "fqdn" | "transport" | "clientCertificateMode"> {
transport?: `${KnownIngressTransportMethod}`;
clientCertificateMode?: `${KnownIngressClientCertificateMode}`;
}
interface ConfigurationDescriptor extends Omit<Configuration, "activeRevisionsMode" | "ingress"> {
activeRevisionsMode?: `${KnownActiveRevisionsMode}`;
ingress?: IngressDescriptor;
}
type TemplateDescriptor = Template;
interface ContainerAppDescriptor extends Pick<ContainerApp, "environmentId" | "workloadProfileName"> {
configuration?: ConfigurationDescriptor;
identity?: ManagedServiceIdentityDescriptor;
template?: TemplateDescriptor;
}
export declare class ContainerAppTools {
#private;
constructor(dependencies: {
invoker: AzCliInvoker;
managementClientFactory: ManagementClientFactory;
}, options: ContainerAppToolsOptions);
envGet(name: string, options?: ContainerAppToolsOptions): Promise<ManagedEnvironment | null>;
envUpsert(name: string, optionsDescriptor?: ManagedEnvironmentDescriptor & ContainerAppToolsOptions): Promise<ManagedEnvironment>;
appGet(name: string, options?: ContainerAppToolsOptions): Promise<ContainerApp | null>;
appUpsert(name: string, optionsDescriptor: ContainerAppDescriptor & ContainerAppToolsOptions): Promise<ContainerApp>;
getClient(subscriptionId?: SubscriptionId | null, options?: ContainerAppsAPIClientOptionalParams): ContainerAppsAPIClient;
}
export {};
//# sourceMappingURL=containerAppTools.d.ts.map