add build option keepBuildDir
if set to true, will not cleanup build_keycloak directory
This commit is contained in:
@ -78,6 +78,9 @@
|
|||||||
},
|
},
|
||||||
"themeName": {
|
"themeName": {
|
||||||
"type": "string"
|
"type": "string"
|
||||||
|
},
|
||||||
|
"keepBuildDir": {
|
||||||
|
"type": "boolean"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
"additionalProperties": false
|
"additionalProperties": false
|
||||||
|
@ -27,6 +27,7 @@ export namespace BuildOptions {
|
|||||||
/** Directory that keycloakify outputs to. Defaults to {cwd}/build_keycloak */
|
/** Directory that keycloakify outputs to. Defaults to {cwd}/build_keycloak */
|
||||||
keycloakifyBuildDirPath: string;
|
keycloakifyBuildDirPath: string;
|
||||||
customUserAttributes: string[];
|
customUserAttributes: string[];
|
||||||
|
keepBuildDir: boolean;
|
||||||
};
|
};
|
||||||
|
|
||||||
export type Standalone = Common & {
|
export type Standalone = Common & {
|
||||||
@ -98,8 +99,17 @@ export function readBuildOptions(params: { projectDirPath: string; isExternalAss
|
|||||||
const common: BuildOptions.Common = (() => {
|
const common: BuildOptions.Common = (() => {
|
||||||
const { name, keycloakify = {}, version, homepage } = parsedPackageJson;
|
const { name, keycloakify = {}, version, homepage } = parsedPackageJson;
|
||||||
|
|
||||||
const { extraPages, extraLoginPages, extraAccountPages, extraThemeProperties, groupId, artifactId, bundler, keycloakVersionDefaultAssets } =
|
const {
|
||||||
keycloakify ?? {};
|
extraPages,
|
||||||
|
extraLoginPages,
|
||||||
|
extraAccountPages,
|
||||||
|
extraThemeProperties,
|
||||||
|
groupId,
|
||||||
|
artifactId,
|
||||||
|
bundler,
|
||||||
|
keycloakVersionDefaultAssets,
|
||||||
|
keepBuildDir
|
||||||
|
} = keycloakify ?? {};
|
||||||
|
|
||||||
const themeName =
|
const themeName =
|
||||||
keycloakify.themeName ??
|
keycloakify.themeName ??
|
||||||
@ -179,7 +189,8 @@ export function readBuildOptions(params: { projectDirPath: string; isExternalAss
|
|||||||
|
|
||||||
return keycloakifyBuildDirPath;
|
return keycloakifyBuildDirPath;
|
||||||
})(),
|
})(),
|
||||||
"customUserAttributes": keycloakify.customUserAttributes ?? []
|
"customUserAttributes": keycloakify.customUserAttributes ?? [],
|
||||||
|
"keepBuildDir": keepBuildDir ?? false
|
||||||
};
|
};
|
||||||
})();
|
})();
|
||||||
|
|
||||||
|
@ -26,6 +26,11 @@ export async function main() {
|
|||||||
"isSilent": isSilent
|
"isSilent": isSilent
|
||||||
});
|
});
|
||||||
|
|
||||||
|
if (!buildOptions.keepBuildDir) {
|
||||||
|
logger.log("🧹 Cleanup files under " + buildOptions.keycloakifyBuildDirPath);
|
||||||
|
fs.rmSync(buildOptions.keycloakifyBuildDirPath, { recursive: true, force: true });
|
||||||
|
}
|
||||||
|
|
||||||
const { doBundlesEmailTemplate } = await generateKeycloakThemeResources({
|
const { doBundlesEmailTemplate } = await generateKeycloakThemeResources({
|
||||||
keycloakThemeBuildingDirPath: buildOptions.keycloakifyBuildDirPath,
|
keycloakThemeBuildingDirPath: buildOptions.keycloakifyBuildDirPath,
|
||||||
"emailThemeSrcDirPath": (() => {
|
"emailThemeSrcDirPath": (() => {
|
||||||
|
@ -25,6 +25,7 @@ export type ParsedPackageJson = {
|
|||||||
keycloakifyBuildDirPath?: string;
|
keycloakifyBuildDirPath?: string;
|
||||||
customUserAttributes?: string[];
|
customUserAttributes?: string[];
|
||||||
themeName?: string;
|
themeName?: string;
|
||||||
|
keepBuildDir?: boolean;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -46,7 +47,8 @@ export const zParsedPackageJson = z.object({
|
|||||||
"reactAppBuildDirPath": z.string().optional(),
|
"reactAppBuildDirPath": z.string().optional(),
|
||||||
"keycloakifyBuildDirPath": z.string().optional(),
|
"keycloakifyBuildDirPath": z.string().optional(),
|
||||||
"customUserAttributes": z.array(z.string()).optional(),
|
"customUserAttributes": z.array(z.string()).optional(),
|
||||||
"themeName": z.string().optional()
|
"themeName": z.string().optional(),
|
||||||
|
"keepBuildDir": z.boolean().optional()
|
||||||
})
|
})
|
||||||
.optional()
|
.optional()
|
||||||
});
|
});
|
||||||
|
Reference in New Issue
Block a user