| // 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. |
| |
| lazy val DAO = project in file("dao") |
| lazy val Config = project in file("config") |
| lazy val Auth = (project in file("auth")) |
| .dependsOn(DAO, Config) |
| lazy val ConfigService = (project in file("config-service")) |
| .dependsOn(Auth, Config) |
| .settings( |
| dependencyOverrides ++= Seq( |
| // override it as io.dropwizard 4 require 2.16.1 or higher |
| "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.17.0" |
| ) |
| ) |
| lazy val WorkflowCore = (project in file("workflow-core")) |
| .dependsOn(DAO, Config) |
| .configs(Test) |
| .dependsOn(DAO % "test->test") // test scope dependency |
| lazy val ComputingUnitManagingService = (project in file("computing-unit-managing-service")) |
| .dependsOn(WorkflowCore, Auth, Config) |
| .settings( |
| dependencyOverrides ++= Seq( |
| // override it as io.dropwizard 4 require 2.16.1 or higher |
| "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.17.0" |
| ) |
| ) |
| lazy val FileService = (project in file("file-service")) |
| .dependsOn(WorkflowCore, Auth, Config) |
| .settings( |
| dependencyOverrides ++= Seq( |
| // override it as io.dropwizard 4 require 2.16.1 or higher |
| "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.16.1", |
| "com.fasterxml.jackson.core" % "jackson-databind" % "2.16.1", |
| "org.glassfish.jersey.core" % "jersey-common" % "3.0.12" |
| ) |
| ) |
| |
| lazy val WorkflowOperator = (project in file("workflow-operator")).dependsOn(WorkflowCore) |
| lazy val WorkflowCompilingService = (project in file("workflow-compiling-service")) |
| .dependsOn(WorkflowOperator, Config) |
| .settings( |
| dependencyOverrides ++= Seq( |
| // override it as io.dropwizard 4 require 2.16.1 or higher |
| "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.16.1", |
| "com.fasterxml.jackson.core" % "jackson-databind" % "2.16.1", |
| "org.glassfish.jersey.core" % "jersey-common" % "3.0.12" |
| ) |
| ) |
| |
| lazy val WorkflowExecutionService = (project in file("amber")) |
| .dependsOn(WorkflowOperator, Auth, Config) |
| .settings( |
| dependencyOverrides ++= Seq( |
| "com.fasterxml.jackson.core" % "jackson-core" % "2.15.1", |
| "com.fasterxml.jackson.core" % "jackson-databind" % "2.15.1", |
| "com.fasterxml.jackson.module" %% "jackson-module-scala" % "2.15.1", |
| "org.slf4j" % "slf4j-api" % "1.7.26", |
| "org.eclipse.jetty" % "jetty-server" % "9.4.20.v20190813", |
| "org.eclipse.jetty" % "jetty-servlet" % "9.4.20.v20190813", |
| "org.eclipse.jetty" % "jetty-http" % "9.4.20.v20190813" |
| ), |
| libraryDependencies ++= Seq( |
| "com.squareup.okhttp3" % "okhttp" % "4.10.0" force () // Force usage of OkHttp 4.10.0 |
| ) |
| ) |
| .configs(Test) |
| .dependsOn(DAO % "test->test", Auth % "test->test") // test scope dependency |
| |
| // root project definition |
| lazy val CoreProject = (project in file(".")) |
| .aggregate( |
| DAO, |
| Config, |
| ConfigService, |
| Auth, |
| WorkflowCore, |
| ComputingUnitManagingService, |
| FileService, |
| WorkflowOperator, |
| WorkflowCompilingService, |
| WorkflowExecutionService |
| ) |
| .settings( |
| name := "core", |
| version := "1.0.0", |
| organization := "edu.uci.ics", |
| scalaVersion := "2.13.12", |
| publishMavenStyle := true |
| ) |