Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 1 addition & 0 deletions .licenserc.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ header:
- '**/*.jsonl'
- 'DESCRIPTION'
- 'DISCLAIMER'
- 'DISCLAIMER-WIP'
- 'LICENSE'
- 'NOTICE'
- '.dockerignore'
Expand Down
10 changes: 0 additions & 10 deletions DISCLAIMER

This file was deleted.

23 changes: 23 additions & 0 deletions DISCLAIMER-WIP
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
Apache Texera is an effort undergoing incubation at The Apache Software
Foundation (ASF), sponsored by the Apache Incubator PMC. Incubation is
required of all newly accepted projects until a further review indicates
that the infrastructure, communications, and decision-making process have
stabilized in a manner consistent with other successful ASF projects.
While incubation status is not necessarily a reflection of the
completeness or stability of the code, it does indicate that the project
has yet to be fully endorsed by the ASF.

Some of the incubating project's releases may not be fully compliant
with ASF policy. For example, releases may have incomplete or
un-reviewed licensing conditions. What follows is a list of issues
the project is currently aware of (this list is likely to be incomplete):

- LICENSE and NOTICE files in binary artifacts (Docker images, JARs) may
not yet fully account for all bundled third-party dependencies. A
comprehensive dependency license audit is in progress.

If you are planning to incorporate this work into your product/project,
please be aware that you will need to conduct a thorough licensing
review to determine the overall implications of including this work.
For the current status of this project through the Apache Incubator,
visit: https://incubator.apache.org/projects/texera.html
3 changes: 3 additions & 0 deletions bin/access-control-service.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean AccessControlService/dist

Expand All @@ -50,6 +51,8 @@ COPY --from=build /texera/.git /texera/.git
COPY --from=build /texera/target/access-control-service* /texera/
# Copy resources directories from build phase
COPY --from=build /texera/access-control-service/src/main/resources /texera/access-control-service/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/access-control-service"]

Expand Down
3 changes: 3 additions & 0 deletions bin/computing-unit-master.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean WorkflowExecutionService/dist

Expand Down Expand Up @@ -121,6 +122,8 @@ COPY --from=build /texera/common/config/src/main/resources /texera/amber/common/
COPY --from=build /texera/amber/src/main/resources /texera/amber/src/main/resources
# Copy code for python & R UDF
COPY --from=build /texera/amber/src/main/python /texera/amber/src/main/python
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/computing-unit-master"]

Expand Down
3 changes: 3 additions & 0 deletions bin/computing-unit-worker.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean WorkflowExecutionService/dist

Expand Down Expand Up @@ -119,6 +120,8 @@ COPY --from=build /texera/amber/target/amber-* /texera/amber/
# Copy resources directories from build phase
COPY --from=build /texera/amber/src/main/resources /texera/amber/src/main/resources
COPY --from=build /texera/common/config/src/main/resources /texera/amber/common/config/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/computing-unit-worker"]

Expand Down
3 changes: 3 additions & 0 deletions bin/config-service.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean ConfigService/dist

Expand All @@ -51,6 +52,8 @@ COPY --from=build /texera/target/config-service-* /texera/
# Copy resources directories from build phase
COPY --from=build /texera/common/config/src/main/resources /texera/common/config/src/main/resources
COPY --from=build /texera/config-service/src/main/resources /texera/config-service/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/config-service"]

Expand Down
3 changes: 3 additions & 0 deletions bin/file-service.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean FileService/dist

Expand All @@ -50,6 +51,8 @@ COPY --from=build /texera/target/file-service-* /texera/
# Copy resources directories from build phase
COPY --from=build /texera/common/config/src/main/resources /texera/common/config/src/main/resources
COPY --from=build /texera/file-service/src/main/resources /texera/file-service/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/file-service"]

Expand Down
3 changes: 3 additions & 0 deletions bin/texera-web-application.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -49,6 +49,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean WorkflowExecutionService/dist

Expand All @@ -66,6 +67,8 @@ COPY --from=build /texera/amber/target/amber-* /texera/amber/
# Copy resources directories from build phase
COPY --from=build /texera/amber/src/main/resources /texera/amber/src/main/resources
COPY --from=build /texera/common/config/src/main/resources /texera/amber/common/config/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/texera-web-application"]

Expand Down
3 changes: 3 additions & 0 deletions bin/workflow-compiling-service.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean WorkflowCompilingService/dist

Expand All @@ -51,6 +52,8 @@ COPY --from=build /texera/target/workflow-compiling-service-* /texera/
# Copy resources directories from build phase
COPY --from=build /texera/common/config/src/main/resources /texera/common/config/src/main/resources
COPY --from=build /texera/workflow-compiling-service/src/main/resources /texera/workflow-compiling-service/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/workflow-compiling-service"]

Expand Down
3 changes: 3 additions & 0 deletions bin/workflow-computing-unit-managing-service.dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -35,6 +35,7 @@ RUN apt-get update && apt-get install -y \

