Copilot commented on code in PR #14467:
URL: https://github.com/apache/cloudstack/pull/14467#discussion_r4361104043
##########
engine/api/src/main/java/org/apache/cloudstack/engine/orchestration/service/NetworkOrchestrationService.java:
##########
@@ -138,6 +138,23 @@ public interface NetworkOrchestrationService {
ConfigKey<Integer> VmNetworkThrottlingRate = new
ConfigKey<Integer>("Network", Integer.class, "vm.network.throttling.rate",
"200",
"Default data transfer rate in megabits per second allowed in User
vm's default network.", true, ConfigKey.Scope.Zone);
+ ConfigKey<String> NetworkLBHaproxyStatsVisibility = new
ConfigKey<>("Network", String.class,
+ "network.loadbalancer.haproxy.stats.visibility", "global",
+ "Load Balancer(haproxy) stats visibility, the value can be one of
the following six parameters :
global,guest-network,link-local,disabled,all,default",
+ true, ConfigKey.Kind.Select,
"global,guest-network,link-local,disabled,all,default");
+
+ ConfigKey<String> NetworkLBHaproxyStatsUri = new ConfigKey<>("Network",
String.class,
+ "network.loadbalancer.haproxy.stats.uri", "/admin?stats",
+ "Load Balancer(haproxy) uri.", true);
+
+ ConfigKey<String> NetworkLBHaproxyStatsAuth = new ConfigKey<>("Secure",
String.class,
+ "network.loadbalancer.haproxy.stats.auth", "admin1:AdMiN123",
+ "Load Balancer(haproxy) authentication string in the format
username:password", true);
Review Comment:
This introduces a hard-coded default credential (\"admin1:AdMiN123\") for
HAProxy stats auth. Even if marked as `Secure`, shipping a known default
password is unsafe; consider using a null/empty default that disables auth
until explicitly configured, or generating a random secret at first startup and
persisting it (similar to other one-time generated secrets).
##########
plugins/hypervisors/baremetal/src/main/java/com/cloud/baremetal/manager/BaremetalManager.java:
##########
@@ -21,11 +21,30 @@
import com.cloud.utils.component.Manager;
import com.cloud.utils.component.PluggableService;
import org.apache.cloudstack.api.BaremetalProvisionDoneNotificationCmd;
+import org.apache.cloudstack.framework.config.ConfigKey;
public interface BaremetalManager extends Manager, PluggableService {
public static final String EchoSecurityGroupAgent =
"EchoSecurityGroupAgent";
public static final String ExternalBaremetalSystemUrl =
"ExternalBaremetalSystemUrl";
public static final String DO_PXE = "doPxe";
+ ConfigKey<String> BaremetalInternalStorageServer = new
ConfigKey<>("Advanced", String.class, "baremetal.internal.storage.server.ip",
null,
+ "the ip address of server that stores kickstart file, kernel,
initrd, ISO for advanced networking baremetal provisioning", true);
+
+ ConfigKey<Integer> BaremetalProvisionDoneNotificationTimeout = new
ConfigKey<>("Advanced", Integer.class,
"baremetal.provision.done.notification.timeout", "1800",
+ "the max time to wait before treating a baremetal provision as
failure if no provision done notification is not received, in secs", true);
+
+ ConfigKey<String> ExternalBaremetalResourceClassName = new
ConfigKey<>("Advanced", String.class, "external.baremetal.resource.classname",
null,
+ "class name for handling external baremetal resource", true);
+
+ ConfigKey<Boolean> EnableBaremetalSecurityGroupAgentEcho = new
ConfigKey<>("Advanced", Boolean.class,
"enable.baremetal.securitygroup.agent.echo", "false",
+ "After starting provision process, periodcially echo security
agent installed in the template. Treat provisioning as success only if echo
successfully", true);
Review Comment:
Correct typo in config description: \"periodcially\" → \"periodically\".
##########
engine/components-api/src/main/java/com/cloud/storage/StorageManager.java:
##########
@@ -172,6 +175,22 @@ public interface StorageManager extends StorageService {
ConfigKey<Integer> MaxDataMigrationWaitTime = new ConfigKey<>("Advanced",
Integer.class, "max.data.migration.wait.time", "15",
"Maximum wait time (in minutes) for a data migration task before
spawning a new SSVM", false, ConfigKey.Scope.Global);
+
+ ConfigKey<Integer> VmDiskThrottlingIopsReadRate = new
ConfigKey<>("Advanced", Integer.class, "vm.disk.throttling.iops_read_rate", "0",
+ "Default disk I/O read rate in requests per second allowed in User
vm's disk.", true);
+
+ ConfigKey<Integer> VmDiskThrottlingIopsWriteRate = new
ConfigKey<>("Advanced", Integer.class, "vm.disk.throttling.iops_write_rate",
"0",
+ "Default disk I/O writerate in requests per second allowed in User
vm's disk.", true);
+
+ ConfigKey<Long> VmDiskThrottlingBytesReadRate = new
ConfigKey<>("Advanced", Long.class, "vm.disk.throttling.bytes_read_rate", "0",
+ "Default disk I/O read rate in bytes per second allowed in User
vm's disk.", true);
+
+ ConfigKey<Long> VmDiskThrottlingBytesWriteRate = new
ConfigKey<>("Advanced", Long.class, "vm.disk.throttling.bytes_write_rate", "0",
+ "Default disk I/O writerate in bytes per second allowed in User
vm's disk.", true);
Review Comment:
Config description has a typo/wording issue: \"writerate\" should be \"write
rate\".
--
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.
To unsubscribe, e-mail: [email protected]
For queries about this service, please contact Infrastructure at:
[email protected]