diff --git a/client/pom.xml b/client/pom.xml
index 9da01e8647e..8ff1fea9adb 100644
--- a/client/pom.xml
+++ b/client/pom.xml
@@ -417,11 +417,6 @@
cloud-engine-components-api
${project.version}
-
- org.apache.cloudstack
- cloud-engine-network
- ${project.version}
-
org.apache.cloudstack
cloud-engine-orchestration
diff --git a/engine/network/pom.xml b/engine/network/pom.xml
deleted file mode 100644
index f0a3cd94748..00000000000
--- a/engine/network/pom.xml
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
- 4.0.0
- cloud-engine-network
- Apache CloudStack Cloud Engine API
-
- org.apache.cloudstack
- cloud-engine
- 4.19.0.0-SNAPSHOT
- ../pom.xml
-
-
-
- org.apache.cloudstack
- cloud-engine-api
- ${project.version}
-
-
- org.apache.cloudstack
- cloud-engine-components-api
- ${project.version}
-
-
- org.apache.cloudstack
- cloud-framework-ipc
- ${project.version}
-
-
-
diff --git a/engine/network/src/main/java/org/apache/cloudstack/network/NetworkOrchestrator.java b/engine/network/src/main/java/org/apache/cloudstack/network/NetworkOrchestrator.java
deleted file mode 100644
index 8b6b6e431d3..00000000000
--- a/engine/network/src/main/java/org/apache/cloudstack/network/NetworkOrchestrator.java
+++ /dev/null
@@ -1,40 +0,0 @@
-/*
- * Licensed to the Apache Software Foundation (ASF) under one
- * or more contributor license agreements. See the NOTICE file
- * distributed with this work for additional information
- * regarding copyright ownership. The ASF licenses this file
- * to you under the Apache License, Version 2.0 (the
- * "License"); you may not use this file except in compliance
- * with the License. You may obtain a copy of the License at
- *
- * http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing,
- * software distributed under the License is distributed on an
- * "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
- * KIND, either express or implied. See the License for the
- * specific language governing permissions and limitations
- * under the License.
- */
-package org.apache.cloudstack.network;
-
-public interface NetworkOrchestrator {
-
- /**
- * Prepares for a VM to join a network
- * @param vm vm
- * @param reservationId reservation id
- */
- void prepare(String vm, String reservationId);
-
- /**
- * Release all reservation
- */
- void release(String vm, String reservationId);
-
- /**
- * Cancel a previous reservation
- * @param reservationId
- */
- void cancel(String reservationId);
-}
diff --git a/engine/pom.xml b/engine/pom.xml
index 91f430ba300..b2f41834403 100644
--- a/engine/pom.xml
+++ b/engine/pom.xml
@@ -47,7 +47,6 @@
api
components-api
- network
orchestration
schema
service
diff --git a/engine/service/pom.xml b/engine/service/pom.xml
index 64453d31713..8519fe9c0d1 100644
--- a/engine/service/pom.xml
+++ b/engine/service/pom.xml
@@ -54,11 +54,6 @@
cloud-engine-storage
${project.version}
-
- org.apache.cloudstack
- cloud-engine-network
- ${project.version}
-
org.springframework
spring-context
diff --git a/plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/datastore/driver/LinstorPrimaryDataStoreDriverImpl.java b/plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/datastore/driver/LinstorPrimaryDataStoreDriverImpl.java
index bcbdc2244b1..d2d13eafc48 100644
--- a/plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/datastore/driver/LinstorPrimaryDataStoreDriverImpl.java
+++ b/plugins/storage/volume/linstor/src/main/java/org/apache/cloudstack/storage/datastore/driver/LinstorPrimaryDataStoreDriverImpl.java
@@ -428,6 +428,19 @@ public class LinstorPrimaryDataStoreDriverImpl implements PrimaryDataStoreDriver
}
}
+ private void resizeResource(DevelopersApi api, String resourceName, long sizeByte) throws ApiException {
+ VolumeDefinitionModify dfm = new VolumeDefinitionModify();
+ dfm.setSizeKib(sizeByte / 1024);
+
+ ApiCallRcList answers = api.volumeDefinitionModify(resourceName, 0, dfm);
+ if (answers.hasError()) {
+ s_logger.error("Resize error: " + answers.get(0).getMessage());
+ throw new CloudRuntimeException(answers.get(0).getMessage());
+ } else {
+ s_logger.info(String.format("Successfully resized %s to %d kib", resourceName, dfm.getSizeKib()));
+ }
+ }
+
private String cloneResource(long csCloneId, VolumeInfo volumeInfo, StoragePoolVO storagePoolVO) {
// get the cached template on this storage
VMTemplateStoragePoolVO tmplPoolRef = _vmTemplatePoolDao.findByPoolTemplate(
@@ -452,6 +465,11 @@ public class LinstorPrimaryDataStoreDriverImpl implements PrimaryDataStoreDriver
}
s_logger.info("Clone resource definition " + cloneRes + " to " + rscName + " finished");
+
+ if (volumeInfo.getSize() != null && volumeInfo.getSize() > 0) {
+ resizeResource(linstorApi, rscName, volumeInfo.getSize());
+ }
+
applyAuxProps(linstorApi, rscName, volumeInfo.getName(), volumeInfo.getAttachedVmName());
applyQoSSettings(storagePoolVO, linstorApi, rscName, volumeInfo.getMaxIops());
@@ -738,26 +756,16 @@ public class LinstorPrimaryDataStoreDriverImpl implements PrimaryDataStoreDriver
dfm.setSizeKib(resizeParameter.newSize / 1024);
try
{
+ resizeResource(api, rscName, resizeParameter.newSize);
+
applyQoSSettings(pool, api, rscName, resizeParameter.newMaxIops);
{
final VolumeVO volume = _volumeDao.findById(vol.getId());
volume.setMinIops(resizeParameter.newMinIops);
volume.setMaxIops(resizeParameter.newMaxIops);
+ volume.setSize(resizeParameter.newSize);
_volumeDao.update(volume.getId(), volume);
}
-
- ApiCallRcList answers = api.volumeDefinitionModify(rscName, 0, dfm);
- if (answers.hasError())
- {
- s_logger.error("Resize error: " + answers.get(0).getMessage());
- errMsg = answers.get(0).getMessage();
- } else
- {
- s_logger.info(String.format("Successfully resized %s to %d kib", rscName, dfm.getSizeKib()));
- vol.setSize(resizeParameter.newSize);
- vol.update();
- }
-
} catch (ApiException apiExc)
{
s_logger.error(apiExc);
@@ -765,12 +773,10 @@ public class LinstorPrimaryDataStoreDriverImpl implements PrimaryDataStoreDriver
}
CreateCmdResult result;
- if (errMsg != null)
- {
+ if (errMsg != null) {
result = new CreateCmdResult(null, new Answer(null, false, errMsg));
result.setResult(errMsg);
- } else
- {
+ } else {
// notify guests
result = notifyResize(vol, oldSize, resizeParameter);
}