Skip to content

Commit bf3565a

Browse files
committed
Merge branch 'new-auth' into Backroll-dev
2 parents aa21a5f + 8edfa30 commit bf3565a

17 files changed

Lines changed: 306 additions & 382 deletions

File tree

api/src/main/java/org/apache/cloudstack/backup/BackupProvider.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -101,15 +101,15 @@ public interface BackupProvider {
101101

102102
/**
103103
* Syncs backup metrics (backup size, protected size) from the plugin and stores it within the provider
104-
* @param zoneId the zone for which to return metrics
104+
* @param zoneId the zone for which to synchronize metrics
105105
*/
106106
void syncBackupMetrics(Long zoneId);
107107

108108
/**
109109
* Returns a list of Backup.RestorePoint
110110
* @param vm the machine to get the restore points for
111111
*/
112-
List<Backup.RestorePoint> listRestorePoints(VirtualMachine vm);
112+
List<Backup.RestorePoint> listRestorePoints(VirtualMachine vm);
113113

114114
/**
115115
* Creates and returns an entry in the backups table by getting the information from restorePoint and vm.

plugins/backup/backroll/pom.xml

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -49,5 +49,10 @@
4949
<version>${cs.wiremock.version}</version>
5050
<scope>test</scope>
5151
</dependency>
52+
<dependency>
53+
<groupId>org.apache.cloudstack</groupId>
54+
<artifactId>cloud-engine-storage-volume</artifactId>
55+
<version>${project.version}</version>
56+
</dependency>
5257
</dependencies>
5358
</project>

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/BackrollBackupProvider.java

Lines changed: 112 additions & 107 deletions
Large diffs are not rendered by default.

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/BackrollClient.java

Lines changed: 28 additions & 33 deletions
Original file line numberDiff line numberDiff line change
@@ -16,12 +16,10 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll;
1818

19-
import java.util.ArrayList;
20-
import java.util.List;
21-
19+
import com.fasterxml.jackson.databind.ObjectMapper;
2220
import org.apache.cloudstack.backup.Backup;
23-
import org.apache.cloudstack.backup.BackupOffering;
2421
import org.apache.cloudstack.backup.Backup.Metric;
22+
import org.apache.cloudstack.backup.BackupOffering;
2523
import org.apache.cloudstack.backup.backroll.model.BackrollBackupMetrics;
2624
import org.apache.cloudstack.backup.backroll.model.BackrollOffering;
2725
import org.apache.cloudstack.backup.backroll.model.BackrollTaskStatus;
@@ -41,16 +39,14 @@
4139
import org.apache.cloudstack.backup.backroll.utils.BackrollHttpClient;
4240
import org.apache.cloudstack.backup.backroll.utils.BackrollHttpClient.BackrollHttpClientException;
4341
import org.apache.commons.lang3.StringUtils;
44-
4542
import org.apache.logging.log4j.LogManager;
4643
import org.apache.logging.log4j.Logger;
47-
4844
import org.joda.time.DateTime;
49-
5045
import org.json.JSONException;
5146
import org.json.JSONObject;
5247

53-
import com.fasterxml.jackson.databind.ObjectMapper;
48+
import java.util.ArrayList;
49+
import java.util.List;
5450

5551
public class BackrollClient {
5652
protected Logger logger = LogManager.getLogger(BackrollClient.class);
@@ -73,26 +69,28 @@ public String startBackupJob(final String jobId) throws BackrollHttpClientExcept
7369
BackrollTaskRequestResponse requestResponse = backrollHttpClient.post(String.format("/tasks/singlebackup/%s", jobId),
7470
null, BackrollTaskRequestResponse.class);
7571
logger.info("startBackupJob : BackupJob status link: {}", requestResponse.location);
76-
backupJob = requestResponse.location.replace("/api/v1", "");
77-
return StringUtils.isEmpty(backupJob) ? null : backupJob;
72+
73+
var backupExternalId = requestResponse.location.replace("/api/v1/status/", "");
74+
75+
return StringUtils.isEmpty(backupExternalId) ? null : backupExternalId;
7876
}
7977

80-
public String getBackupOfferingUrl() throws BackrollHttpClientException {
78+
public List<BackupOffering> getBackupOfferings() throws BackrollHttpClientException {
79+
8180
logger.info("Trying to get backroll backup policies url");
82-
String url = "";
83-
BackrollTaskRequestResponse requestResponse = backrollHttpClient.getParse("/backup_policies",
84-
BackrollTaskRequestResponse.class);
81+
String urlTask = "";
82+
BackrollTaskRequestResponse requestResponse = backrollHttpClient.getParse("/backup_policies", BackrollTaskRequestResponse.class);
8583
logger.info("BackrollClient:getBackupOfferingUrl:Apres Parse: " + requestResponse.location);
86-
url = requestResponse.location.replace("/api/v1", "");
87-
return StringUtils.isEmpty(url) ? null : url;
88-
}
84+
urlTask = requestResponse.location.replace("/api/v1", "");
85+
86+
if (StringUtils.isEmpty(urlTask)) {
87+
return new ArrayList<BackupOffering>();
88+
}
8989

90-
public List<BackupOffering> getBackupOfferings(String idTask) throws BackrollHttpClientException {
9190
logger.info("Trying to list backroll backup policies");
9291
final List<BackupOffering> policies = new ArrayList<>();
93-
BackupPoliciesResponse backupPoliciesResponse = backrollHttpClient.getWaitParse(idTask, BackupPoliciesResponse.class);
94-
logger.info(
95-
"BackrollClient:getBackupOfferings:Apres Parse: " + backupPoliciesResponse.backupPolicies.get(0).name);
92+
BackupPoliciesResponse backupPoliciesResponse = backrollHttpClient.getWaitParse(urlTask, BackupPoliciesResponse.class);
93+
logger.info("BackrollClient:getBackupOfferings:Apres Parse: " + backupPoliciesResponse.backupPolicies.get(0).name);
9694
for (final BackrollBackupPolicyResponse policy : backupPoliciesResponse.backupPolicies) {
9795
policies.add(new BackrollOffering(policy.name, policy.id));
9896
}
@@ -139,16 +137,14 @@ public BackrollTaskStatus checkBackupTaskStatus(String taskId) throws BackrollCl
139137

140138
String backupResponse = backrollHttpClient.get("/status/" + taskId);
141139

142-
if (backupResponse.contains(TaskState.FAILURE) || backupResponse.contains(TaskState.PENDING)) {
143-
BackrollBackupStatusResponse backupStatusRequestResponse = new ObjectMapper().readValue(backupResponse,
144-
BackrollBackupStatusResponse.class);
145-
status.setState(backupStatusRequestResponse.state);
146-
} else {
147-
BackrollBackupStatusSuccessResponse backupStatusSuccessRequestResponse = new ObjectMapper()
148-
.readValue(backupResponse, BackrollBackupStatusSuccessResponse.class);
149-
status.setState(backupStatusSuccessRequestResponse.state);
150-
status.setInfo(backupStatusSuccessRequestResponse.info);
151-
}
140+
if (backupResponse.contains(TaskState.FAILURE) || backupResponse.contains(TaskState.PENDING)) {
141+
BackrollBackupStatusResponse backupStatusRequestResponse = new ObjectMapper().readValue(backupResponse, BackrollBackupStatusResponse.class);
142+
status.setState(backupStatusRequestResponse.state);
143+
} else {
144+
BackrollBackupStatusSuccessResponse backupStatusSuccessRequestResponse = new ObjectMapper().readValue(backupResponse, BackrollBackupStatusSuccessResponse.class);
145+
status.setState(backupStatusSuccessRequestResponse.state);
146+
status.setInfo(backupStatusSuccessRequestResponse.info);
147+
}
152148

153149
return StringUtils.isEmpty(status.getState()) ? null : status;
154150
} catch (Exception exception) {
@@ -220,8 +216,7 @@ public BackrollBackupMetrics getBackupMetrics(String vmId, String backupId) thro
220216
BackrollBackupMetricsResponse metricsResponse = backrollHttpClient.getWaitParse(urlToRequest,
221217
BackrollBackupMetricsResponse.class);
222218
if (metricsResponse.info != null) {
223-
metrics = new BackrollBackupMetrics(Long.parseLong(metricsResponse.info.originalSize),
224-
Long.parseLong(metricsResponse.info.deduplicatedSize));
219+
metrics = new BackrollBackupMetrics(Long.parseLong(metricsResponse.info.originalSize), Long.parseLong(metricsResponse.info.deduplicatedSize));
225220
}
226221
return metrics;
227222
}

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/BackrollOffering.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,10 +16,10 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model;
1818

19-
import java.util.Date;
20-
2119
import org.apache.cloudstack.backup.BackupOffering;
2220

21+
import java.util.Date;
22+
2323
public class BackrollOffering implements BackupOffering {
2424

2525
private String name;

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/response/archive/BackrollArchiveResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model.response.archive;
1818

19-
import org.joda.time.DateTime;
20-
2119
import com.fasterxml.jackson.annotation.JsonProperty;
20+
import org.joda.time.DateTime;
2221

2322
public class BackrollArchiveResponse {
2423
@JsonProperty("archive")

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/response/archive/BackrollArchivesResponse.java

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,11 +16,11 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model.response.archive;
1818

19-
import java.util.List;
20-
2119
import com.fasterxml.jackson.annotation.JsonFormat;
2220
import com.fasterxml.jackson.annotation.JsonProperty;
2321

22+
import java.util.List;
23+
2424
public class BackrollArchivesResponse {
2525
@JsonProperty("archives")
2626
@JsonFormat(with = JsonFormat.Feature.ACCEPT_SINGLE_VALUE_AS_ARRAY)

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/response/archive/BackrollBackupsFromVMResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model.response.archive;
1818

19-
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
20-
2119
import com.fasterxml.jackson.annotation.JsonProperty;
20+
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
2221

2322
public class BackrollBackupsFromVMResponse extends BackrollAsyncResponse {
2423
@JsonProperty("info")

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/response/metrics/backup/BackrollBackupMetricsResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model.response.metrics.backup;
1818

19-
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
20-
2119
import com.fasterxml.jackson.annotation.JsonProperty;
20+
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
2221

2322
public class BackrollBackupMetricsResponse extends BackrollAsyncResponse {
2423
@JsonProperty("info")

plugins/backup/backroll/src/main/java/org/apache/cloudstack/backup/backroll/model/response/metrics/virtualMachine/BackrollVmMetricsResponse.java

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -16,9 +16,8 @@
1616
// under the License.
1717
package org.apache.cloudstack.backup.backroll.model.response.metrics.virtualMachine;
1818

19-
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
20-
2119
import com.fasterxml.jackson.annotation.JsonProperty;
20+
import org.apache.cloudstack.backup.backroll.model.response.BackrollAsyncResponse;
2221

2322
public class BackrollVmMetricsResponse extends BackrollAsyncResponse{
2423
@JsonProperty("info")

0 commit comments

Comments
 (0)