blob: 423d2373aa63ee172c65e545b9be79b70606f7c2 [file]
# Copyright 2026 The Fuchsia Authors. All rights reserved.
# Use of this source code is governed by a BSD-style license that can be
# found in the LICENSE file.
load("//build/bazel/platforms:constraints.bzl", "HOST_OS_CONSTRAINTS")
load("//build/bazel/rules/host_tests:host_rustc_test.bzl", "host_rustc_test")
load("//build/bazel/rules/rust:rustc_library.bzl", "rustc_library")
package(default_applicable_licenses = ["//:license"])
rustc_library(
name = "update_package",
srcs = [
"src/lib.rs",
"src/ota_manifest.rs",
"src/update_package.rs",
],
crate_name = "assembly_update_package",
edition = "2024",
target_compatible_with = HOST_OS_CONSTRAINTS,
visibility = [
"//src/developer/ffx/plugins/assembly:__pkg__",
"//src/lib/assembly:__subpackages__",
],
deps = [
"//src/lib/assembly/assembled_system",
"//src/lib/assembly/blob_size",
"//src/lib/assembly/images_config",
"//src/lib/assembly/partitions_config",
"//src/lib/assembly/tool",
"//src/lib/assembly/update_packages_manifest",
"//src/lib/assembly/util",
"//src/lib/fuchsia-url",
"//src/lib/versioning/version-history/rust",
"//src/storage/lib/delivery_blob",
"//src/sys/pkg/lib/epoch",
"//src/sys/pkg/lib/fuchsia-merkle",
"//src/sys/pkg/lib/fuchsia-pkg",
"//src/sys/pkg/lib/update-package",
"//third_party/rust_crates/vendor:anyhow",
"//third_party/rust_crates/vendor:camino",
"//third_party/rust_crates/vendor:pem",
"//third_party/rust_crates/vendor:ring",
"//third_party/rust_crates/vendor:serde_json",
],
)
host_rustc_test(
name = "update_package_test",
crate = ":update_package",
visibility = ["//src/lib/assembly:__pkg__"],
deps = [
"//src/lib/assembly/release_info",
"//src/lib/assembly/test_util",
"//src/sys/pkg/lib/far/rust:fuchsia-archive",
"//src/sys/pkg/lib/fuchsia-hash",
"//third_party/rust_crates/vendor:pretty_assertions",
"//third_party/rust_crates/vendor:tempfile",
],
)