2021-02-21 23:40:10 +01:00
|
|
|
#!/usr/bin/env node
|
2021-02-21 23:06:42 +01:00
|
|
|
|
2021-06-14 21:23:14 +02:00
|
|
|
import { keycloakThemeBuildingDirPath } from "./build-keycloak-theme";
|
2021-03-03 02:31:02 +01:00
|
|
|
import { join as pathJoin } from "path";
|
2021-10-11 21:35:40 +02:00
|
|
|
import { downloadAndUnzip } from "./tools/downloadAndUnzip";
|
2021-02-21 23:06:42 +01:00
|
|
|
|
2022-04-09 20:17:20 +02:00
|
|
|
export function downloadBuiltinKeycloakTheme(params: { keycloakVersion: string; destDirPath: string }) {
|
2021-10-06 17:22:52 +02:00
|
|
|
const { keycloakVersion, destDirPath } = params;
|
|
|
|
|
|
|
|
for (const ext of ["", "-community"]) {
|
|
|
|
downloadAndUnzip({
|
|
|
|
"destDirPath": destDirPath,
|
|
|
|
"url": `https://github.com/keycloak/keycloak/archive/refs/tags/${keycloakVersion}.zip`,
|
2021-10-11 21:35:40 +02:00
|
|
|
"pathOfDirToExtractInArchive": `keycloak-${keycloakVersion}/themes/src/main/resources${ext}/theme`,
|
2021-10-06 17:22:52 +02:00
|
|
|
});
|
|
|
|
}
|
|
|
|
}
|
2021-02-28 18:40:57 +01:00
|
|
|
|
|
|
|
if (require.main === module) {
|
2021-10-07 21:00:53 +02:00
|
|
|
const keycloakVersion = (() => {
|
2022-04-09 20:17:20 +02:00
|
|
|
const keycloakVersion = process.argv[2] as string | undefined;
|
2021-10-07 21:00:53 +02:00
|
|
|
|
|
|
|
if (keycloakVersion === undefined) {
|
2022-01-20 02:52:31 +01:00
|
|
|
return "11.0.3";
|
2021-10-07 21:00:53 +02:00
|
|
|
}
|
2021-10-07 17:32:38 +02:00
|
|
|
|
2021-10-07 21:00:53 +02:00
|
|
|
return keycloakVersion;
|
|
|
|
})();
|
2021-10-07 17:32:38 +02:00
|
|
|
|
2021-10-12 00:26:29 +02:00
|
|
|
const destDirPath = pathJoin(keycloakThemeBuildingDirPath, "src", "main", "resources", "theme");
|
|
|
|
|
|
|
|
console.log(`Downloading builtins theme of Keycloak ${keycloakVersion} here ${destDirPath}`);
|
2021-10-07 21:00:53 +02:00
|
|
|
|
|
|
|
downloadBuiltinKeycloakTheme({
|
|
|
|
keycloakVersion,
|
2021-10-11 21:35:40 +02:00
|
|
|
destDirPath,
|
2021-02-28 18:40:57 +01:00
|
|
|
});
|
|
|
|
}
|