load(
"@prelude-si//:macros.bzl",
"rust_library",
"rust_test",
)
rust_library(
name = "dal",
deps = [
"//lib/audit-database:audit-database",
"//lib/audit-logs-stream:audit-logs-stream",
"//lib/billing-events:billing-events",
"//lib/concurrent-extensions:concurrent-extensions",
"//lib/dal-macros:dal-macros",
"//lib/edda-client:edda-client",
"//lib/joi-validator:joi-validator",
"//lib/module-index-client:module-index-client",
"//lib/nats-std:nats-std",
"//lib/object-tree:object-tree",
"//lib/pending-events:pending-events",
"//lib/pinga-client:pinga-client",
"//lib/pinga-core:pinga-core",
"//lib/rebaser-client:rebaser-client",
"//lib/shuttle-server:shuttle-server",
"//lib/si-crypto:si-crypto",
"//lib/si-data-nats:si-data-nats",
"//lib/si-data-pg:si-data-pg",
"//lib/si-db:si-db",
"//lib/si-events-rs:si-events",
"//lib/si-frontend-mv-types-rs:si-frontend-mv-types",
"//lib/si-frontend-types-rs:si-frontend-types",
"//lib/si-hash:si-hash",
"//lib/si-id:si-id",
"//lib/si-layer-cache:si-layer-cache",
"//lib/si-pkg:si-pkg",
"//lib/si-runtime-rs:si-runtime",
"//lib/si-settings:si-settings",
"//lib/si-split-graph:si-split-graph",
"//lib/si-std:si-std",
"//lib/telemetry-nats-rs:telemetry-nats",
"//lib/telemetry-rs:telemetry",
"//lib/telemetry-utils-rs:telemetry-utils",
"//lib/veritech-client:veritech-client",
"//third-party/rust:async-trait",
"//third-party/rust:base64",
"//third-party/rust:blake3",
"//third-party/rust:chrono",
"//third-party/rust:ciborium",
"//third-party/rust:clap",
"//third-party/rust:convert_case",
"//third-party/rust:dashmap",
"//third-party/rust:derive_more",
"//third-party/rust:diff",
"//third-party/rust:dyn-clone",
"//third-party/rust:futures",
"//third-party/rust:hex",
"//third-party/rust:iftree",
"//third-party/rust:indexmap",
"//third-party/rust:itertools",
"//third-party/rust:json-patch",
"//third-party/rust:jsonptr",
"//third-party/rust:jwt-simple",
"//third-party/rust:lazy_static",
"//third-party/rust:once_cell",
"//third-party/rust:paste",
"//third-party/rust:petgraph",
"//third-party/rust:postcard",
"//third-party/rust:postgres-types",
"//third-party/rust:pretty_assertions_sorted",
"//third-party/rust:rand",
"//third-party/rust:refinery",
"//third-party/rust:regex",
"//third-party/rust:remain",
"//third-party/rust:ringmap",
"//third-party/rust:serde",
"//third-party/rust:serde-aux",
"//third-party/rust:serde-tuple-vec-map",
"//third-party/rust:serde_json",
"//third-party/rust:serde_with",
"//third-party/rust:sodiumoxide",
"//third-party/rust:strum",
"//third-party/rust:thiserror",
"//third-party/rust:tokio",
"//third-party/rust:tokio-stream",
"//third-party/rust:tokio-util",
"//third-party/rust:tracing",
"//third-party/rust:tryhard",
"//third-party/rust:ulid",
"//third-party/rust:url",
],
srcs = glob([
"src/**/*.rs",
"src/builtins/func/**",
"src/func/authoring/data/defaults/*.ts",
"src/func/authoring/data/ts_types/*.ts",
]),
env = {
"CARGO_MANIFEST_DIR": ".",
},
test_unit_deps = [
"//third-party/rust:tempfile",
],
extra_test_targets = [":test-integration"],
)
rust_test(
name = "test-integration",
deps = [
"//lib/audit-database:audit-database",
"//lib/audit-logs-stream:audit-logs-stream",
"//lib/dal-materialized-views:dal-materialized-views",
"//lib/dal-test:dal-test",
"//lib/pending-events:pending-events",
"//lib/rebaser-server:rebaser-server",
"//lib/si-db:si-db",
"//lib/si-events-rs:si-events",
"//lib/si-id:si-id",
"//lib/si-frontend-mv-types-rs:si-frontend-mv-types",
"//lib/si-frontend-types-rs:si-frontend-types",
"//lib/si-layer-cache:si-layer-cache",
"//lib/si-pkg:si-pkg",
"//lib/si-split-graph:si-split-graph",
"//lib/veritech-client:veritech-client",
"//third-party/rust:chrono",
"//third-party/rust:base64",
"//third-party/rust:derive_more",
"//third-party/rust:itertools",
"//third-party/rust:petgraph",
"//third-party/rust:pretty_assertions_sorted",
"//third-party/rust:serde",
"//third-party/rust:serde_json",
"//third-party/rust:sodiumoxide",
"//third-party/rust:strum",
"//third-party/rust:tempfile",
"//third-party/rust:tokio",
"//third-party/rust:tokio-util",
"//third-party/rust:tracing",
"//third-party/rust:ulid",
":dal",
],
crate_root = "tests/integration.rs",
srcs = glob([
"tests/**/*.rs",
"tests/integration_test/external/ignition/*.ign",
]),
env = {
"CARGO_PKG_NAME": "integration",
"RUSTC_BOOTSTRAP": "1",
"CI": "buildkite",
},
resources = {
"cyclone": "//bin/cyclone:cyclone",
"dev.decryption.key": "//lib/veritech-server:dev.decryption.key",
"dev.encryption.key": "//lib/veritech-server:dev.encryption.key",
"dev.jwt_signing_private_key.pem": "//config/keys:dev.jwt_signing_private_key.pem",
"dev.jwt_signing_public_key.pem": "//config/keys:dev.jwt_signing_public_key.pem",
"dev.postgres.root.crt": "//config/keys:dev.postgres.root.crt",
"dev.donkey.key": "//lib/dal:dev.donkey.key",
"lang-js": "//bin/lang-js:lang-js",
"pkgs_path": "//pkgs:pkgs",
"prod.jwt_signing_public_key.pem": "//config/keys:prod.jwt_signing_public_key.pem",
},
)
export_file(
name = "dev.donkey.key",
visibility = ["PUBLIC"],
)