Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -59,3 +59,6 @@ UPDATE `cloud`.`configuration`
SET value = CONCAT_WS('\n', 'Hello {{username}}!', 'You have requested to reset your password. Please click the following link to reset your password:', '{{{resetLink}}}', 'If you did not request a password reset, please ignore this email.', '', 'Regards,', 'The CloudStack Team')
WHERE name = 'user.password.reset.mail.template'
AND value IN (CONCAT_WS('\n', 'Hello {{username}}!', 'You have requested to reset your password. Please click the following link to reset your password:', 'http://{{{resetLink}}}', 'If you did not request a password reset, please ignore this email.', '', 'Regards,', 'The CloudStack Team'), CONCAT_WS('\n', 'Hello {{username}}!', 'You have requested to reset your password. Please click the following link to reset your password:', '{{{domainUrl}}}{{{resetLink}}}', 'If you did not request a password reset, please ignore this email.', '', 'Regards,', 'The CloudStack Team'));

-- Update storage_provider_name to FlashArray
UPDATE cloud.storage_pool SET storage_provider_name = 'FlashArray' WHERE storage_provider_name = 'Flash Array';

@sureshanaparti sureshanaparti Sep 1, 2026

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@sdodsley this change would now go in the latest schema file, that upgrades to 4.24 (as the PR is target-ed for main/4.24). otherwise, rebase and re-target with 4.22 and keep this change in schema file that upgrade to 4.22.2.

Copy link
Copy Markdown
Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

4.24 is fine

