gen-jhipster
Version:
Spring Boot + Angular/React/Vue in one handy generator
150 lines (149 loc) • 6.42 kB
TypeScript
/**
* Copyright 2013-2024 the original author or authors from the JHipster project.
*
* This file is part of the JHipster project, see https://www.jhipster.tech/
* for more information.
*
* Licensed under the Apache License, Version 2.0 (the "License");
* you may not use this file except in compliance with the License.
* You may obtain a copy of the License at
*
* https://www.apache.org/licenses/LICENSE-2.0
*
* Unless required by applicable law or agreed to in writing, software
* distributed under the License is distributed on an "AS IS" BASIS,
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
* See the License for the specific language governing permissions and
* limitations under the License.
*/
import BaseWorkspacesGenerator from '../base-workspaces/index.js';
import { checkImages, configureImageNames, generateJwtSecret, loadFromYoRc } from '../base-workspaces/internal/docker-base.js';
import { loadDockerDependenciesTask } from '../base-workspaces/internal/index.js';
import { loadConfig, setupKubernetesConstants } from './kubernetes-base.js';
/**
* @class
* @extends {BaseWorkspacesGenerator}
*/
export default class KubernetesGenerator extends BaseWorkspacesGenerator {
[x: string]: {
writeDeployments(): void;
writeReadme(): void;
writeNamespace(): void;
writeMessagingBroker(): void;
writeKeycloak(): void;
writePrometheusGrafanaFiles(): void;
writeRegistryFiles(): void;
writeConfigRunFile(): void;
writeObservabilityGatewayFiles(): void;
writeKustomize(): void;
writeSkaffold(): void;
} | {
sayHello(): void;
existingDeployment(): void;
loadDockerDependenciesTask: typeof loadDockerDependenciesTask;
checkDocker: (this: import("../index.js").GeneratorBaseCore) => Promise<void>;
checkKubernetes: () => Promise<void>;
loadConfig: typeof loadConfig;
setupKubernetesConstants: typeof setupKubernetesConstants;
} | {
askForApplicationType: () => Promise<void>;
askForPath: () => Promise<void>;
askForApps: () => Promise<void>;
askForMonitoring: () => Promise<void>;
askForClustersMode: () => Promise<void>;
askForServiceDiscovery: () => Promise<void>;
askForAdminPassword: () => Promise<void>;
askForKubernetesNamespace: typeof import("./prompts.js").askForKubernetesNamespace;
askForDockerRepositoryName: () => Promise<void>;
askForDockerPushCommand: () => Promise<void>;
askForIstioSupport: typeof import("./prompts.js").askForIstioSupport;
askForKubernetesServiceType: typeof import("./prompts.js").askForKubernetesServiceType;
askForIngressType: typeof import("./prompts.js").askForIngressType;
askForIngressDomain: typeof import("./prompts.js").askForIngressDomain;
askForPersistentStorage: typeof import("./prompts.js").askForPersistentStorage;
askForStorageClassName: typeof import("./prompts.js").askForStorageClassName;
} | {
generateJwtSecret: typeof generateJwtSecret;
} | {
loadFromYoRc: typeof loadFromYoRc;
loadSharedConfig(): void;
} | {
configureImageNames: typeof configureImageNames;
setPostPromptProp(): void;
} | {
checkImages: typeof checkImages;
deploy(): void;
} | (() => Promise<void>) | ((databaseType: any, options?: {}) => string);
beforeQueue(): Promise<void>;
get initializing(): {
sayHello(): void;
existingDeployment(): void;
loadDockerDependenciesTask: typeof loadDockerDependenciesTask;
checkDocker: (this: import("../index.js").GeneratorBaseCore) => Promise<void>;
checkKubernetes: () => Promise<void>;
loadConfig: typeof loadConfig;
setupKubernetesConstants: typeof setupKubernetesConstants;
};
get prompting(): {
askForApplicationType: () => Promise<void>;
askForPath: () => Promise<void>;
askForApps: () => Promise<void>;
askForMonitoring: () => Promise<void>;
askForClustersMode: () => Promise<void>;
askForServiceDiscovery: () => Promise<void>;
askForAdminPassword: () => Promise<void>;
askForKubernetesNamespace: typeof import("./prompts.js").askForKubernetesNamespace;
askForDockerRepositoryName: () => Promise<void>;
askForDockerPushCommand: () => Promise<void>;
askForIstioSupport: typeof import("./prompts.js").askForIstioSupport;
askForKubernetesServiceType: typeof import("./prompts.js").askForKubernetesServiceType;
askForIngressType: typeof import("./prompts.js").askForIngressType;
askForIngressDomain: typeof import("./prompts.js").askForIngressDomain;
askForPersistentStorage: typeof import("./prompts.js").askForPersistentStorage;
askForStorageClassName: typeof import("./prompts.js").askForStorageClassName;
};
get configuring(): {
generateJwtSecret: typeof generateJwtSecret;
};
get loading(): {
loadFromYoRc: typeof loadFromYoRc;
loadSharedConfig(): void;
};
get preparing(): {
configureImageNames: typeof configureImageNames;
setPostPromptProp(): void;
};
get writing(): {
writeDeployments(): void;
writeReadme(): void;
writeNamespace(): void;
writeMessagingBroker(): void;
writeKeycloak(): void;
writePrometheusGrafanaFiles(): void;
writeRegistryFiles(): void;
writeConfigRunFile(): void;
writeObservabilityGatewayFiles(): void;
writeKustomize(): void;
writeSkaffold(): void;
};
get end(): {
checkImages: typeof checkImages;
deploy(): void;
};
/**
* @private
* Returns the JDBC URL for a databaseType
*
* @param {string} databaseType
* @param {*} options: databaseName, and required infos that depends of databaseType (hostname, localDirectory, ...)
*/
getJDBCUrl(databaseType: any, options?: {}): string;
/**
* @private
* Returns the R2DBC URL for a databaseType
*
* @param {string} databaseType
* @param {*} options: databaseName, and required infos that depends of databaseType (hostname, localDirectory, ...)
*/
getR2DBCUrl(databaseType: any, options?: {}): string;
}