diff --git a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/AnsibleBridge.java b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/AnsibleBridge.java index 88571d0..af5d0cb 100644 --- a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/AnsibleBridge.java +++ b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/AnsibleBridge.java @@ -243,16 +243,27 @@ public class AnsibleBridge { if(pkg!=null) { roles.addAll(pkg.getRoles(this.getTemplateManager())); ***REMOVED*** + ***REMOVED*** else if("custom".equalsIgnoreCase(d.getType())) { CustomDependencyPackage pkg = new CustomDependencyPackage(d); if(pkg!=null) { roles.addAll(pkg.getRoles(this.getCustomRoleManager())); ***REMOVED*** - ***REMOVED*** else if("cran".equalsIgnoreCase(d.getType())) { + ***REMOVED*** + + else if("github".equalsIgnoreCase(d.getType())) { + CranDependencyPackage pkg = new CranDependencyPackage(d); + if(pkg!=null) { + roles.addAll(pkg.getRoles(this.getTemplateManager())); + ***REMOVED*** + ***REMOVED*** + else if("cran".equalsIgnoreCase(d.getType())) { CranDependencyPackage pkg = new CranDependencyPackage(d); if(pkg!=null) { roles.addAll(pkg.getRoles(this.getTemplateManager())); ***REMOVED*** + + ***REMOVED*** return roles; ***REMOVED*** diff --git a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/AlgorithmPackage.java b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/AlgorithmPackage.java index 676de6c..a81bfc3 100644 --- a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/AlgorithmPackage.java +++ b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/AlgorithmPackage.java @@ -33,7 +33,7 @@ public class AlgorithmPackage { String deps = ""; for(Dependency d:a.getDependencies()) { - deps+=String.format("- { role: %s ***REMOVED***\n", d.getType()+"-"+d.getName()); + deps+=String.format("- { role: %s ***REMOVED***\n", d.getType()+"-"+d.getName().replaceAll("/", "-")); ***REMOVED*** deps = deps.trim(); out.put("dependencies", deps); diff --git a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/DependencyPackage.java b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/DependencyPackage.java index fd28947..a4445cc 100644 --- a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/DependencyPackage.java +++ b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/ansiblebridge/template/DependencyPackage.java @@ -31,7 +31,7 @@ public class DependencyPackage { public Collection getRoles(TemplateManager tm) { Collection out = new Vector<>(); for(String mode:new String[]{"add"***REMOVED***) { ***REMOVED*** "remove", "update" - String roleName = this.getDependency().getType()+"-"+this.getDependency().getName()+("add".equals(mode) ? "" : "-"+mode); + String roleName = this.getDependency().getType()+"-"+this.getDependency().getName().replaceAll("/", "-")+("add".equals(mode) ? "" : "-"+mode); try { ***REMOVED*** find template Role template = tm.getRoleTemplate(this.getDependency().getType()+"-package-"+mode); diff --git a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/process/AlgorithmPackageParser.java b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/process/AlgorithmPackageParser.java index 7a24427..984c440 100644 --- a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/process/AlgorithmPackageParser.java +++ b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/process/AlgorithmPackageParser.java @@ -212,7 +212,21 @@ public class AlgorithmPackageParser { out.addDependency(dep); ***REMOVED*** ***REMOVED*** - + + + + List gitdependencies = extractMultipleValues(metadata, "github"); + if (gitdependencies != null) { + for (String pkg : gitdependencies) { + Dependency dep = new Dependency(); + + ***REMOVED***if (pkg.startsWith("os:")){ + dep.setName(pkg); + dep.setType("github"); + out.addDependency(dep); + ***REMOVED*** + ***REMOVED*** + List cdependencies = extractMultipleValues(metadata, "custom"); diff --git a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/rest/RestPoolManager.java b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/rest/RestPoolManager.java index b796fcc..392a9b0 100644 --- a/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/rest/RestPoolManager.java +++ b/src/main/java/org/gcube/dataanalysis/dataminer/poolmanager/rest/RestPoolManager.java @@ -97,7 +97,7 @@ public class RestPoolManager implements PoolManager { ScopeProvider.instance.set("/gcube/devNext/NextNext"); a.addAlgorithmToVRE( - "http:***REMOVED***data.d4science.org/cXhJV0s4b3dUN05jZk9qTytQTndqdmVUdURLOTRHeHpHbWJQNStIS0N6Yz0", + "http:***REMOVED***data.d4science.org/S2h1RHZGd0JpWnBjZk9qTytQTndqcDRLVHNrQUt6QjhHbWJQNStIS0N6Yz0", "/gcube/devNext/NextNext", null, null, "test", "transducerers", "N");