Skip to content

Commit a15fbd9

Browse files
authored
refactor: remove use of term entry-point from extensions code base (#11488)
Addresses #11483 Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
1 parent 09b63bc commit a15fbd9

File tree

4 files changed

+27
-26
lines changed

4 files changed

+27
-26
lines changed

framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/api/DeleteExtensionCmd.java

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,8 @@ public class DeleteExtensionCmd extends BaseCmd {
5656
private Long id;
5757

5858
@Parameter(name = ApiConstants.CLEANUP, type = CommandType.BOOLEAN,
59-
entityType = ExtensionResponse.class, description = "Whether cleanup entry-point files for the extension")
59+
entityType = ExtensionResponse.class,
60+
description = "Whether to cleanup files for the extension. If true, the extension files will be deleted from all the management servers.")
6061
private Boolean cleanup;
6162

6263
/////////////////////////////////////////////////////

framework/extensions/src/main/java/org/apache/cloudstack/framework/extensions/manager/ExtensionsManagerImpl.java

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -152,7 +152,7 @@ public class ExtensionsManagerImpl extends ManagerBase implements ExtensionsMana
152152

153153
ConfigKey<Integer> PathStateCheckInterval = new ConfigKey<>("Advanced", Integer.class,
154154
"extension.path.state.check.interval", "300",
155-
"Interval (in seconds) for checking entry-point state of extensions",
155+
"Interval (in seconds) for checking state of extensions path",
156156
false, ConfigKey.Scope.Global);
157157

158158
@Inject
@@ -264,19 +264,19 @@ protected Pair<Boolean, String> getResultFromAnswersString(String answersStr, Ex
264264

265265
protected boolean prepareExtensionPathOnMSPeer(Extension extension, ManagementServerHostVO msHost) {
266266
final String msPeer = Long.toString(msHost.getMsid());
267-
logger.debug("Sending prepare extension entry-point for {} command to MS: {}", extension, msPeer);
267+
logger.debug("Sending prepare extension path for {} command to MS: {}", extension, msPeer);
268268
final Command[] commands = new Command[1];
269269
commands[0] = new PrepareExtensionPathCommand(ManagementServerNode.getManagementServerId(), extension);
270270
String answersStr = clusterManager.execute(msPeer, 0L, GsonHelper.getGson().toJson(commands), true);
271-
return getResultFromAnswersString(answersStr, extension, msHost, "prepare entry-point").first();
271+
return getResultFromAnswersString(answersStr, extension, msHost, "prepare path").first();
272272
}
273273

274274
protected Pair<Boolean, String> prepareExtensionPathOnCurrentServer(String name, boolean userDefined,
275275
String relativePath) {
276276
try {
277277
externalProvisioner.prepareExtensionPath(name, userDefined, relativePath);
278278
} catch (CloudRuntimeException e) {
279-
logger.error("Failed to prepare entry-point for Extension [name: {}, userDefined: {}, relativePath: {}] on this server",
279+
logger.error("Failed to prepare path for Extension [name: {}, userDefined: {}, relativePath: {}] on this server",
280280
name, userDefined, relativePath, e);
281281
return new Pair<>(false, e.getMessage());
282282
}
@@ -285,38 +285,38 @@ protected Pair<Boolean, String> prepareExtensionPathOnCurrentServer(String name,
285285

286286
protected boolean cleanupExtensionFilesOnMSPeer(Extension extension, ManagementServerHostVO msHost) {
287287
final String msPeer = Long.toString(msHost.getMsid());
288-
logger.debug("Sending cleanup extension entry-point for {} command to MS: {}", extension, msPeer);
288+
logger.debug("Sending cleanup extension files for {} command to MS: {}", extension, msPeer);
289289
final Command[] commands = new Command[1];
290290
commands[0] = new CleanupExtensionFilesCommand(ManagementServerNode.getManagementServerId(), extension);
291291
String answersStr = clusterManager.execute(msPeer, 0L, GsonHelper.getGson().toJson(commands), true);
292-
return getResultFromAnswersString(answersStr, extension, msHost, "cleanup entry-point").first();
292+
return getResultFromAnswersString(answersStr, extension, msHost, "cleanup files").first();
293293
}
294294

295295
protected Pair<Boolean, String> cleanupExtensionFilesOnCurrentServer(String name, String relativePath) {
296296
try {
297297
externalProvisioner.cleanupExtensionPath(name, relativePath);
298298
externalProvisioner.cleanupExtensionData(name, 0, true);
299299
} catch (CloudRuntimeException e) {
300-
logger.error("Failed to cleanup entry-point files for Extension [name: {}, relativePath: {}] on this server",
300+
logger.error("Failed to cleanup files for Extension [name: {}, relativePath: {}] on this server",
301301
name, relativePath, e);
302302
return new Pair<>(false, e.getMessage());
303303
}
304304
return new Pair<>(true, null);
305305
}
306306

307307
protected void cleanupExtensionFilesAcrossServers(Extension extension) {
308-
boolean cleanup = true;
308+
boolean cleanedUp = true;
309309
List<ManagementServerHostVO> msHosts = managementServerHostDao.listBy(ManagementServerHost.State.Up);
310310
for (ManagementServerHostVO msHost : msHosts) {
311311
if (msHost.getMsid() == ManagementServerNode.getManagementServerId()) {
312-
cleanup = cleanup && cleanupExtensionFilesOnCurrentServer(extension.getName(),
312+
cleanedUp = cleanedUp && cleanupExtensionFilesOnCurrentServer(extension.getName(),
313313
extension.getRelativePath()).first();
314314
continue;
315315
}
316-
cleanup = cleanup && cleanupExtensionFilesOnMSPeer(extension, msHost);
316+
cleanedUp = cleanedUp && cleanupExtensionFilesOnMSPeer(extension, msHost);
317317
}
318-
if (!cleanup) {
319-
throw new CloudRuntimeException("Extension is deleted but its entry-point files are not cleaned up across servers");
318+
if (!cleanedUp) {
319+
throw new CloudRuntimeException("Extension is deleted but its files are not cleaned up across servers");
320320
}
321321
}
322322

@@ -327,7 +327,7 @@ protected Pair<Boolean, String> getChecksumForExtensionPathOnMSPeer(Extension ex
327327
cmds[0] = new GetExtensionPathChecksumCommand(ManagementServerNode.getManagementServerId(),
328328
extension);
329329
String answersStr = clusterManager.execute(msPeer, 0L, GsonHelper.getGson().toJson(cmds), true);
330-
return getResultFromAnswersString(answersStr, extension, msHost, "prepare entry-point");
330+
return getResultFromAnswersString(answersStr, extension, msHost, "get path checksum");
331331
}
332332

333333
protected List<ExtensionCustomAction.Parameter> getParametersListFromMap(String actionName, Map parametersMap) {
@@ -549,7 +549,7 @@ protected void checkExtensionPathState(Extension extension, List<ManagementServe
549549
final Pair<Boolean, String> msPeerChecksumResult = getChecksumForExtensionPathOnMSPeer(extension,
550550
msHost);
551551
if (!msPeerChecksumResult.first() || !checksum.equals(msPeerChecksumResult.second())) {
552-
logger.error("Entry-point checksum for {} is different [msid: {}, checksum: {}] and [msid: {}, checksum: {}]",
552+
logger.error("Path checksum for {} is different [msid: {}, checksum: {}] and [msid: {}, checksum: {}]",
553553
extension, ManagementServerNode.getManagementServerId(), checksum, msHost.getMsid(),
554554
(msPeerChecksumResult.first() ? msPeerChecksumResult.second() : "unknown"));
555555
updateExtensionPathReady(extension, false);
@@ -630,7 +630,7 @@ public Extension createExtension(CreateExtensionCmd cmd) {
630630
!prepareExtensionPathAcrossServers(extensionVO)) {
631631
disableExtension(extensionVO.getId());
632632
throw new CloudRuntimeException(String.format(
633-
"Failed to enable extension: %s as it entry-point is not ready",
633+
"Failed to enable extension: %s as its path is not ready",
634634
extensionVO.getName()));
635635
}
636636
return extensionVO;
@@ -736,7 +736,7 @@ public Extension updateExtension(UpdateExtensionCmd cmd) {
736736
!prepareExtensionPathAcrossServers(result)) {
737737
disableExtension(result.getId());
738738
throw new CloudRuntimeException(String.format(
739-
"Failed to enable extension: %s as it entry-point is not ready",
739+
"Failed to enable extension: %s as it path is not ready",
740740
extensionVO.getName()));
741741
}
742742
updateAllExtensionHosts(extensionVO, null, false);

plugins/hypervisors/external/src/main/java/org/apache/cloudstack/hypervisor/external/provisioner/ExternalPathPayloadProvisioner.java

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -631,18 +631,18 @@ public void cleanupExtensionPath(String extensionName, String extensionRelativeP
631631
}
632632
if (!Files.isDirectory(filePath) && !Files.isRegularFile(filePath)) {
633633
throw new CloudRuntimeException(
634-
String.format("Failed to cleanup extension entry-point: %s for extension: %s as it either " +
634+
String.format("Failed to cleanup path: %s for extension: %s as it either " +
635635
"does not exist or is not a regular file/directory",
636636
extensionName, extensionRelativePath));
637637
}
638638
if (!FileUtil.deleteRecursively(filePath)) {
639639
throw new CloudRuntimeException(
640-
String.format("Failed to delete extension entry-point: %s for extension: %s",
640+
String.format("Failed to delete path: %s for extension: %s",
641641
extensionName, filePath));
642642
}
643643
} catch (IOException e) {
644644
throw new CloudRuntimeException(
645-
String.format("Failed to cleanup extension entry-point: %s for extension: %s due to: %s",
645+
String.format("Failed to cleanup path: %s for extension: %s due to: %s",
646646
extensionName, normalizedPath, e.getMessage()), e);
647647
}
648648
}

ui/src/views/extension/CreateExtension.vue

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -46,15 +46,15 @@
4646
<template #label>
4747
<tooltip-label :title="$t('label.path')" :tooltip="apiParams.path.description"/>
4848
</template>
49-
<div class="entry-point-input-container">
50-
<span v-if="!!safeName" :title="extenstionBasePath" class="entry-point-input-base-path">
49+
<div class="path-input-container">
50+
<span v-if="!!safeName" :title="extenstionBasePath" class="path-input-base">
5151
{{ extenstionBasePath }}
5252
</span>
5353
<a-input
5454
v-model:value="form.path"
5555
:placeholder="apiParams.path.description"
5656
@input="markPathModified"
57-
class="entry-point-input-relative-path"
57+
class="path-input-relative"
5858
/>
5959
</div>
6060
</a-form-item>
@@ -236,20 +236,20 @@ export default {
236236
}
237237
}
238238
239-
.entry-point-input-container {
239+
.path-input-container {
240240
display: flex;
241241
align-items: center;
242242
gap: 8px;
243243
}
244244
245-
.entry-point-input-base-path {
245+
.path-input-base {
246246
max-width: 70%;
247247
overflow: hidden;
248248
white-space: nowrap;
249249
text-overflow: ellipsis;
250250
}
251251
252-
.entry-point-input-relative-path {
252+
.path-input-relative {
253253
flex: 1 1 0%;
254254
min-width: 0;
255255
}

0 commit comments

Comments
 (0)