Original file line number Diff line number Diff line change
Expand Up @@ -58,7 +58,7 @@ public abstract class MultipathSCSIAdapterBase implements StorageAdaptor {
*/
static String[] SUPPORTED_OUI_LIST = {
"0002ac", // HPE Primera 3PAR
"24a937" // Pure Flasharray
"24a937" // Pure Storage FlashArray
};

/**
Expand Down
2 changes: 1 addition & 1 deletion plugins/storage/volume/flasharray/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<modelVersion>4.0.0</modelVersion>
<artifactId>cloud-plugin-storage-volume-flasharray</artifactId>
<name>Apache CloudStack Plugin - Storage Volume - Pure Flash Array</name>
<name>Apache CloudStack Plugin - Storage Volume - Pure Storage FlashArray</name>
<parent>
<groupId>org.apache.cloudstack</groupId>
<artifactId>cloudstack-plugins</artifactId>
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -287,7 +287,7 @@ public ProviderVolume getVolume(ProviderAdapterContext context, ProviderAdapterD

return volume;
} catch (Exception e) {
// assume any exception is a not found. Flash returns 400's for most errors
// assume any exception is a not found. FlashArray returns 400's for most errors
return null;
}
}
Expand All @@ -305,7 +305,7 @@ public ProviderVolume getVolumeByAddress(ProviderAdapterContext context, Address
"Invalid volume address type [" + addressType + "] requested for volume search");
}

// convert WWN to serial to search on. strip out WWN type # + Flash OUI value
// convert WWN to serial to search on. strip out WWN type # + FlashArray OUI value
String serial = address.substring(FlashArrayVolume.PURE_OUI.length() + 1).toUpperCase();
String query = "serial='" + serial + "'";

Expand All @@ -327,7 +327,7 @@ public ProviderVolume getVolumeByAddress(ProviderAdapterContext context, Address

return volume;
} catch (Exception e) {
// assume any exception is a not found. Flash returns 400's for most errors
// assume any exception is a not found. FlashArray returns 400's for most errors
return null;
}
}
Expand Down Expand Up @@ -384,7 +384,7 @@ public ProviderVolume revert(ProviderAdapterContext context, ProviderAdapterData
String origVolumeName = snapshot.getSource().getName();

// now "create" a new volume with the snapshot volume as its source (basically a
// Flash array copy)
// FlashArray copy)
// and overwrite to true (volume already exists, we are recreating it)
FlashArrayVolume input = new FlashArrayVolume();
input.setExternalName(origVolumeName);
Expand Down Expand Up @@ -440,7 +440,7 @@ public ProviderVolume copy(ProviderAdapterContext context, ProviderAdapterDataOb
}

// now "create" a new volume with the snapshot volume as its source (basically a
// Flash array copy)
// FlashArray copy)
// and overwrite to true (volume already exists, we are recreating it)
FlashArrayVolume payload = new FlashArrayVolume();
payload.setExternalName(normalizeName(pod, destDataObject.getExternalName()));
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -25,7 +25,7 @@ public class FlashArrayAdapterFactory implements ProviderAdapterFactory {

@Override
public String getProviderName() {
return "Flash Array";
return "FlashArray";
Comment thread
sdodsley marked this conversation as resolved.
}

@Override
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -26,7 +26,7 @@ public FlashArrayPrimaryDatastoreProviderImpl() {

@Override
public String getName() {
return "Flash Array";
return "FlashArray";
}

}
2 changes: 1 addition & 1 deletion tools/ngui/static/js/lib/jquery-1.7.2.js
Original file line number Diff line number Diff line change
Expand Up @@ -1680,7 +1680,7 @@ jQuery.extend({
// attempt to add expando properties to them.
noData: {
"embed": true,
// Ban all objects except for Flash (which handle expandos)
// Ban all objects except for FlashArray (which handle expandos)
"object": "clsid:D27CDB6E-AE6D-11cf-96B8-444553540000",
"applet": true
},
Expand Down
2 changes: 1 addition & 1 deletion ui/public/locales/en.json
Original file line number Diff line number Diff line change
Expand Up @@ -1951,7 +1951,7 @@
"label.primera.username.tooltip": "The username with edit privileges",
"label.primera.url.tooltip": "URL designating the Primera storage array endpoint, formatted as: http[s]://HOSTNAME:PORT?cpg=NAME&hostset=NAME[&skipTlsValidation=true][&snapCPG=NAME][&taskWaitTimeoutMs=#][&keyttl=#][&connectTimeoutMs=#] where values in [] are optional.",
"label.flashArray.username.tooltip": "The username with edit privileges",
"label.flashArray.url.tooltip": "URL designating the Flash Array endpoint, formatted as: http[s]://HOSTNAME:PORT?pod=NAME&hostgroup=NAME[&skipTlsValidation=true][&postCopyWaitMs=#][&keyttl=#][&connectTimeoutMs=#][&apiLoginVersion=#][&apiVersion=#] where values in [] are optional.",
"label.flashArray.url.tooltip": "URL designating the FlashArray endpoint, formatted as: http[s]://HOSTNAME:PORT?pod=NAME&hostgroup=NAME[&skipTlsValidation=true][&postCopyWaitMs=#][&keyttl=#][&connectTimeoutMs=#][&apiLoginVersion=#][&apiVersion=#] where values in [] are optional.",
"label.primary": "Primary",
"label.primary.storage": "Primary Storage",
"label.primary.storage.allocated": "Primary Storage allocated",
Expand Down
2 changes: 1 addition & 1 deletion ui/public/locales/te.json
Original file line number Diff line number Diff line change
Expand Up @@ -1715,7 +1715,7 @@
"label.primera.username.tooltip": "సవరణ అధికారాలతో వినియోగదారు పేరు",
"label.primera.url.tooltip": "ప్రైమెరా స్టోరేజ్ అర్రే ఎండ్‌పాయింట్‌ని నిర్దేశించే URL, ఇలా ఫార్మాట్ చేయబడింది: http[s]://HOSTNAME:PORT?cpg=NAME&hostset=NAME[&skipTlsValidation=true][&snapCPG=NAME][&taskWaitTimeoutMs=#][&keyttl=#][&connectTimeoutMs= ",
"label.flashArray.username.tooltip": "సవరణ అధికారాలతో వినియోగదారు పేరు",
"label.flashArray.url.tooltip": "Flash Array ముగింపు బిందువును నిర్దేశించే URL, ఇలా ఫార్మాట్ చేయబడింది: http[s]://HOSTNAME:PORT?pod=NAME&hostgroup=NAME[&skipTlsValidation=true][&postCopyWaitMs=#][&keyttl=#][&connectTimeoutMs=#][&apiLoginVers ",
"label.flashArray.url.tooltip": "FlashArray ముగింపు బిందువును నిర్దేశించే URL, ఇలా ఫార్మాట్ చేయబడింది: http[s]://HOSTNAME:PORT?pod=NAME&hostgroup=NAME[&skipTlsValidation=true][&postCopyWaitMs=#][&keyttl=#][&connectTimeoutMs=#][&apiLoginVers ",
"label.primary": "ప్రాథమిక",
"label.primary.storage": "ప్రాథమిక నిల్వ",
"label.primary.storage.allocated": "ప్రాథమిక నిల్వ కేటాయించబడింది",
Expand Down
6 changes: 3 additions & 3 deletions ui/src/views/infra/AddPrimaryStorage.vue
Original file line number Diff line number Diff line change
Expand Up @@ -328,7 +328,7 @@
<a-input v-model:value="form.capacityIops" :placeholder="apiParams.capacityiops.description" />
</a-form-item>
</div>
<div v-if="form.provider === 'Flash Array'">
<div v-if="form.provider === 'FlashArray'">
<a-form-item name="flashArrayURL" ref="flashArrayURL">
<template #label>
<tooltip-label :title="$t('label.url')" :tooltip="$t('label.flashArray.url.tooltip')"/>
Expand Down Expand Up @@ -765,7 +765,7 @@ export default {
if (value === 'PowerFlex') {
this.protocols = ['custom']
this.form.protocol = 'custom'
} else if (value === 'Flash Array' || value === 'Primera') {
} else if (value === 'FlashArray' || value === 'Primera') {
this.protocols = ['FiberChannel']
this.form.protocol = 'FiberChannel'
} else {
Expand Down Expand Up @@ -886,7 +886,7 @@ export default {
params['details[0].api_username'] = values.primeraUsername
params['details[0].api_password'] = values.primeraPassword
url = values.primeraURL
} else if (values.provider === 'Flash Array') {
} else if (values.provider === 'FlashArray') {
params['details[0].api_username'] = values.flashArrayUsername
params['details[0].api_password'] = values.flashArrayPassword
url = values.flashArrayURL
Expand Down