56 lines
1.8 KiB
Python
56 lines
1.8 KiB
Python
module(
|
|
name = "databuild_basic_composition",
|
|
version = "0.1",
|
|
)
|
|
|
|
# Databuild dep - overridden so ignore version
|
|
bazel_dep(name = "databuild", version = "0.0")
|
|
local_path_override(
|
|
module_name = "databuild",
|
|
path = "../..",
|
|
)
|
|
|
|
# Java dependencies
|
|
bazel_dep(name = "rules_java", version = "8.11.0")
|
|
|
|
# Configure JDK 17
|
|
register_toolchains("@rules_java//toolchains:all")
|
|
|
|
bazel_dep(name = "rules_jvm_external", version = "6.3")
|
|
|
|
maven = use_extension("@rules_jvm_external//:extensions.bzl", "maven")
|
|
maven.install(
|
|
artifacts = [
|
|
"com.fasterxml.jackson.core:jackson-core:2.15.2",
|
|
"com.fasterxml.jackson.core:jackson-databind:2.15.2",
|
|
"com.fasterxml.jackson.core:jackson-annotations:2.15.2",
|
|
"com.fasterxml.jackson.module:jackson-module-jsonSchema:2.15.2",
|
|
],
|
|
repositories = [
|
|
"https://repo1.maven.org/maven2",
|
|
],
|
|
)
|
|
use_repo(maven, "maven")
|
|
|
|
# Rules OCI - necessary for producing a docker container
|
|
bazel_dep(name = "rules_oci", version = "2.2.6")
|
|
# For testing, we also recommend https://registry.bazel.build/modules/container_structure_test
|
|
|
|
oci = use_extension("@rules_oci//oci:extensions.bzl", "oci")
|
|
|
|
# Declare external images you need to pull, for example:
|
|
oci.pull(
|
|
name = "debian",
|
|
image = "docker.io/library/python",
|
|
platforms = ["linux/arm64/v8", "linux/amd64"],
|
|
# 'latest' is not reproducible, but it's convenient.
|
|
# During the build we print a WARNING message that includes recommended 'digest' and 'platforms'
|
|
# values which you can use here in place of 'tag' to pin for reproducibility.
|
|
tag = "3.12-bookworm",
|
|
)
|
|
|
|
# For each oci.pull call, repeat the "name" here to expose them as dependencies.
|
|
use_repo(oci, "debian", "debian_linux_arm64_v8")
|
|
|
|
# Platforms for specifying linux/arm
|
|
bazel_dep(name = "platforms", version = "0.0.11")
|