Repository navigation
Expand file tree
/
Copy pathMODULE.bazel
More file actions
62 lines (50 loc) · 1.75 KB
/
Copy pathMODULE.bazel
File metadata and controls
62 lines (50 loc) · 1.75 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
"""Bazel module definition for CodeCity."""
module(
name = "codecity",
version = "0.1.0",
)
# Bazel Skylib - Common utilities
bazel_dep(name = "bazel_skylib", version = "1.9.2")
# Platforms for cross-platform builds
bazel_dep(name = "platforms", version = "1.1.0")
# Rust rules
bazel_dep(name = "rules_rust", version = "0.74.0")
# OCI container rules (modern replacement for rules_docker)
bazel_dep(name = "rules_oci", version = "2.3.0")
bazel_dep(name = "rules_pkg", version = "1.3.0")
# ===== Rust toolchain configuration =====
rust = use_extension("@rules_rust//rust:extensions.bzl", "rust")
rust.toolchain(
edition = "2021",
versions = ["1.98.0"],
extra_target_triples = ["x86_64-unknown-linux-gnu"],
)
use_repo(rust, "rust_toolchains")
register_toolchains("@rust_toolchains//:all")
# Rust crates from Cargo.toml
crate = use_extension("@rules_rust//crate_universe:extension.bzl", "crate")
crate.from_cargo(
name = "crates",
cargo_lockfile = "//backend:Cargo.lock",
manifests = ["//backend:Cargo.toml"],
)
use_repo(crate, "crates")
# ===== OCI base images =====
oci = use_extension("@rules_oci//oci:extensions.bzl", "oci")
# Debian slim for Rust backend (debian:bookworm-slim)
oci.pull(
name = "debian_slim",
digest = "sha256:7c7b2c966bc9ee8cedfeef67e0e279108992c77681fa595db4a9d65c06ccc587",
image = "docker.io/library/debian",
platforms = ["linux/amd64"],
tag = "bookworm-slim",
)
# Nginx Alpine for frontend
oci.pull(
name = "nginx_alpine",
digest = "sha256:df221db836e1754089190208cee7eeda94f233197056426eda74a43ab1abeac2",
image = "docker.io/library/nginx",
platforms = ["linux/amd64"],
tag = "alpine",
)
use_repo(oci, "debian_slim", "debian_slim_linux_amd64", "nginx_alpine", "nginx_alpine_linux_amd64")