gen-jhipster
Version:
VHipster - Spring Boot + Angular/React/Vue in one handy generator
104 lines (103 loc) • 6.49 kB
TypeScript
/**
* Copyright 2013-2026 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 type { Options as ExecaOptions } from 'execa';
import BaseApplicationGenerator from '../base-application/index.ts';
import type { Application as HerokuApplication, Config as HerokuConfig, Entity as HerokuEntity, Options as HerokuOptions } from './types.ts';
type StreamLike = {
on(event: 'data', listener: (chunk: any) => void): any;
};
export default class HerokuGenerator extends BaseApplicationGenerator<HerokuEntity, HerokuApplication, HerokuConfig, HerokuOptions> {
[BaseApplicationGenerator.INITIALIZING]: Record<"initializing" | "checkInstallation" | "herokuLogin", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
[BaseApplicationGenerator.PROMPTING]: Record<"askForApp" | "askForHerokuDeployType" | "askForHerokuJavaVersion", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
[BaseApplicationGenerator.LOADING]: Record<"saveConfig", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
application: HerokuApplication;
} & import("../base-simple-application/tasks.js").ApplicationDefaultsTaskParam<HerokuApplication>>>;
[BaseApplicationGenerator.PREPARING]: Record<"properties", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
source: import("./types.ts").Source;
} & {
application: HerokuApplication;
} & import("../base-simple-application/tasks.js").ApplicationDefaultsTaskParam<HerokuApplication>>>;
[BaseApplicationGenerator.DEFAULT]: Record<"gitInit" | "installHerokuDeployPlugin" | "herokuCreate" | "herokuAddonsCreate" | "configureJHipsterRegistry", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
application: HerokuApplication;
} & {
entities: HerokuEntity<import("../base-application/entity.ts").Field, import("../base-application/entity.ts").Relationship>[];
}>>;
[BaseApplicationGenerator.WRITING]: Record<"copyHerokuFiles" | "addHerokuBuildPlugin" | "addHerokuMavenProfile", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<HerokuApplication>>>;
[BaseApplicationGenerator.END]: Record<"productionBuild" | "productionDeploy", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<HerokuApplication>>>;
hasHerokuCli: boolean;
herokuAppName?: string;
herokuDeployType: string;
herokuJavaVersion: string;
herokuRegion: string;
herokuAppExists: boolean;
herokuSkipDeploy: boolean;
herokuSkipBuild: boolean;
dynoSize: string;
beforeQueue(): Promise<void>;
get initializing(): Record<"initializing" | "checkInstallation" | "herokuLogin", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
get prompting(): Record<"askForApp" | "askForHerokuDeployType" | "askForHerokuJavaVersion", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl>>;
get loading(): Record<"saveConfig", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
application: HerokuApplication;
} & import("../base-simple-application/tasks.js").ApplicationDefaultsTaskParam<HerokuApplication>>>;
get preparing(): Record<"properties", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
source: import("./types.ts").Source;
} & {
application: HerokuApplication;
} & import("../base-simple-application/tasks.js").ApplicationDefaultsTaskParam<HerokuApplication>>>;
get default(): Record<"gitInit" | "installHerokuDeployPlugin" | "herokuCreate" | "herokuAddonsCreate" | "configureJHipsterRegistry", import("../base-core/types.js").GenericTask<any, import("../base/tasks.js").TaskParamWithControl & {
application: HerokuApplication;
} & {
entities: HerokuEntity<import("../base-application/entity.ts").Field, import("../base-application/entity.ts").Relationship>[];
}>>;
get writing(): Record<"copyHerokuFiles" | "addHerokuBuildPlugin" | "addHerokuMavenProfile", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<HerokuApplication>>>;
get end(): Record<"productionBuild" | "productionDeploy", import("../base-core/types.js").GenericTask<any, import("../base-simple-application/tasks.js").TaskParamWithApplication<HerokuApplication>>>;
/**
* TODO drop when dropped from gae, azure-spring-cloud and heroku generators
* @private
* Add a new Maven profile.
*
* @param {string} profileId - profile ID
* @param {string} other - explicit other thing: build, dependencies...
*/
addMavenProfile(profileId: string, other: string): void;
spawnHerokuCommand(command: string, opt?: ExecaOptions & {
verboseInfo?: boolean;
}): Promise<{
stdout: string;
stderr: string;
exitCode: number;
}>;
spawnHeroku(args: string[], opt?: ExecaOptions & {
verboseInfo?: boolean;
}): Promise<{
stdout: string;
stderr: string;
exitCode: number;
}>;
printChildOutput<const T extends {
stdout?: StreamLike | null;
stderr?: StreamLike | null;
}>(child: T, log?: (data: any) => import("@yeoman/types").Logger): T;
checkAddOnReturn({ addOn, stdout, stderr }: {
addOn: string;
stdout: string;
stderr: string;
}): void;
}
export {};