# Add .git for runtime calls to jgit from OPversion
COPY .git .git
COPY LICENSE NOTICE DISCLAIMER-WIP ./

RUN sbt clean ComputingUnitManagingService/dist

Expand All @@ -51,6 +52,8 @@ COPY --from=build /texera/target/computing-unit-managing-service-* /texera/
# Copy resources directories from build phase
COPY --from=build /texera/common/config/src/main/resources /texera/common/config/src/main/resources
COPY --from=build /texera/computing-unit-managing-service/src/main/resources /texera/computing-unit-managing-service/src/main/resources
# Copy ASF licensing files
COPY --from=build /texera/LICENSE /texera/NOTICE /texera/DISCLAIMER-WIP /texera/

CMD ["bin/computing-unit-managing-service"]

Expand Down
33 changes: 30 additions & 3 deletions build.sbt
Original file line number Diff line number Diff line change
Expand Up @@ -15,12 +15,32 @@
// specific language governing permissions and limitations
// under the License.

lazy val DAO = project in file("common/dao")
lazy val Config = project in file("common/config")
// Copy LICENSE, NOTICE, and DISCLAIMER-WIP from the repo root into META-INF of every JAR.
// This ensures ASF licensing files are present in all binary artifacts.
lazy val asfLicensingSettings = Seq(
Compile / resourceGenerators += Def.task {
val rootDir = (ThisBuild / baseDirectory).value
val metaInfDir = (Compile / resourceManaged).value / "META-INF"
val filesToCopy = Seq("LICENSE", "NOTICE", "DISCLAIMER-WIP")
filesToCopy.flatMap { fileName =>
val src = rootDir / fileName
if (src.exists()) {
val dest = metaInfDir / fileName
IO.copyFile(src, dest)
Seq(dest)
} else Seq.empty
}
}.taskValue
)

lazy val DAO = (project in file("common/dao")).settings(asfLicensingSettings)
lazy val Config = (project in file("common/config")).settings(asfLicensingSettings)
lazy val Auth = (project in file("common/auth"))
.settings(asfLicensingSettings)
.dependsOn(DAO, Config)
lazy val ConfigService = (project in file("config-service"))
.dependsOn(Auth, Config)
.settings(asfLicensingSettings)
.settings(
dependencyOverrides ++= Seq(
// override it as io.dropwizard 4 require 2.16.1 or higher
Expand All @@ -29,6 +49,7 @@ lazy val ConfigService = (project in file("config-service"))
)
lazy val AccessControlService = (project in file("access-control-service"))
.dependsOn(Auth, Config, DAO)
.settings(asfLicensingSettings)
.settings(
dependencyOverrides ++= Seq(
// override it as io.dropwizard 4 require 2.16.1 or higher
Expand All @@ -41,22 +62,26 @@ lazy val AccessControlService = (project in file("access-control-service"))
//This Scala module defines a pyb"..." macro-based DSL for composing Python code templates as an immutable PythonTemplateBuilder.
//Used mainly for Python Native Operators
lazy val PyBuilder = (project in file("common/pybuilder"))
.settings(asfLicensingSettings)
.configs(Test)
.dependsOn(DAO % "test->test") // test scope dependency

lazy val WorkflowCore = (project in file("common/workflow-core"))
.settings(asfLicensingSettings)
.dependsOn(DAO, Config, PyBuilder)
.configs(Test)
.dependsOn(DAO % "test->test") // test scope dependency
lazy val ComputingUnitManagingService = (project in file("computing-unit-managing-service"))
.dependsOn(WorkflowCore, Auth, Config)
.settings(asfLicensingSettings)
.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"))
.settings(asfLicensingSettings)
.dependsOn(WorkflowCore, Auth, Config)
.configs(Test)
.dependsOn(DAO % "test->test") // test scope dependency
Expand All @@ -69,9 +94,10 @@ lazy val FileService = (project in file("file-service"))
)
)

lazy val WorkflowOperator = (project in file("common/workflow-operator")).dependsOn(WorkflowCore)
lazy val WorkflowOperator = (project in file("common/workflow-operator")).settings(asfLicensingSettings).dependsOn(WorkflowCore)
lazy val WorkflowCompilingService = (project in file("workflow-compiling-service"))
.dependsOn(WorkflowOperator, Config)
.settings(asfLicensingSettings)
.settings(
dependencyOverrides ++= Seq(
// override it as io.dropwizard 4 require 2.16.1 or higher
Expand All @@ -83,6 +109,7 @@ lazy val WorkflowCompilingService = (project in file("workflow-compiling-service

lazy val WorkflowExecutionService = (project in file("amber"))
.dependsOn(WorkflowOperator, Auth, Config)
.settings(asfLicensingSettings)
.settings(
dependencyOverrides ++= Seq(
"com.fasterxml.jackson.core" % "jackson-core" % "2.15.1",
Expand Down
Loading