Skip to content

Commit dc31bc3

Browse files
committed
refactor: remove use of term entry-point from extensions code base
Addresses #11483 Signed-off-by: Abhishek Kumar <abhishek.mrt22@gmail.com>
1 parent f2d6356 commit dc31bc3

4 files changed

Lines changed: 27 additions & 26 deletions

File tree

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
@@ -148,7 +148,7 @@ public class ExtensionsManagerImpl extends ManagerBase implements ExtensionsMana
148148

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

154154
@Inject
@@ -260,19 +260,19 @@ protected Pair<Boolean, String> getResultFromAnswersString(String answersStr, Ex
260260

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

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

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

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

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

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

329329
protected List<ExtensionCustomAction.Parameter> getParametersListFromMap(String actionName, Map parametersMap) {
@@ -518,7 +518,7 @@ protected void checkExtensionPathState(Extension extension, List<ManagementServe
518518
final Pair<Boolean, String> msPeerChecksumResult = getChecksumForExtensionPathOnMSPeer(extension,
519519
msHost);
520520
if (!msPeerChecksumResult.first() || !checksum.equals(msPeerChecksumResult.second())) {
521-
logger.error("Entry-point checksum for {} is different [msid: {}, checksum: {}] and [msid: {}, checksum: {}]",
521+
logger.error("Path checksum for {} is different [msid: {}, checksum: {}] and [msid: {}, checksum: {}]",
522522
extension, ManagementServerNode.getManagementServerId(), checksum, msHost.getMsid(),
523523
(msPeerChecksumResult.first() ? msPeerChecksumResult.second() : "unknown"));
524524
updateExtensionPathReady(extension, false);
@@ -599,7 +599,7 @@ public Extension createExtension(CreateExtensionCmd cmd) {
599599
!prepareExtensionPathAcrossServers(extensionVO)) {
600600
disableExtension(extensionVO.getId());
601601
throw new CloudRuntimeException(String.format(
602-
"Failed to enable extension: %s as it entry-point is not ready",
602+
"Failed to enable extension: %s as its path is not ready",
603603
extensionVO.getName()));
604604
}
605605
return extensionVO;
@@ -705,7 +705,7 @@ public Extension updateExtension(UpdateExtensionCmd cmd) {
705705
!prepareExtensionPathAcrossServers(result)) {
706706
disableExtension(result.getId());
707707
throw new CloudRuntimeException(String.format(
708-
"Failed to enable extension: %s as it entry-point is not ready",
708+
"Failed to enable extension: %s as it path is not ready",
709709
extensionVO.getName()));
710710
}
711711
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
@@ -564,18 +564,18 @@ public void cleanupExtensionPath(String extensionName, String extensionRelativeP
564564
}
565565
if (!Files.isDirectory(filePath) && !Files.isRegularFile(filePath)) {
566566
throw new CloudRuntimeException(
567-
String.format("Failed to cleanup extension entry-point: %s for extension: %s as it either " +
567+
String.format("Failed to cleanup path: %s for extension: %s as it either " +
568568
"does not exist or is not a regular file/directory",
569569
extensionName, extensionRelativePath));
570570
}
571571
if (!FileUtil.deleteRecursively(filePath)) {
572572
throw new CloudRuntimeException(
573-
String.format("Failed to delete extension entry-point: %s for extension: %s",
573+
String.format("Failed to delete path: %s for extension: %s",
574574
extensionName, filePath));
575575
}
576576
} catch (IOException e) {
577577
throw new CloudRuntimeException(
578-
String.format("Failed to cleanup extension entry-point: %s for extension: %s due to: %s",
578+
String.format("Failed to cleanup path: %s for extension: %s due to: %s",
579579
extensionName, normalizedPath, e.getMessage()), e);
580580
}
581581
}

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)