Add DCOS support to Marathon impl.
diff --git a/containers-marathon/src/main/java/org/apache/aries/containers/marathon/impl/MarathonContainerFactory.java b/containers-marathon/src/main/java/org/apache/aries/containers/marathon/impl/MarathonContainerFactory.java
index c25f358..60321ba 100644
--- a/containers-marathon/src/main/java/org/apache/aries/containers/marathon/impl/MarathonContainerFactory.java
+++ b/containers-marathon/src/main/java/org/apache/aries/containers/marathon/impl/MarathonContainerFactory.java
@@ -27,6 +27,8 @@
import org.apache.aries.containers.Service;
import org.apache.aries.containers.ServiceConfig;
+import mesosphere.dcos.client.DCOSClient;
+import mesosphere.dcos.client.model.DCOSAuthCredentials;
import mesosphere.marathon.client.Marathon;
import mesosphere.marathon.client.MarathonClient;
import mesosphere.marathon.client.model.v2.App;
@@ -44,6 +46,16 @@
marathonClient = MarathonClient.getInstance(marathonURL);
}
+ public MarathonContainerFactory(String marathonURL, String dcosUser, String passToken, boolean serviceAcct) {
+ DCOSAuthCredentials authCredentials;
+ if (serviceAcct) {
+ authCredentials = DCOSAuthCredentials.forServiceAccount(dcosUser, passToken);
+ } else {
+ authCredentials = DCOSAuthCredentials.forUserAccount(dcosUser, passToken);
+ }
+ marathonClient = DCOSClient.getInstance(marathonURL, authCredentials);
+ }
+
@Override
public Service getService(ServiceConfig config) throws Exception {
// TODO get existing service