From 145e9a838f6ae8ab3210848a0043e78fceda29a3 Mon Sep 17 00:00:00 2001 From: Brandon Stoll Date: Mon, 13 Jan 2025 22:47:51 +0000 Subject: [PATCH] Add Bazel8 support. --- .bazelversion | 1 + .gitignore | 5 - BUILD.bazel | 21 + MODULE.bazel | 35 + MODULE.bazel.lock | 299 +++++ WORKSPACE | 78 +- WORKSPACE.bzlmod | 0 bazel/BUILD.bazel | 18 + bazel/tools.go | 24 + bootz_deps.bzl | 98 ++ bootz_go_deps.bzl | 1059 ++++++++++++++++ client/BUILD.bazel | 9 +- common.bzl | 42 - common/owner_certificate/BUILD.bazel | 16 + common/ownership_voucher/BUILD.bazel | 19 + common/signature/BUILD.bazel | 15 + deps.bzl | 1079 ----------------- dhcp/BUILD.bazel | 19 + dhcp/main/BUILD.bazel | 18 + dhcp/plugins/bootz/BUILD.bazel | 15 + dhcp/plugins/slease/BUILD.bazel | 15 + go.mod | 22 +- go.sum | 62 +- proto/BUILD.bazel | 26 +- proto/bootz/bootz.pb.go | 603 +++------ proto/bootz/bootz_grpc.pb.go | 157 +++ regenerate-files.sh | 3 - server/BUILD.bazel | 18 +- server/emulator/BUILD.bazel | 6 +- server/entitymanager/BUILD.bazel | 9 +- server/entitymanager/proto/BUILD.bazel | 28 +- .../entitymanager/proto/entity/entity.pb.go | 310 ++--- server/service/BUILD.bazel | 19 +- testdata/BUILD.bazel | 14 +- 34 files changed, 2211 insertions(+), 1951 deletions(-) create mode 100644 .bazelversion create mode 100644 MODULE.bazel create mode 100644 MODULE.bazel.lock create mode 100644 WORKSPACE.bzlmod create mode 100644 bazel/BUILD.bazel create mode 100644 bazel/tools.go create mode 100644 bootz_deps.bzl create mode 100644 bootz_go_deps.bzl delete mode 100644 common.bzl create mode 100644 common/owner_certificate/BUILD.bazel create mode 100644 common/ownership_voucher/BUILD.bazel create mode 100644 common/signature/BUILD.bazel delete mode 100644 deps.bzl create mode 100644 dhcp/BUILD.bazel create mode 100644 dhcp/main/BUILD.bazel create mode 100644 dhcp/plugins/bootz/BUILD.bazel create mode 100644 dhcp/plugins/slease/BUILD.bazel create mode 100755 proto/bootz/bootz_grpc.pb.go diff --git a/.bazelversion b/.bazelversion new file mode 100644 index 0000000..ae9a76b --- /dev/null +++ b/.bazelversion @@ -0,0 +1 @@ +8.0.0 diff --git a/.gitignore b/.gitignore index 63474b6..41f639b 100644 --- a/.gitignore +++ b/.gitignore @@ -3,8 +3,3 @@ # .vscode/ bazel-* - -# Ignore Go binary files but keep the .go files. -**/* -!**/*.go -!**/ \ No newline at end of file diff --git a/BUILD.bazel b/BUILD.bazel index 3ac00d7..5614f83 100644 --- a/BUILD.bazel +++ b/BUILD.bazel @@ -14,5 +14,26 @@ load("@bazel_gazelle//:def.bzl", "gazelle") +# gazelle:go_grpc_compilers @io_bazel_rules_go//proto:go_grpc_v2, @io_bazel_rules_go//proto:go_proto +# gazelle:proto_import_prefix github.com/openconfig/bootz # gazelle:prefix github.com/openconfig/bootz +# gazelle:resolve go github.com/openconfig/bootz/proto/bootz //proto:bootz +# gazelle:resolve proto go github.com/openconfig/gnsi/authz/authz.proto @openconfig_gnsi//authz:authz_go_proto +# gazelle:resolve proto github.com/openconfig/gnsi/authz/authz.proto @openconfig_gnsi//authz:authz_proto +# gazelle:resolve proto go github.com/openconfig/gnsi/certz/certz.proto @openconfig_gnsi//certz:certz_go_proto +# gazelle:resolve proto github.com/openconfig/gnsi/certz/certz.proto @openconfig_gnsi//certz:certz_proto +# gazelle:resolve proto go github.com/openconfig/gnsi/credentialz/credentialz.proto @openconfig_gnsi//credentialz:credentialz_go_proto +# gazelle:resolve proto github.com/openconfig/gnsi/credentialz/credentialz.proto @openconfig_gnsi//credentialz:credentialz_proto +# gazelle:resolve proto go github.com/openconfig/gnsi/pathz/pathz.proto @openconfig_gnsi//pathz:pathz_go_proto +# gazelle:resolve proto github.com/openconfig/gnsi/pathz/pathz.proto @openconfig_gnsi//pathz:pathz_proto gazelle(name = "gazelle") + +gazelle( + name = "gazelle_update_repos", + args = [ + "-from_file=go.mod", + "-to_macro=bootz_go_deps.bzl%bootz_go_deps", + "-prune", + ], + command = "update-repos", +) diff --git a/MODULE.bazel b/MODULE.bazel new file mode 100644 index 0000000..0d05959 --- /dev/null +++ b/MODULE.bazel @@ -0,0 +1,35 @@ +module( + name = "openconfig_bootz", +) + +bazel_dep(name = "gazelle", version = "0.41.0", repo_name = "bazel_gazelle") +bazel_dep(name = "grpc", version = "1.69.0", repo_name = "com_github_grpc_grpc") +bazel_dep(name = "protobuf", version = "29.3", repo_name = "com_google_protobuf") +bazel_dep(name = "rules_go", version = "0.51.0", repo_name = "io_bazel_rules_go") +bazel_dep(name = "openconfig_gnmi", version = "0.0.0") +bazel_dep(name = "openconfig_gnsi", version = "0.0.0") + +go_sdk = use_extension("@io_bazel_rules_go//go:extensions.bzl", "go_sdk") +go_sdk.download(version = "1.23.4") + +go_deps = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps") +go_deps.from_file(go_mod = "//:go.mod") +use_repo(go_deps, "com_github_coredhcp_coredhcp", "com_github_golang_glog", "com_github_google_go_cmp", "com_github_h_fam_errdiff", "com_github_insomniacslk_dhcp", "org_golang_google_grpc", "org_golang_google_grpc_cmd_protoc_gen_go_grpc", "org_golang_google_protobuf", "org_mozilla_go_pkcs7") + +go_deps_dev = use_extension("@bazel_gazelle//:extensions.bzl", "go_deps", dev_dependency = True) +go_deps_dev.gazelle_override( + build_file_generation = "clean", + path = "github.com/h-fam/errdiff", +) + +git_override( + module_name = "openconfig_gnmi", + commit = "66ccc5027ea9b69376978a6eeb079ba5907249b7", + remote = "https://github.com/bstoll/gnmi", +) + +git_override( + module_name = "openconfig_gnsi", + commit = "57ecb02511c1541195a212b571ddde05bc635a0a", + remote = "https://github.com/bstoll/gnsi", +) diff --git a/MODULE.bazel.lock b/MODULE.bazel.lock new file mode 100644 index 0000000..b3ecef4 --- /dev/null +++ b/MODULE.bazel.lock @@ -0,0 +1,299 @@ +{ + "lockFileVersion": 16, + "registryFileHashes": { + "https://bcr.bazel.build/bazel_registry.json": "8a28e4aff06ee60aed2a8c281907fb8bcbf3b753c91fb5a5c57da3215d5b3497", + "https://bcr.bazel.build/modules/abseil-cpp/20210324.2/MODULE.bazel": "7cd0312e064fde87c8d1cd79ba06c876bd23630c83466e9500321be55c96ace2", + "https://bcr.bazel.build/modules/abseil-cpp/20211102.0/MODULE.bazel": "70390338f7a5106231d20620712f7cccb659cd0e9d073d1991c038eb9fc57589", + "https://bcr.bazel.build/modules/abseil-cpp/20220623.1/MODULE.bazel": "73ae41b6818d423a11fd79d95aedef1258f304448193d4db4ff90e5e7a0f076c", + "https://bcr.bazel.build/modules/abseil-cpp/20230125.1/MODULE.bazel": "89047429cb0207707b2dface14ba7f8df85273d484c2572755be4bab7ce9c3a0", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.0.bcr.1/MODULE.bazel": "1c8cec495288dccd14fdae6e3f95f772c1c91857047a098fad772034264cc8cb", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.0/MODULE.bazel": "d253ae36a8bd9ee3c5955384096ccb6baf16a1b1e93e858370da0a3b94f77c16", + "https://bcr.bazel.build/modules/abseil-cpp/20230802.1/MODULE.bazel": "fa92e2eb41a04df73cdabeec37107316f7e5272650f81d6cc096418fe647b915", + "https://bcr.bazel.build/modules/abseil-cpp/20240116.0/MODULE.bazel": "98dc378d64c12a4e4741ad3362f87fb737ee6a0886b2d90c3cdbb4d93ea3e0bf", + "https://bcr.bazel.build/modules/abseil-cpp/20240116.1/MODULE.bazel": "37bcdb4440fbb61df6a1c296ae01b327f19e9bb521f9b8e26ec854b6f97309ed", + "https://bcr.bazel.build/modules/abseil-cpp/20240116.2/MODULE.bazel": "73939767a4686cd9a520d16af5ab440071ed75cec1a876bf2fcfaf1f71987a16", + "https://bcr.bazel.build/modules/abseil-cpp/20240722.0/MODULE.bazel": "88668a07647adbdc14cb3a7cd116fb23c9dda37a90a1681590b6c9d8339a5b84", + "https://bcr.bazel.build/modules/abseil-cpp/20240722.0/source.json": "59af9f8a8a4817092624e21263fe1fb7d7951a3b06f0570c610c7e5a9caf5f29", + "https://bcr.bazel.build/modules/apple_support/1.15.1/MODULE.bazel": "a0556fefca0b1bb2de8567b8827518f94db6a6e7e7d632b4c48dc5f865bc7c85", + "https://bcr.bazel.build/modules/apple_support/1.15.1/source.json": "517f2b77430084c541bc9be2db63fdcbb7102938c5f64c17ee60ffda2e5cf07b", + "https://bcr.bazel.build/modules/bazel_features/1.1.0/MODULE.bazel": "cfd42ff3b815a5f39554d97182657f8c4b9719568eb7fded2b9135f084bf760b", + "https://bcr.bazel.build/modules/bazel_features/1.1.1/MODULE.bazel": "27b8c79ef57efe08efccbd9dd6ef70d61b4798320b8d3c134fd571f78963dbcd", + "https://bcr.bazel.build/modules/bazel_features/1.11.0/MODULE.bazel": "f9382337dd5a474c3b7d334c2f83e50b6eaedc284253334cf823044a26de03e8", + "https://bcr.bazel.build/modules/bazel_features/1.15.0/MODULE.bazel": "d38ff6e517149dc509406aca0db3ad1efdd890a85e049585b7234d04238e2a4d", + "https://bcr.bazel.build/modules/bazel_features/1.17.0/MODULE.bazel": "039de32d21b816b47bd42c778e0454217e9c9caac4a3cf8e15c7231ee3ddee4d", + "https://bcr.bazel.build/modules/bazel_features/1.18.0/MODULE.bazel": "1be0ae2557ab3a72a57aeb31b29be347bcdc5d2b1eb1e70f39e3851a7e97041a", + "https://bcr.bazel.build/modules/bazel_features/1.19.0/MODULE.bazel": "59adcdf28230d220f0067b1f435b8537dd033bfff8db21335ef9217919c7fb58", + "https://bcr.bazel.build/modules/bazel_features/1.21.0/MODULE.bazel": "675642261665d8eea09989aa3b8afb5c37627f1be178382c320d1b46afba5e3b", + "https://bcr.bazel.build/modules/bazel_features/1.21.0/source.json": "3e8379efaaef53ce35b7b8ba419df829315a880cb0a030e5bb45c96d6d5ecb5f", + "https://bcr.bazel.build/modules/bazel_features/1.3.0/MODULE.bazel": "cdcafe83ec318cda34e02948e81d790aab8df7a929cec6f6969f13a489ccecd9", + "https://bcr.bazel.build/modules/bazel_features/1.4.1/MODULE.bazel": "e45b6bb2350aff3e442ae1111c555e27eac1d915e77775f6fdc4b351b758b5d7", + "https://bcr.bazel.build/modules/bazel_features/1.9.1/MODULE.bazel": "8f679097876a9b609ad1f60249c49d68bfab783dd9be012faf9d82547b14815a", + "https://bcr.bazel.build/modules/bazel_skylib/1.0.3/MODULE.bazel": "bcb0fd896384802d1ad283b4e4eb4d718eebd8cb820b0a2c3a347fb971afd9d8", + "https://bcr.bazel.build/modules/bazel_skylib/1.1.1/MODULE.bazel": "1add3e7d93ff2e6998f9e118022c84d163917d912f5afafb3058e3d2f1545b5e", + "https://bcr.bazel.build/modules/bazel_skylib/1.2.0/MODULE.bazel": "44fe84260e454ed94ad326352a698422dbe372b21a1ac9f3eab76eb531223686", + "https://bcr.bazel.build/modules/bazel_skylib/1.2.1/MODULE.bazel": "f35baf9da0efe45fa3da1696ae906eea3d615ad41e2e3def4aeb4e8bc0ef9a7a", + "https://bcr.bazel.build/modules/bazel_skylib/1.3.0/MODULE.bazel": "20228b92868bf5cfc41bda7afc8a8ba2a543201851de39d990ec957b513579c5", + "https://bcr.bazel.build/modules/bazel_skylib/1.4.1/MODULE.bazel": "a0dcb779424be33100dcae821e9e27e4f2901d9dfd5333efe5ac6a8d7ab75e1d", + "https://bcr.bazel.build/modules/bazel_skylib/1.4.2/MODULE.bazel": "3bd40978e7a1fac911d5989e6b09d8f64921865a45822d8b09e815eaa726a651", + "https://bcr.bazel.build/modules/bazel_skylib/1.5.0/MODULE.bazel": "32880f5e2945ce6a03d1fbd588e9198c0a959bb42297b2cfaf1685b7bc32e138", + "https://bcr.bazel.build/modules/bazel_skylib/1.6.1/MODULE.bazel": "8fdee2dbaace6c252131c00e1de4b165dc65af02ea278476187765e1a617b917", + "https://bcr.bazel.build/modules/bazel_skylib/1.7.0/MODULE.bazel": "0db596f4563de7938de764cc8deeabec291f55e8ec15299718b93c4423e9796d", + "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/MODULE.bazel": "3120d80c5861aa616222ec015332e5f8d3171e062e3e804a2a0253e1be26e59b", + "https://bcr.bazel.build/modules/bazel_skylib/1.7.1/source.json": "f121b43eeefc7c29efbd51b83d08631e2347297c95aac9764a701f2a6a2bb953", + "https://bcr.bazel.build/modules/boringssl/0.0.0-20211025-d4f1ab9/MODULE.bazel": "6ee6353f8b1a701fe2178e1d925034294971350b6d3ac37e67e5a7d463267834", + "https://bcr.bazel.build/modules/boringssl/0.0.0-20230215-5c22014/MODULE.bazel": "4b03dc0d04375fa0271174badcd202ed249870c8e895b26664fd7298abea7282", + "https://bcr.bazel.build/modules/boringssl/0.0.0-20240530-2db0eb3/MODULE.bazel": "d0405b762c5e87cd445b7015f2b8da5400ef9a8dbca0bfefa6c1cea79d528a97", + "https://bcr.bazel.build/modules/boringssl/0.20240913.0/MODULE.bazel": "fcaa7503a5213290831a91ed1eb538551cf11ac0bc3a6ad92d0fef92c5bd25fb", + "https://bcr.bazel.build/modules/boringssl/0.20241024.0/MODULE.bazel": "b540cff73d948cb79cb0bc108d7cef391d2098a25adabfda5043e4ef548dbc87", + "https://bcr.bazel.build/modules/boringssl/0.20241024.0/source.json": "d843092e682b84188c043ac742965d7f96e04c846c7e338187e03238674909a9", + "https://bcr.bazel.build/modules/buildozer/7.1.2/MODULE.bazel": "2e8dd40ede9c454042645fd8d8d0cd1527966aa5c919de86661e62953cd73d84", + "https://bcr.bazel.build/modules/buildozer/7.1.2/source.json": "c9028a501d2db85793a6996205c8de120944f50a0d570438fcae0457a5f9d1f8", + "https://bcr.bazel.build/modules/c-ares/1.15.0/MODULE.bazel": "ba0a78360fdc83f02f437a9e7df0532ad1fbaa59b722f6e715c11effebaa0166", + "https://bcr.bazel.build/modules/c-ares/1.15.0/source.json": "5e3ed991616c5ec4cc09b0893b29a19232de4a1830eb78c567121bfea87453f7", + "https://bcr.bazel.build/modules/cel-spec/0.15.0/MODULE.bazel": "e1eed53d233acbdcf024b4b0bc1528116d92c29713251b5154078ab1348cb600", + "https://bcr.bazel.build/modules/cel-spec/0.15.0/source.json": "ab7dccdf21ea2261c0f809b5a5221a4d7f8b580309f285fdf1444baaca75d44a", + "https://bcr.bazel.build/modules/civetweb/1.16/MODULE.bazel": "46a38f9daeb57392e3827fce7d40926be0c802bd23cdd6bfd3a96c804de42fae", + "https://bcr.bazel.build/modules/civetweb/1.16/source.json": "ba8b9585adb8355cb51b999d57172fd05e7a762c56b8d4bac6db42c99de3beb7", + "https://bcr.bazel.build/modules/curl/8.4.0/MODULE.bazel": "0bc250aa1cb69590049383df7a9537c809591fcf876c620f5f097c58fdc9bc10", + "https://bcr.bazel.build/modules/curl/8.7.1/MODULE.bazel": "088221c35a2939c555e6e47cb31a81c15f8b59f4daa8009b1e9271a502d33485", + "https://bcr.bazel.build/modules/curl/8.7.1/source.json": "bf9890e809717445b10a3ddc323b6d25c46631589c693a232df8310a25964484", + "https://bcr.bazel.build/modules/cython/3.0.11-1/MODULE.bazel": "868b3f5c956c3657420d2302004c6bb92606bfa47e314bab7f2ba0630c7c966c", + "https://bcr.bazel.build/modules/cython/3.0.11-1/source.json": "da318be900b8ca9c3d1018839d3bebc5a8e1645620d0848fa2c696d4ecf7c296", + "https://bcr.bazel.build/modules/envoy_api/0.0.0-20241214-918efc9/MODULE.bazel": "24e05f6f52f37be63a795192848555a2c8c855e7814dbc1ed419fb04a7005464", + "https://bcr.bazel.build/modules/envoy_api/0.0.0-20241214-918efc9/source.json": "212043ab69d87f7a04aa4f627f725b540cff5e145a3a31a9403d8b6ec2e920c9", + "https://bcr.bazel.build/modules/gazelle/0.27.0/MODULE.bazel": "3446abd608295de6d90b4a8a118ed64a9ce11dcb3dda2dc3290a22056bd20996", + "https://bcr.bazel.build/modules/gazelle/0.30.0/MODULE.bazel": "f888a1effe338491f35f0e0e85003b47bb9d8295ccba73c37e07702d8d31c65b", + "https://bcr.bazel.build/modules/gazelle/0.32.0/MODULE.bazel": "b499f58a5d0d3537f3cf5b76d8ada18242f64ec474d8391247438bf04f58c7b8", + "https://bcr.bazel.build/modules/gazelle/0.33.0/MODULE.bazel": "a13a0f279b462b784fb8dd52a4074526c4a2afe70e114c7d09066097a46b3350", + "https://bcr.bazel.build/modules/gazelle/0.34.0/MODULE.bazel": "abdd8ce4d70978933209db92e436deb3a8b737859e9354fb5fd11fb5c2004c8a", + "https://bcr.bazel.build/modules/gazelle/0.36.0/MODULE.bazel": "e375d5d6e9a6ca59b0cb38b0540bc9a05b6aa926d322f2de268ad267a2ee74c0", + "https://bcr.bazel.build/modules/gazelle/0.41.0/MODULE.bazel": "fdce8a8f5129d5b6d693d91cb191d0a014fdcb88e9094e528325a7165de2a826", + "https://bcr.bazel.build/modules/gazelle/0.41.0/source.json": "bc00c665344d775b5cae6064608262e0478789c523677d40eef8f85031c6bfda", + "https://bcr.bazel.build/modules/google_benchmark/1.8.2/MODULE.bazel": "a70cf1bba851000ba93b58ae2f6d76490a9feb74192e57ab8e8ff13c34ec50cb", + "https://bcr.bazel.build/modules/google_benchmark/1.8.4/MODULE.bazel": "c6d54a11dcf64ee63545f42561eda3fd94c1b5f5ebe1357011de63ae33739d5e", + "https://bcr.bazel.build/modules/google_benchmark/1.8.5/MODULE.bazel": "9ba9b31b984022828a950e3300410977eda2e35df35584c6b0b2d0c2e52766b7", + "https://bcr.bazel.build/modules/google_benchmark/1.8.5/source.json": "2c9c685f9b496f125b9e3a9c696c549d1ed2f33b75830a2fb6ac94fab23c0398", + "https://bcr.bazel.build/modules/googleapis/0.0.0-20240326-1c8d509c5/MODULE.bazel": "a4b7e46393c1cdcc5a00e6f85524467c48c565256b22b5fae20f84ab4a999a68", + "https://bcr.bazel.build/modules/googleapis/0.0.0-20240819-fe8ba054a/MODULE.bazel": "117b7c7be7327ed5d6c482274533f2dbd78631313f607094d4625c28203cacdf", + "https://bcr.bazel.build/modules/googleapis/0.0.0-20240819-fe8ba054a/source.json": "b31fc7eb283a83f71d2e5bfc3d1c562d2994198fa1278409fbe8caec3afc1d3e", + "https://bcr.bazel.build/modules/googletest/1.11.0/MODULE.bazel": "3a83f095183f66345ca86aa13c58b59f9f94a2f81999c093d4eeaa2d262d12f4", + "https://bcr.bazel.build/modules/googletest/1.14.0.bcr.1/MODULE.bazel": "22c31a561553727960057361aa33bf20fb2e98584bc4fec007906e27053f80c6", + "https://bcr.bazel.build/modules/googletest/1.14.0/MODULE.bazel": "cfbcbf3e6eac06ef9d85900f64424708cc08687d1b527f0ef65aa7517af8118f", + "https://bcr.bazel.build/modules/googletest/1.15.2/MODULE.bazel": "6de1edc1d26cafb0ea1a6ab3f4d4192d91a312fd2d360b63adaa213cd00b2108", + "https://bcr.bazel.build/modules/googletest/1.15.2/source.json": "dbdda654dcb3a0d7a8bc5d0ac5fc7e150b58c2a986025ae5bc634bb2cb61f470", + "https://bcr.bazel.build/modules/grpc-java/1.62.2/MODULE.bazel": "99b8771e8c7cacb130170fed2a10c9e8fed26334a93e73b42d2953250885a158", + "https://bcr.bazel.build/modules/grpc-java/1.66.0/MODULE.bazel": "86ff26209fac846adb89db11f3714b3dc0090fb2fb81575673cc74880cda4e7e", + "https://bcr.bazel.build/modules/grpc-java/1.69.0/MODULE.bazel": "53887af6a00b3b406d70175d3d07e84ea9362016ff55ea90b9185f0227bfaf98", + "https://bcr.bazel.build/modules/grpc-java/1.69.0/source.json": "daf42ef1f7a2b86d9178d288c5245802f9b6157adc302b2b05c8fd12cbd79659", + "https://bcr.bazel.build/modules/grpc-proto/0.0.0-20240627-ec30f58/MODULE.bazel": "88de79051e668a04726e9ea94a481ec6f1692086735fd6f488ab908b3b909238", + "https://bcr.bazel.build/modules/grpc-proto/0.0.0-20240627-ec30f58/source.json": "5035d379c61042930244ab59e750106d893ec440add92ec0df6a0098ca7f131d", + "https://bcr.bazel.build/modules/grpc/1.41.0/MODULE.bazel": "5bcbfc2b274dabea628f0649dc50c90cf36543b1cfc31624832538644ad1aae8", + "https://bcr.bazel.build/modules/grpc/1.56.3.bcr.1/MODULE.bazel": "cd5b1eb276b806ec5ab85032921f24acc51735a69ace781be586880af20ab33f", + "https://bcr.bazel.build/modules/grpc/1.62.1/MODULE.bazel": "2998211594b8a79a6b459c4e797cfa19f0fb8b3be3149760ec7b8c99abfd426f", + "https://bcr.bazel.build/modules/grpc/1.66.0.bcr.2/MODULE.bazel": "0fa2b0fd028ce354febf0fe90f1ed8fecfbfc33118cddd95ac0418cc283333a0", + "https://bcr.bazel.build/modules/grpc/1.66.0.bcr.3/MODULE.bazel": "f6047e89faf488f5e3e65cb2594c6f5e86992abec7487163ff6b623526e543b0", + "https://bcr.bazel.build/modules/grpc/1.69.0/MODULE.bazel": "4e26e05c9e1ef291ccbc96aad8e457b1b8abedbc141623831629da2f8168eef6", + "https://bcr.bazel.build/modules/grpc/1.69.0/source.json": "82e5cd0eeed569909ff42fd6946b813c8b69fc71a6b075ccebef224937e19215", + "https://bcr.bazel.build/modules/jsoncpp/1.9.5/MODULE.bazel": "31271aedc59e815656f5736f282bb7509a97c7ecb43e927ac1a37966e0578075", + "https://bcr.bazel.build/modules/jsoncpp/1.9.5/source.json": "4108ee5085dd2885a341c7fab149429db457b3169b86eb081fa245eadf69169d", + "https://bcr.bazel.build/modules/libpfm/4.11.0/MODULE.bazel": "45061ff025b301940f1e30d2c16bea596c25b176c8b6b3087e92615adbd52902", + "https://bcr.bazel.build/modules/libpfm/4.11.0/source.json": "caaffb3ac2b59b8aac456917a4ecf3167d40478ee79f15ab7a877ec9273937c9", + "https://bcr.bazel.build/modules/mbedtls/3.6.0/MODULE.bazel": "8e380e4698107c5f8766264d4df92e36766248447858db28187151d884995a09", + "https://bcr.bazel.build/modules/mbedtls/3.6.0/source.json": "1dbe7eb5258050afcc3806b9d43050f71c6f539ce0175535c670df606790b30c", + "https://bcr.bazel.build/modules/nlohmann_json/3.11.3/MODULE.bazel": "87023db2f55fc3a9949c7b08dc711fae4d4be339a80a99d04453c4bb3998eefc", + "https://bcr.bazel.build/modules/nlohmann_json/3.11.3/source.json": "296c63a90c6813e53b3812d24245711981fc7e563d98fe15625f55181494488a", + "https://bcr.bazel.build/modules/nlohmann_json/3.6.1/MODULE.bazel": "6f7b417dcc794d9add9e556673ad25cb3ba835224290f4f848f8e2db1e1fca74", + "https://bcr.bazel.build/modules/opencensus-cpp/0.0.0-20230502-50eb5de/MODULE.bazel": "02201d2921dadb4ec90c4980eca4b2a02904eddcf6fa02f3da7594fb7b0d821c", + "https://bcr.bazel.build/modules/opencensus-cpp/0.0.0-20230502-50eb5de/source.json": "f50efc07822f5425bd1d3e40e977484f9c0142463052717d40ec85cd6744243e", + "https://bcr.bazel.build/modules/opencensus-proto/0.4.1/MODULE.bazel": "4a2e8b4d0b544002502474d611a5a183aa282251e14f6a01afe841c0c1b10372", + "https://bcr.bazel.build/modules/opencensus-proto/0.4.1/source.json": "a7d956700a85b833c43fc61455c0e111ab75bab40768ed17a206ee18a2bbe38f", + "https://bcr.bazel.build/modules/opentelemetry-cpp/1.14.2/MODULE.bazel": "089a5613c2a159c7dfde098dabfc61e966889c7d6a81a98422a84c51535ed17d", + "https://bcr.bazel.build/modules/opentelemetry-cpp/1.16.0/MODULE.bazel": "b7379a140f538cea3f749179a2d481ed81942cc6f7b05a6113723eb34ac3b3e7", + "https://bcr.bazel.build/modules/opentelemetry-cpp/1.16.0/source.json": "da0cf667713b1e48d7f8912b100b4e0a8284c8a95717af5eb8c830d699e61cf5", + "https://bcr.bazel.build/modules/opentelemetry-proto/1.1.0/MODULE.bazel": "a49f406e99bf05ab43ed4f5b3322fbd33adfd484b6546948929d1316299b68bf", + "https://bcr.bazel.build/modules/opentelemetry-proto/1.3.1/MODULE.bazel": "0141a50e989576ee064c11ce8dd5ec89993525bd9f9a09c5618e4dacc8df9352", + "https://bcr.bazel.build/modules/opentelemetry-proto/1.4.0.bcr.1/MODULE.bazel": "5ceaf25e11170d22eded4c8032728b4a3f273765fccda32f9e94f463755c4167", + "https://bcr.bazel.build/modules/opentelemetry-proto/1.4.0.bcr.1/source.json": "fb9e01517460cfad8bafab082f2e1508d3cc2b7ed700cff19f3c7c84b146e5eb", + "https://bcr.bazel.build/modules/opentracing-cpp/1.6.0/MODULE.bazel": "b3925269f63561b8b880ae7cf62ccf81f6ece55b62cd791eda9925147ae116ec", + "https://bcr.bazel.build/modules/opentracing-cpp/1.6.0/source.json": "da1cb1add160f5e5074b7272e9db6fd8f1b3336c15032cd0a653af9d2f484aed", + "https://bcr.bazel.build/modules/platforms/0.0.10/MODULE.bazel": "8cb8efaf200bdeb2150d93e162c40f388529a25852b332cec879373771e48ed5", + "https://bcr.bazel.build/modules/platforms/0.0.10/source.json": "f22828ff4cf021a6b577f1bf6341cb9dcd7965092a439f64fc1bb3b7a5ae4bd5", + "https://bcr.bazel.build/modules/platforms/0.0.4/MODULE.bazel": "9b328e31ee156f53f3c416a64f8491f7eb731742655a47c9eec4703a71644aee", + "https://bcr.bazel.build/modules/platforms/0.0.5/MODULE.bazel": "5733b54ea419d5eaf7997054bb55f6a1d0b5ff8aedf0176fef9eea44f3acda37", + "https://bcr.bazel.build/modules/platforms/0.0.6/MODULE.bazel": "ad6eeef431dc52aefd2d77ed20a4b353f8ebf0f4ecdd26a807d2da5aa8cd0615", + "https://bcr.bazel.build/modules/platforms/0.0.7/MODULE.bazel": "72fd4a0ede9ee5c021f6a8dd92b503e089f46c227ba2813ff183b71616034814", + "https://bcr.bazel.build/modules/platforms/0.0.8/MODULE.bazel": "9f142c03e348f6d263719f5074b21ef3adf0b139ee4c5133e2aa35664da9eb2d", + "https://bcr.bazel.build/modules/platforms/0.0.9/MODULE.bazel": "4a87a60c927b56ddd67db50c89acaa62f4ce2a1d2149ccb63ffd871d5ce29ebc", + "https://bcr.bazel.build/modules/prometheus-cpp/1.2.4/MODULE.bazel": "0fbe5dcff66311947a3f6b86ebc6a6d9328e31a28413ca864debc4a043f371e5", + "https://bcr.bazel.build/modules/prometheus-cpp/1.3.0/MODULE.bazel": "ce82e086bbc0b60267e970f6a54b2ca6d0f22d3eb6633e00e2cc2899c700f3d8", + "https://bcr.bazel.build/modules/prometheus-cpp/1.3.0/source.json": "8cb66b4e535afc718e9d104a3db96ccb71a42ee816a100e50fd0d5ac843c0606", + "https://bcr.bazel.build/modules/protobuf/21.7/MODULE.bazel": "a5a29bb89544f9b97edce05642fac225a808b5b7be74038ea3640fae2f8e66a7", + "https://bcr.bazel.build/modules/protobuf/23.1/MODULE.bazel": "88b393b3eb4101d18129e5db51847cd40a5517a53e81216144a8c32dfeeca52a", + "https://bcr.bazel.build/modules/protobuf/24.4/MODULE.bazel": "7bc7ce5f2abf36b3b7b7c8218d3acdebb9426aeb35c2257c96445756f970eb12", + "https://bcr.bazel.build/modules/protobuf/26.0.bcr.1/MODULE.bazel": "8f04d38c2da40a3715ff6bdce4d32c5981e6432557571482d43a62c31a24c2cf", + "https://bcr.bazel.build/modules/protobuf/26.0.bcr.2/MODULE.bazel": "62e0b84ca727bdeb55a6fe1ef180e6b191bbe548a58305ea1426c158067be534", + "https://bcr.bazel.build/modules/protobuf/26.0/MODULE.bazel": "8402da964092af40097f4a205eec2a33fd4a7748dc43632b7d1629bfd9a2b856", + "https://bcr.bazel.build/modules/protobuf/27.0-rc2/MODULE.bazel": "b2b0dbafd57b6bec0ca9b251da02e628c357dab53a097570aa7d79d020f107cf", + "https://bcr.bazel.build/modules/protobuf/27.0/MODULE.bazel": "7873b60be88844a0a1d8f80b9d5d20cfbd8495a689b8763e76c6372998d3f64c", + "https://bcr.bazel.build/modules/protobuf/27.1/MODULE.bazel": "703a7b614728bb06647f965264967a8ef1c39e09e8f167b3ca0bb1fd80449c0d", + "https://bcr.bazel.build/modules/protobuf/29.0-rc2/MODULE.bazel": "6241d35983510143049943fc0d57937937122baf1b287862f9dc8590fc4c37df", + "https://bcr.bazel.build/modules/protobuf/29.0/MODULE.bazel": "319dc8bf4c679ff87e71b1ccfb5a6e90a6dbc4693501d471f48662ac46d04e4e", + "https://bcr.bazel.build/modules/protobuf/29.3/MODULE.bazel": "77480eea5fb5541903e49683f24dc3e09f4a79e0eea247414887bb9fc0066e94", + "https://bcr.bazel.build/modules/protobuf/29.3/source.json": "c460e6550ddd24996232c7542ebf201f73c4e01d2183a31a041035fb50f19681", + "https://bcr.bazel.build/modules/protobuf/3.19.0/MODULE.bazel": "6b5fbb433f760a99a22b18b6850ed5784ef0e9928a72668b66e4d7ccd47db9b0", + "https://bcr.bazel.build/modules/protobuf/3.19.2/MODULE.bazel": "532ffe5f2186b69fdde039efe6df13ba726ff338c6bc82275ad433013fa10573", + "https://bcr.bazel.build/modules/protobuf/3.19.6/MODULE.bazel": "9233edc5e1f2ee276a60de3eaa47ac4132302ef9643238f23128fea53ea12858", + "https://bcr.bazel.build/modules/protoc-gen-validate/1.0.4.bcr.2/MODULE.bazel": "c4bd2c850211ff5b7dadf9d2d0496c1c922fdedc303c775b01dfd3b3efc907ed", + "https://bcr.bazel.build/modules/protoc-gen-validate/1.0.4.bcr.2/source.json": "4cc97f70b521890798058600a927ce4b0def8ee84ff2a5aa632aabcb4234aa0b", + "https://bcr.bazel.build/modules/protoc-gen-validate/1.0.4/MODULE.bazel": "b8913c154b16177990f6126d2d2477d187f9ddc568e95ee3e2d50fc65d2c494a", + "https://bcr.bazel.build/modules/pybind11_bazel/2.11.1/MODULE.bazel": "88af1c246226d87e65be78ed49ecd1e6f5e98648558c14ce99176da041dc378e", + "https://bcr.bazel.build/modules/pybind11_bazel/2.12.0/MODULE.bazel": "e6f4c20442eaa7c90d7190d8dc539d0ab422f95c65a57cc59562170c58ae3d34", + "https://bcr.bazel.build/modules/pybind11_bazel/2.12.0/source.json": "6900fdc8a9e95866b8c0d4ad4aba4d4236317b5c1cd04c502df3f0d33afed680", + "https://bcr.bazel.build/modules/rapidjson/1.1.0.bcr.20241007/MODULE.bazel": "82fbcb2e42f9e0040e76ccc74c06c3e46dfd33c64ca359293f8b84df0e6dff4c", + "https://bcr.bazel.build/modules/rapidjson/1.1.0.bcr.20241007/source.json": "5c42389ad0e21fc06b95ad7c0b730008271624a2fa3292e0eab5f30e15adeee3", + "https://bcr.bazel.build/modules/re2/2021-09-01/MODULE.bazel": "bcb6b96f3b071e6fe2d8bed9cc8ada137a105f9d2c5912e91d27528b3d123833", + "https://bcr.bazel.build/modules/re2/2023-09-01/MODULE.bazel": "cb3d511531b16cfc78a225a9e2136007a48cf8a677e4264baeab57fe78a80206", + "https://bcr.bazel.build/modules/re2/2024-05-01/MODULE.bazel": "55a3f059538f381107824e7d00df5df6d061ba1fb80e874e4909c0f0549e8f3e", + "https://bcr.bazel.build/modules/re2/2024-07-02/MODULE.bazel": "0eadc4395959969297cbcf31a249ff457f2f1d456228c67719480205aa306daa", + "https://bcr.bazel.build/modules/re2/2024-07-02/source.json": "547d0111a9d4f362db32196fef805abbf3676e8d6afbe44d395d87816c1130ca", + "https://bcr.bazel.build/modules/rules_android/0.1.1/MODULE.bazel": "48809ab0091b07ad0182defb787c4c5328bd3a278938415c00a7b69b50c4d3a8", + "https://bcr.bazel.build/modules/rules_android/0.1.1/source.json": "e6986b41626ee10bdc864937ffb6d6bf275bb5b9c65120e6137d56e6331f089e", + "https://bcr.bazel.build/modules/rules_apple/3.5.1/MODULE.bazel": "3d1bbf65ad3692003d36d8a29eff54d4e5c1c5f4bfb60f79e28646a924d9101c", + "https://bcr.bazel.build/modules/rules_apple/3.5.1/source.json": "e7593cdf26437d35dbda64faeaf5b82cbdd9df72674b0f041fdde75c1d20dda7", + "https://bcr.bazel.build/modules/rules_cc/0.0.1/MODULE.bazel": "cb2aa0747f84c6c3a78dad4e2049c154f08ab9d166b1273835a8174940365647", + "https://bcr.bazel.build/modules/rules_cc/0.0.10/MODULE.bazel": "ec1705118f7eaedd6e118508d3d26deba2a4e76476ada7e0e3965211be012002", + "https://bcr.bazel.build/modules/rules_cc/0.0.13/MODULE.bazel": "0e8529ed7b323dad0775ff924d2ae5af7640b23553dfcd4d34344c7e7a867191", + "https://bcr.bazel.build/modules/rules_cc/0.0.14/MODULE.bazel": "5e343a3aac88b8d7af3b1b6d2093b55c347b8eefc2e7d1442f7a02dc8fea48ac", + "https://bcr.bazel.build/modules/rules_cc/0.0.15/MODULE.bazel": "6704c35f7b4a72502ee81f61bf88706b54f06b3cbe5558ac17e2e14666cd5dcc", + "https://bcr.bazel.build/modules/rules_cc/0.0.16/MODULE.bazel": "7661303b8fc1b4d7f532e54e9d6565771fea666fbdf839e0a86affcd02defe87", + "https://bcr.bazel.build/modules/rules_cc/0.0.16/source.json": "227e83737046aa4f50015da48e98e0d8ab42fd0ec74d8d653b6cc9f9a357f200", + "https://bcr.bazel.build/modules/rules_cc/0.0.2/MODULE.bazel": "6915987c90970493ab97393024c156ea8fb9f3bea953b2f3ec05c34f19b5695c", + "https://bcr.bazel.build/modules/rules_cc/0.0.5/MODULE.bazel": "be41f87587998fe8890cd82ea4e848ed8eb799e053c224f78f3ff7fe1a1d9b74", + "https://bcr.bazel.build/modules/rules_cc/0.0.6/MODULE.bazel": "abf360251023dfe3efcef65ab9d56beefa8394d4176dd29529750e1c57eaa33f", + "https://bcr.bazel.build/modules/rules_cc/0.0.8/MODULE.bazel": "964c85c82cfeb6f3855e6a07054fdb159aced38e99a5eecf7bce9d53990afa3e", + "https://bcr.bazel.build/modules/rules_cc/0.0.9/MODULE.bazel": "836e76439f354b89afe6a911a7adf59a6b2518fafb174483ad78a2a2fde7b1c5", + "https://bcr.bazel.build/modules/rules_foreign_cc/0.10.1/MODULE.bazel": "b9527010e5fef060af92b6724edb3691970a5b1f76f74b21d39f7d433641be60", + "https://bcr.bazel.build/modules/rules_foreign_cc/0.10.1/source.json": "9300e71df0cdde0952f10afff1401fa664e9fc5d9ae6204660ba1b158d90d6a6", + "https://bcr.bazel.build/modules/rules_foreign_cc/0.9.0/MODULE.bazel": "c9e8c682bf75b0e7c704166d79b599f93b72cfca5ad7477df596947891feeef6", + "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/MODULE.bazel": "40c97d1144356f52905566c55811f13b299453a14ac7769dfba2ac38192337a8", + "https://bcr.bazel.build/modules/rules_fuzzing/0.5.2/source.json": "c8b1e2c717646f1702290959a3302a178fb639d987ab61d548105019f11e527e", + "https://bcr.bazel.build/modules/rules_go/0.33.0/MODULE.bazel": "a2b11b64cd24bf94f57454f53288a5dacfe6cb86453eee7761b7637728c1910c", + "https://bcr.bazel.build/modules/rules_go/0.38.1/MODULE.bazel": "fb8e73dd3b6fc4ff9d260ceacd830114891d49904f5bda1c16bc147bcc254f71", + "https://bcr.bazel.build/modules/rules_go/0.39.1/MODULE.bazel": "d34fb2a249403a5f4339c754f1e63dc9e5ad70b47c5e97faee1441fc6636cd61", + "https://bcr.bazel.build/modules/rules_go/0.41.0/MODULE.bazel": "55861d8e8bb0e62cbd2896f60ff303f62ffcb0eddb74ecb0e5c0cbe36fc292c8", + "https://bcr.bazel.build/modules/rules_go/0.42.0/MODULE.bazel": "8cfa875b9aa8c6fce2b2e5925e73c1388173ea3c32a0db4d2b4804b453c14270", + "https://bcr.bazel.build/modules/rules_go/0.45.1/MODULE.bazel": "6d7884f0edf890024eba8ab31a621faa98714df0ec9d512389519f0edff0281a", + "https://bcr.bazel.build/modules/rules_go/0.46.0/MODULE.bazel": "3477df8bdcc49e698b9d25f734c4f3a9f5931ff34ee48a2c662be168f5f2d3fd", + "https://bcr.bazel.build/modules/rules_go/0.48.0/MODULE.bazel": "d00ebcae0908ee3f5e6d53f68677a303d6d59a77beef879598700049c3980a03", + "https://bcr.bazel.build/modules/rules_go/0.50.1/MODULE.bazel": "b91a308dc5782bb0a8021ad4330c81fea5bda77f96b9e4c117b9b9c8f6665ee0", + "https://bcr.bazel.build/modules/rules_go/0.51.0/MODULE.bazel": "b6920f505935bfd69381651c942496d99b16e2a12f3dd5263b90ded16f3b4d0f", + "https://bcr.bazel.build/modules/rules_go/0.51.0/source.json": "473c0263360b1ae3aca71758e001d257a638620b2e2a36e3a2721fdae04377ec", + "https://bcr.bazel.build/modules/rules_java/4.0.0/MODULE.bazel": "5a78a7ae82cd1a33cef56dc578c7d2a46ed0dca12643ee45edbb8417899e6f74", + "https://bcr.bazel.build/modules/rules_java/5.1.0/MODULE.bazel": "324b6478b0343a3ce7a9add8586ad75d24076d6d43d2f622990b9c1cfd8a1b15", + "https://bcr.bazel.build/modules/rules_java/5.3.5/MODULE.bazel": "a4ec4f2db570171e3e5eb753276ee4b389bae16b96207e9d3230895c99644b86", + "https://bcr.bazel.build/modules/rules_java/5.5.0/MODULE.bazel": "486ad1aa15cdc881af632b4b1448b0136c76025a1fe1ad1b65c5899376b83a50", + "https://bcr.bazel.build/modules/rules_java/6.0.0/MODULE.bazel": "8a43b7df601a7ec1af61d79345c17b31ea1fedc6711fd4abfd013ea612978e39", + "https://bcr.bazel.build/modules/rules_java/6.3.0/MODULE.bazel": "a97c7678c19f236a956ad260d59c86e10a463badb7eb2eda787490f4c969b963", + "https://bcr.bazel.build/modules/rules_java/6.4.0/MODULE.bazel": "e986a9fe25aeaa84ac17ca093ef13a4637f6107375f64667a15999f77db6c8f6", + "https://bcr.bazel.build/modules/rules_java/6.5.2/MODULE.bazel": "1d440d262d0e08453fa0c4d8f699ba81609ed0e9a9a0f02cd10b3e7942e61e31", + "https://bcr.bazel.build/modules/rules_java/7.1.0/MODULE.bazel": "30d9135a2b6561c761bd67bd4990da591e6bdc128790ce3e7afd6a3558b2fb64", + "https://bcr.bazel.build/modules/rules_java/7.10.0/MODULE.bazel": "530c3beb3067e870561739f1144329a21c851ff771cd752a49e06e3dc9c2e71a", + "https://bcr.bazel.build/modules/rules_java/7.12.2/MODULE.bazel": "579c505165ee757a4280ef83cda0150eea193eed3bef50b1004ba88b99da6de6", + "https://bcr.bazel.build/modules/rules_java/7.2.0/MODULE.bazel": "06c0334c9be61e6cef2c8c84a7800cef502063269a5af25ceb100b192453d4ab", + "https://bcr.bazel.build/modules/rules_java/7.3.2/MODULE.bazel": "50dece891cfdf1741ea230d001aa9c14398062f2b7c066470accace78e412bc2", + "https://bcr.bazel.build/modules/rules_java/7.4.0/MODULE.bazel": "a592852f8a3dd539e82ee6542013bf2cadfc4c6946be8941e189d224500a8934", + "https://bcr.bazel.build/modules/rules_java/7.6.1/MODULE.bazel": "2f14b7e8a1aa2f67ae92bc69d1ec0fa8d9f827c4e17ff5e5f02e91caa3b2d0fe", + "https://bcr.bazel.build/modules/rules_java/8.6.1/MODULE.bazel": "f4808e2ab5b0197f094cabce9f4b006a27766beb6a9975931da07099560ca9c2", + "https://bcr.bazel.build/modules/rules_java/8.6.1/source.json": "f18d9ad3c4c54945bf422ad584fa6c5ca5b3116ff55a5b1bc77e5c1210be5960", + "https://bcr.bazel.build/modules/rules_jvm_external/4.4.2/MODULE.bazel": "a56b85e418c83eb1839819f0b515c431010160383306d13ec21959ac412d2fe7", + "https://bcr.bazel.build/modules/rules_jvm_external/5.1/MODULE.bazel": "33f6f999e03183f7d088c9be518a63467dfd0be94a11d0055fe2d210f89aa909", + "https://bcr.bazel.build/modules/rules_jvm_external/5.2/MODULE.bazel": "d9351ba35217ad0de03816ef3ed63f89d411349353077348a45348b096615036", + "https://bcr.bazel.build/modules/rules_jvm_external/5.3/MODULE.bazel": "bf93870767689637164657731849fb887ad086739bd5d360d90007a581d5527d", + "https://bcr.bazel.build/modules/rules_jvm_external/6.0/MODULE.bazel": "37c93a5a78d32e895d52f86a8d0416176e915daabd029ccb5594db422e87c495", + "https://bcr.bazel.build/modules/rules_jvm_external/6.1/MODULE.bazel": "75b5fec090dbd46cf9b7d8ea08cf84a0472d92ba3585b476f44c326eda8059c4", + "https://bcr.bazel.build/modules/rules_jvm_external/6.3/MODULE.bazel": "c998e060b85f71e00de5ec552019347c8bca255062c990ac02d051bb80a38df0", + "https://bcr.bazel.build/modules/rules_jvm_external/6.3/source.json": "6f5f5a5a4419ae4e37c35a5bb0a6ae657ed40b7abc5a5189111b47fcebe43197", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.0/MODULE.bazel": "ef85697305025e5a61f395d4eaede272a5393cee479ace6686dba707de804d59", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/MODULE.bazel": "d269a01a18ee74d0335450b10f62c9ed81f2321d7958a2934e44272fe82dcef3", + "https://bcr.bazel.build/modules/rules_kotlin/1.9.6/source.json": "2faa4794364282db7c06600b7e5e34867a564ae91bda7cae7c29c64e9466b7d5", + "https://bcr.bazel.build/modules/rules_license/0.0.3/MODULE.bazel": "627e9ab0247f7d1e05736b59dbb1b6871373de5ad31c3011880b4133cafd4bd0", + "https://bcr.bazel.build/modules/rules_license/0.0.7/MODULE.bazel": "088fbeb0b6a419005b89cf93fe62d9517c0a2b8bb56af3244af65ecfe37e7d5d", + "https://bcr.bazel.build/modules/rules_license/1.0.0/MODULE.bazel": "a7fda60eefdf3d8c827262ba499957e4df06f659330bbe6cdbdb975b768bb65c", + "https://bcr.bazel.build/modules/rules_license/1.0.0/source.json": "a52c89e54cc311196e478f8382df91c15f7a2bfdf4c6cd0e2675cc2ff0b56efb", + "https://bcr.bazel.build/modules/rules_pkg/0.7.0/MODULE.bazel": "df99f03fc7934a4737122518bb87e667e62d780b610910f0447665a7e2be62dc", + "https://bcr.bazel.build/modules/rules_pkg/1.0.1/MODULE.bazel": "5b1df97dbc29623bccdf2b0dcd0f5cb08e2f2c9050aab1092fd39a41e82686ff", + "https://bcr.bazel.build/modules/rules_pkg/1.0.1/source.json": "bd82e5d7b9ce2d31e380dd9f50c111d678c3bdaca190cb76b0e1c71b05e1ba8a", + "https://bcr.bazel.build/modules/rules_proto/4.0.0/MODULE.bazel": "a7a7b6ce9bee418c1a760b3d84f83a299ad6952f9903c67f19e4edd964894e06", + "https://bcr.bazel.build/modules/rules_proto/5.3.0-21.7/MODULE.bazel": "e8dff86b0971688790ae75528fe1813f71809b5afd57facb44dad9e8eca631b7", + "https://bcr.bazel.build/modules/rules_proto/6.0.0-rc1/MODULE.bazel": "1e5b502e2e1a9e825eef74476a5a1ee524a92297085015a052510b09a1a09483", + "https://bcr.bazel.build/modules/rules_proto/6.0.0/MODULE.bazel": "b531d7f09f58dce456cd61b4579ce8c86b38544da75184eadaf0a7cb7966453f", + "https://bcr.bazel.build/modules/rules_proto/6.0.2/MODULE.bazel": "ce916b775a62b90b61888052a416ccdda405212b6aaeb39522f7dc53431a5e73", + "https://bcr.bazel.build/modules/rules_proto/7.0.2/MODULE.bazel": "bf81793bd6d2ad89a37a40693e56c61b0ee30f7a7fdbaf3eabbf5f39de47dea2", + "https://bcr.bazel.build/modules/rules_proto/7.0.2/source.json": "1e5e7260ae32ef4f2b52fd1d0de8d03b606a44c91b694d2f1afb1d3b28a48ce1", + "https://bcr.bazel.build/modules/rules_python/0.10.2/MODULE.bazel": "cc82bc96f2997baa545ab3ce73f196d040ffb8756fd2d66125a530031cd90e5f", + "https://bcr.bazel.build/modules/rules_python/0.20.0/MODULE.bazel": "bfe14d17f20e3fe900b9588f526f52c967a6f281e47a1d6b988679bd15082286", + "https://bcr.bazel.build/modules/rules_python/0.22.0/MODULE.bazel": "b8057bafa11a9e0f4b08fc3b7cd7bee0dcbccea209ac6fc9a3ff051cd03e19e9", + "https://bcr.bazel.build/modules/rules_python/0.22.1/MODULE.bazel": "26114f0c0b5e93018c0c066d6673f1a2c3737c7e90af95eff30cfee38d0bbac7", + "https://bcr.bazel.build/modules/rules_python/0.23.1/MODULE.bazel": "49ffccf0511cb8414de28321f5fcf2a31312b47c40cc21577144b7447f2bf300", + "https://bcr.bazel.build/modules/rules_python/0.25.0/MODULE.bazel": "72f1506841c920a1afec76975b35312410eea3aa7b63267436bfb1dd91d2d382", + "https://bcr.bazel.build/modules/rules_python/0.28.0/MODULE.bazel": "cba2573d870babc976664a912539b320cbaa7114cd3e8f053c720171cde331ed", + "https://bcr.bazel.build/modules/rules_python/0.29.0/MODULE.bazel": "2ac8cd70524b4b9ec49a0b8284c79e4cd86199296f82f6e0d5da3f783d660c82", + "https://bcr.bazel.build/modules/rules_python/0.31.0/MODULE.bazel": "93a43dc47ee570e6ec9f5779b2e64c1476a6ce921c48cc9a1678a91dd5f8fd58", + "https://bcr.bazel.build/modules/rules_python/0.33.2/MODULE.bazel": "3e036c4ad8d804a4dad897d333d8dce200d943df4827cb849840055be8d2e937", + "https://bcr.bazel.build/modules/rules_python/0.37.1/MODULE.bazel": "3faeb2d9fa0a81f8980643ee33f212308f4d93eea4b9ce6f36d0b742e71e9500", + "https://bcr.bazel.build/modules/rules_python/0.4.0/MODULE.bazel": "9208ee05fd48bf09ac60ed269791cf17fb343db56c8226a720fbb1cdf467166c", + "https://bcr.bazel.build/modules/rules_python/0.40.0/MODULE.bazel": "9d1a3cd88ed7d8e39583d9ffe56ae8a244f67783ae89b60caafc9f5cf318ada7", + "https://bcr.bazel.build/modules/rules_python/0.40.0/source.json": "939d4bd2e3110f27bfb360292986bb79fd8dcefb874358ccd6cdaa7bda029320", + "https://bcr.bazel.build/modules/rules_shell/0.2.0/MODULE.bazel": "fda8a652ab3c7d8fee214de05e7a9916d8b28082234e8d2c0094505c5268ed3c", + "https://bcr.bazel.build/modules/rules_shell/0.3.0/MODULE.bazel": "de4402cd12f4cc8fda2354fce179fdb068c0b9ca1ec2d2b17b3e21b24c1a937b", + "https://bcr.bazel.build/modules/rules_shell/0.3.0/source.json": "c55ed591aa5009401ddf80ded9762ac32c358d2517ee7820be981e2de9756cf3", + "https://bcr.bazel.build/modules/rules_swift/1.18.0/MODULE.bazel": "a6aba73625d0dc64c7b4a1e831549b6e375fbddb9d2dde9d80c9de6ec45b24c9", + "https://bcr.bazel.build/modules/rules_swift/1.18.0/source.json": "9e636cabd446f43444ea2662341a9cbb74ecd87ab0557225ae73f1127cb7ff52", + "https://bcr.bazel.build/modules/stardoc/0.5.1/MODULE.bazel": "1a05d92974d0c122f5ccf09291442580317cdd859f07a8655f1db9a60374f9f8", + "https://bcr.bazel.build/modules/stardoc/0.5.3/MODULE.bazel": "c7f6948dae6999bf0db32c1858ae345f112cacf98f174c7a8bb707e41b974f1c", + "https://bcr.bazel.build/modules/stardoc/0.5.6/MODULE.bazel": "c43dabc564990eeab55e25ed61c07a1aadafe9ece96a4efabb3f8bf9063b71ef", + "https://bcr.bazel.build/modules/stardoc/0.6.2/MODULE.bazel": "7060193196395f5dd668eda046ccbeacebfd98efc77fed418dbe2b82ffaa39fd", + "https://bcr.bazel.build/modules/stardoc/0.7.0/MODULE.bazel": "05e3d6d30c099b6770e97da986c53bd31844d7f13d41412480ea265ac9e8079c", + "https://bcr.bazel.build/modules/stardoc/0.7.1/MODULE.bazel": "3548faea4ee5dda5580f9af150e79d0f6aea934fc60c1cc50f4efdd9420759e7", + "https://bcr.bazel.build/modules/stardoc/0.7.1/source.json": "b6500ffcd7b48cd72c29bb67bcac781e12701cc0d6d55d266a652583cfcdab01", + "https://bcr.bazel.build/modules/upb/0.0.0-20211020-160625a/MODULE.bazel": "6cced416be2dc5b9c05efd5b997049ba795e5e4e6fafbe1624f4587767638928", + "https://bcr.bazel.build/modules/upb/0.0.0-20220923-a547704/MODULE.bazel": "7298990c00040a0e2f121f6c32544bab27d4452f80d9ce51349b1a28f3005c43", + "https://bcr.bazel.build/modules/upb/0.0.0-20230516-61a97ef/MODULE.bazel": "c0df5e35ad55e264160417fd0875932ee3c9dda63d9fccace35ac62f45e1b6f9", + "https://bcr.bazel.build/modules/upb/0.0.0-20230907-e7430e6/MODULE.bazel": "3a7dedadf70346e678dc059dbe44d05cbf3ab17f1ce43a1c7a42edc7cbf93fd9", + "https://bcr.bazel.build/modules/xds/0.0.0-20240423-555b57e/MODULE.bazel": "cea509976a77e34131411684ef05a1d6ad194dd71a8d5816643bc5b0af16dc0f", + "https://bcr.bazel.build/modules/xds/0.0.0-20240423-555b57e/source.json": "7227e1fcad55f3f3cab1a08691ecd753cb29cc6380a47bc650851be9f9ad6d20", + "https://bcr.bazel.build/modules/zlib/1.2.11/MODULE.bazel": "07b389abc85fdbca459b69e2ec656ae5622873af3f845e1c9d80fe179f3effa0", + "https://bcr.bazel.build/modules/zlib/1.2.12/MODULE.bazel": "3b1a8834ada2a883674be8cbd36ede1b6ec481477ada359cd2d3ddc562340b27", + "https://bcr.bazel.build/modules/zlib/1.2.13/MODULE.bazel": "aa6deb1b83c18ffecd940c4119aff9567cd0a671d7bba756741cb2ef043a29d5", + "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.1/MODULE.bazel": "6a9fe6e3fc865715a7be9823ce694ceb01e364c35f7a846bf0d2b34762bc066b", + "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/MODULE.bazel": "af322bc08976524477c79d1e45e241b6efbeb918c497e8840b8ab116802dda79", + "https://bcr.bazel.build/modules/zlib/1.3.1.bcr.3/source.json": "2be409ac3c7601245958cd4fcdff4288be79ed23bd690b4b951f500d54ee6e7d", + "https://bcr.bazel.build/modules/zlib/1.3.1/MODULE.bazel": "751c9940dcfe869f5f7274e1295422a34623555916eb98c174c1e945594bf198", + "https://bcr.bazel.build/modules/zlib/1.3/MODULE.bazel": "6a9c02f19a24dcedb05572b2381446e27c272cd383aed11d41d99da9e3167a72" + }, + "selectedYankedVersions": {}, + "moduleExtensions": { + "@@rules_java+//java:rules_java_deps.bzl%compatibility_proxy": { + "general": { + "bzlTransitiveDigest": "84xJEZ1jnXXwo8BXMprvBm++rRt4jsTu9liBxz0ivps=", + "usagesDigest": "jTQDdLDxsS43zuRmg1faAjIEPWdLAbDAowI1pInQSoo=", + "recordedFileInputs": {}, + "recordedDirentsInputs": {}, + "envVariables": {}, + "generatedRepoSpecs": { + "compatibility_proxy": { + "repoRuleId": "@@rules_java+//java:rules_java_deps.bzl%_compatibility_proxy_repo_rule", + "attributes": {} + } + }, + "recordedRepoMappingEntries": [ + [ + "rules_java+", + "bazel_tools", + "bazel_tools" + ] + ] + } + } + } +} diff --git a/WORKSPACE b/WORKSPACE index 4ee74ba..c8c6b36 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -13,24 +13,9 @@ # limitations under the License. workspace(name = "com_github_openconfig_bootz") -load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") - -### Bazel rules for many languages to compile PROTO into gRPC libraries -# Note: any version of this which is less than 4.3.0 requires bazel version 5.4.0 (set in .bazelversion file) -http_archive( - name = "rules_proto_grpc", - sha256 = "fb7fc7a3c19a92b2f15ed7c4ffb2983e956625c1436f57a3430b897ba9864059", - strip_prefix = "rules_proto_grpc-4.3.0", - urls = ["https://github.com/rules-proto-grpc/rules_proto_grpc/archive/4.3.0.tar.gz"], -) +load("//:bootz_deps.bzl", "bootz_deps") -# googleapis has not had a release since 2016 - take the master version as of 4-jan-23 -http_archive( - name = "com_google_googleapis", - sha256 = "9fc03150d86501d7da35eefa989d5553bdd77a95cfe4373cdafe8eee92f6bfb1", - strip_prefix = "googleapis-870a5ed7e141b4faf70e2a0858854e9b5bb18612", - urls = ["https://github.com/googleapis/googleapis/archive/870a5ed7e141b4faf70e2a0858854e9b5bb18612.tar.gz"], -) +bootz_deps() load("@com_google_googleapis//:repository_rules.bzl", "switched_rules_by_language") @@ -38,58 +23,41 @@ switched_rules_by_language( name = "com_google_googleapis_imports", cc = True, go = True, + grpc = True, ) -load( - "@rules_proto_grpc//:repositories.bzl", - "bazel_gazelle", - "io_bazel_rules_go", - "rules_proto_grpc_repos", - "rules_proto_grpc_toolchains", -) - -rules_proto_grpc_toolchains() - -rules_proto_grpc_repos() +load("@bazel_features//:deps.bzl", "bazel_features_deps") -load("@rules_proto//proto:repositories.bzl", "rules_proto_dependencies", "rules_proto_toolchains") - -rules_proto_dependencies() - -rules_proto_toolchains() - -### Golang -io_bazel_rules_go() +bazel_features_deps() +load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") load("@io_bazel_rules_go//go:deps.bzl", "go_register_toolchains", "go_rules_dependencies") +load("//:bootz_go_deps.bzl", "bootz_go_deps") -go_rules_dependencies() +# gazelle:repository_macro bootz_go_deps.bzl%bootz_go_deps +bootz_go_deps() -go_register_toolchains(go_version = "1.19") +go_rules_dependencies() -# gazelle:repo bazel_gazelle -bazel_gazelle() +go_register_toolchains(version = "1.23.4") -load("@bazel_gazelle//:deps.bzl", "gazelle_dependencies") +gazelle_dependencies() +load("@com_google_protobuf//:protobuf_deps.bzl", "protobuf_deps") -local_repository( - name = "local_repo_root", - path = "./", -) +protobuf_deps() -load("@rules_proto_grpc//go:repositories.bzl", rules_proto_grpc_go_repos = "go_repos") -load("//:deps.bzl", "go_dependencies") +load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") -# gazelle:repository_macro deps.bzl%go_dependencies -go_dependencies() +grpc_deps() -rules_proto_grpc_go_repos() +# Required by grpc +load("@build_bazel_apple_support//lib:repositories.bzl", "apple_support_dependencies") +load("@build_bazel_rules_apple//apple:repositories.bzl", "apple_rules_dependencies") +load("@rules_python//python:repositories.bzl", "py_repositories") -# Load gazelle_dependencies last, so that the newer version of org_golang_google_grpc is used. -# see https://github.com/rules-proto-grpc/rules_proto_grpc/issues/160 -gazelle_dependencies() +py_repositories() -load("@com_github_grpc_grpc//bazel:grpc_deps.bzl", "grpc_deps") +apple_rules_dependencies(ignore_version_differences = False) -grpc_deps() +apple_support_dependencies() diff --git a/WORKSPACE.bzlmod b/WORKSPACE.bzlmod new file mode 100644 index 0000000..e69de29 diff --git a/bazel/BUILD.bazel b/bazel/BUILD.bazel new file mode 100644 index 0000000..d712058 --- /dev/null +++ b/bazel/BUILD.bazel @@ -0,0 +1,18 @@ +# Copyright 2024 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. + +package( + default_visibility = ["//visibility:public"], + licenses = ["notice"], +) diff --git a/bazel/tools.go b/bazel/tools.go new file mode 100644 index 0000000..3d91a0b --- /dev/null +++ b/bazel/tools.go @@ -0,0 +1,24 @@ +// Copyright 2025 Google LLC +// +// Licensed under the Apache License, Version 2.0 (the "License"); +// you may not use this file except in compliance with the License. +// You may obtain a copy of the License at +// +// http://www.apache.org/licenses/LICENSE-2.0 +// +// Unless required by applicable law or agreed to in writing, software +// distributed under the License is distributed on an "AS IS" BASIS, +// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +// See the License for the specific language governing permissions and +// limitations under the License. + +//go:build tools + +// Package bazel contains imports to keep go.mod entries for packages that are +// referenced in BUILD files, but not in Go code. +package bazel + +import ( + _ "google.golang.org/grpc/cmd/protoc-gen-go-grpc" // protoc-gen-go-grpc + _ "google.golang.org/protobuf/cmd/protoc-gen-go" // protoc-gen-go +) diff --git a/bootz_deps.bzl b/bootz_deps.bzl new file mode 100644 index 0000000..4096e95 --- /dev/null +++ b/bootz_deps.bzl @@ -0,0 +1,98 @@ +# Copyright 2021 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +"""Dependencies to build bootz.""" + +load("@bazel_tools//tools/build_defs/repo:http.bzl", "http_archive") + +def bootz_deps(): + """Declare the third-party dependencies necessary to build bootz""" + if not native.existing_rule("bazel_features"): + http_archive( + name = "bazel_features", + sha256 = "af3d4fb1cf4f25942cb4a933b1ad93a0ea9fe9ee70c2af7f369fb72a67c266e5", + strip_prefix = "bazel_features-1.21.0", + url = "https://github.com/bazel-contrib/bazel_features/releases/download/v1.21.0/bazel_features-v1.21.0.tar.gz", + ) + if not native.existing_rule("bazel_gazelle"): + http_archive( + name = "bazel_gazelle", + sha256 = "aefbf2fc7c7616c9ed73aa3d51c77100724d5b3ce66cfa16406e8c13e87c8b52", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-gazelle/releases/download/v0.41.0/bazel-gazelle-v0.41.0.tar.gz", + "https://github.com/bazelbuild/bazel-gazelle/releases/download/v0.41.0/bazel-gazelle-v0.41.0.tar.gz", + ], + ) + if not native.existing_rule("com_github_grpc_grpc"): + http_archive( + name = "com_github_grpc_grpc", + url = "https://github.com/grpc/grpc/archive/refs/tags/v1.69.0.tar.gz", + strip_prefix = "grpc-1.69.0", + sha256 = "cd256d91781911d46a57506978b3979bfee45d5086a1b6668a3ae19c5e77f8dc", + ) + if not native.existing_rule("com_google_googleapis"): + http_archive( + name = "com_google_googleapis", + sha256 = "0513f0f40af63bd05dc789cacc334ab6cec27cc89db596557cb2dfe8919463e4", + strip_prefix = "googleapis-fe8ba054ad4f7eca946c2d14a63c3f07c0b586a0", + urls = ["https://github.com/googleapis/googleapis/archive/fe8ba054ad4f7eca946c2d14a63c3f07c0b586a0.tar.gz"], + ) + if not native.existing_rule("com_google_protobuf"): + http_archive( + name = "com_google_protobuf", + url = "https://github.com/protocolbuffers/protobuf/archive/refs/tags/v29.3.zip", + strip_prefix = "protobuf-29.3", + sha256 = "85803e01f347141e16a2f770213a496f808fff9f0138c7c0e0c9dfa708b0da92", + repo_mapping = { + "@proto_bazel_features": "@bazel_features", + }, + ) + if not native.existing_rule("bazel_skylib"): + http_archive( + name = "bazel_skylib", + urls = [ + "https://mirror.bazel.build/github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz", + "https://github.com/bazelbuild/bazel-skylib/releases/download/1.7.1/bazel-skylib-1.7.1.tar.gz", + ], + sha256 = "bc283cdfcd526a52c3201279cda4bc298652efa898b10b4db0837dc51652756f", + ) + if not native.existing_rule("io_bazel_rules_go"): + http_archive( + name = "io_bazel_rules_go", + sha256 = "0936c9bc3c4321ee372cb8f66dd972d368cb940ed01a9ba9fd7debcf0093f09b", + urls = [ + "https://github.com/bazelbuild/rules_go/releases/download/v0.51.0/rules_go-v0.51.0.zip", + ], + ) + if not native.existing_rule("rules_proto"): + http_archive( + name = "rules_proto", + sha256 = "0e5c64a2599a6e26c6a03d6162242d231ecc0de219534c38cb4402171def21e8", + strip_prefix = "rules_proto-7.0.2", + url = "https://github.com/bazelbuild/rules_proto/releases/download/7.0.2/rules_proto-7.0.2.tar.gz", + ) + if not native.existing_rule("openconfig_gnmi"): + http_archive( + name = "openconfig_gnmi", + sha256 = "5930b29b7f0b5aeec4502d5b2b1b82bb97c218b2752422cfe9a0462e39aa8370", + strip_prefix = "gnmi-66ccc5027ea9b69376978a6eeb079ba5907249b7", + url = "https://github.com/bstoll/gnmi/archive/66ccc5027ea9b69376978a6eeb079ba5907249b7.zip", + ) + if not native.existing_rule("openconfig_gnsi"): + http_archive( + name = "openconfig_gnsi", + sha256 = "9752a0fdbbc98ef7cbeb40a89074ad035b127f8f939204427a407a3569e5157e", + strip_prefix = "gnsi-57ecb02511c1541195a212b571ddde05bc635a0a", + url = "https://github.com/bstoll/gnsi/archive/57ecb02511c1541195a212b571ddde05bc635a0a.zip", + ) \ No newline at end of file diff --git a/bootz_go_deps.bzl b/bootz_go_deps.bzl new file mode 100644 index 0000000..c2e3f92 --- /dev/null +++ b/bootz_go_deps.bzl @@ -0,0 +1,1059 @@ +# Copyright 2025 Google LLC +# +# Licensed under the Apache License, Version 2.0 (the "License"); +# you may not use this file except in compliance with the License. +# You may obtain a copy of the License at +# +# https://www.apache.org/licenses/LICENSE-2.0 +# +# Unless required by applicable law or agreed to in writing, software +# distributed under the License is distributed on an "AS IS" BASIS, +# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. +# See the License for the specific language governing permissions and +# limitations under the License. +# +"""Go dependencies to build bootz.""" + +load("@bazel_gazelle//:deps.bzl", "go_repository") + +def bootz_go_deps(): + """Declare the third-party Go dependencies necessary to build bootz""" + go_repository( + name = "co_honnef_go_tools", + importpath = "honnef.co/go/tools", + sum = "h1:UoveltGrhghAA7ePc+e+QYDHXrBps2PqFZiHkGR/xK8=", + version = "v0.0.1-2020.1.4", + ) + go_repository( + name = "com_github_armon_go_metrics", + importpath = "github.com/armon/go-metrics", + sum = "h1:yCQqn7dwca4ITXb+CbubHmedzaQYHhNhrEXLYUeEe8Q=", + version = "v0.4.0", + ) + go_repository( + name = "com_github_bits_and_blooms_bitset", + importpath = "github.com/bits-and-blooms/bitset", + sum = "h1:FD+XqgOZDUxxZ8hzoBFuV9+cGWY9CslN6d5MS5JVb4c=", + version = "v1.8.0", + ) + go_repository( + name = "com_github_burntsushi_toml", + importpath = "github.com/BurntSushi/toml", + sum = "h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=", + version = "v0.3.1", + ) + go_repository( + name = "com_github_burntsushi_xgb", + importpath = "github.com/BurntSushi/xgb", + sum = "h1:1BDTz0u9nC3//pOCMdNH+CiXJVYJh5UQNCOBG7jbELc=", + version = "v0.0.0-20160522181843-27f122750802", + ) + go_repository( + name = "com_github_cenkalti_backoff_v4", + importpath = "github.com/cenkalti/backoff/v4", + sum = "h1:G2HAfAmvm/GcKan2oOQpBXOd2tT2G57ZnZGWa1PxPBQ=", + version = "v4.1.1", + ) + go_repository( + name = "com_github_census_instrumentation_opencensus_proto", + importpath = "github.com/census-instrumentation/opencensus-proto", + sum = "h1:iKLQ0xPNFxR/2hzXZMrBo8f1j86j5WHzznCCQxV/b8g=", + version = "v0.4.1", + ) + go_repository( + name = "com_github_cespare_xxhash_v2", + importpath = "github.com/cespare/xxhash/v2", + sum = "h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=", + version = "v2.3.0", + ) + go_repository( + name = "com_github_chappjc_logrus_prefix", + importpath = "github.com/chappjc/logrus-prefix", + sum = "h1:aZTKxMminKeQWHtzJBbV8TttfTxzdJ+7iEJFE6FmUzg=", + version = "v0.0.0-20180227015900-3a1d64819adb", + ) + go_repository( + name = "com_github_chzyer_logex", + importpath = "github.com/chzyer/logex", + sum = "h1:Swpa1K6QvQznwJRcfTfQJmTE72DqScAa40E+fbHEXEE=", + version = "v1.1.10", + ) + go_repository( + name = "com_github_chzyer_readline", + importpath = "github.com/chzyer/readline", + sum = "h1:fY5BOSpyZCqRo5OhCuC+XN+r/bBCmeuuJtjz+bCNIf8=", + version = "v0.0.0-20180603132655-2972be24d48e", + ) + go_repository( + name = "com_github_chzyer_test", + importpath = "github.com/chzyer/test", + sum = "h1:q763qf9huN11kDQavWsoZXJNW3xEE4JJyHa5Q25/sd8=", + version = "v0.0.0-20180213035817-a1ea475d72b1", + ) + go_repository( + name = "com_github_client9_misspell", + importpath = "github.com/client9/misspell", + sum = "h1:ta993UF76GwbvJcIo3Y68y/M3WxlpEHPWIGDkJYwzJI=", + version = "v0.3.4", + ) + go_repository( + name = "com_github_cncf_udpa_go", + importpath = "github.com/cncf/udpa/go", + sum = "h1:cqQfy1jclcSy/FwLjemeg3SR1yaINm74aQyupQ0Bl8M=", + version = "v0.0.0-20201120205902-5459f2c99403", + ) + go_repository( + name = "com_github_cncf_xds_go", + importpath = "github.com/cncf/xds/go", + sum = "h1:QVw89YDxXxEe+l8gU8ETbOasdwEV+avkR75ZzsVV9WI=", + version = "v0.0.0-20240905190251-b4127c9b8d78", + ) + go_repository( + name = "com_github_coredhcp_coredhcp", + importpath = "github.com/coredhcp/coredhcp", + sum = "h1:8bGxpjqPoic463Lr0Uqnnz7P/xSZCPKDkxkjeywS79k=", + version = "v0.0.0-20230808195049-3e32ddb5ac86", + ) + go_repository( + name = "com_github_coreos_go_semver", + importpath = "github.com/coreos/go-semver", + sum = "h1:wkHLiw0WNATZnSG7epLsujiMCgPAc9xhjJ4tgnAxmfM=", + version = "v0.3.0", + ) + go_repository( + name = "com_github_coreos_go_systemd_v22", + importpath = "github.com/coreos/go-systemd/v22", + sum = "h1:D9/bQk5vlXQFZ6Kwuu6zaiXJ9oTPe68++AzAJc1DzSI=", + version = "v22.3.2", + ) + go_repository( + name = "com_github_davecgh_go_spew", + importpath = "github.com/davecgh/go-spew", + sum = "h1:vj9j/u1bqnvCEfJOwUhtlOARqs3+rkHYY13jYWTU97c=", + version = "v1.1.1", + ) + go_repository( + name = "com_github_envoyproxy_go_control_plane", + importpath = "github.com/envoyproxy/go-control-plane", + sum = "h1:vPfJZCkob6yTMEgS+0TwfTUfbHjfy/6vOJ8hUWX/uXE=", + version = "v0.13.1", + ) + go_repository( + name = "com_github_envoyproxy_protoc_gen_validate", + importpath = "github.com/envoyproxy/protoc-gen-validate", + sum = "h1:tntQDh69XqOCOZsDz0lVJQez/2L6Uu2PdjCQwWCJ3bM=", + version = "v1.1.0", + ) + go_repository( + name = "com_github_fanliao_go_promise", + importpath = "github.com/fanliao/go-promise", + sum = "h1:0eU/faU2oDIB2BkQVM02hgRLJjGzzUuRf19HUhp0394=", + version = "v0.0.0-20141029170127-1890db352a72", + ) + go_repository( + name = "com_github_fatih_color", + importpath = "github.com/fatih/color", + sum = "h1:8LOYc1KYPPmyKMuN8QV2DNRWNbLo6LZ0iLs8+mlH53w=", + version = "v1.13.0", + ) + go_repository( + name = "com_github_frankban_quicktest", + importpath = "github.com/frankban/quicktest", + sum = "h1:g2rn0vABPOOXmZUj+vbmUp0lPoXEMuhTpIluN0XL9UY=", + version = "v1.14.4", + ) + go_repository( + name = "com_github_fsnotify_fsnotify", + importpath = "github.com/fsnotify/fsnotify", + sum = "h1:n+5WquG0fcWoWp6xPWfHdbskMCQaFnG6PfBrh1Ky4HY=", + version = "v1.6.0", + ) + go_repository( + name = "com_github_go_gl_glfw", + importpath = "github.com/go-gl/glfw", + sum = "h1:QbL/5oDUmRBzO9/Z7Seo6zf912W/a6Sr4Eu0G/3Jho0=", + version = "v0.0.0-20190409004039-e6da0acd62b1", + ) + go_repository( + name = "com_github_go_gl_glfw_v3_3_glfw", + importpath = "github.com/go-gl/glfw/v3.3/glfw", + sum = "h1:WtGNWLvXpe6ZudgnXrq0barxBImvnnJoMEhXAzcbM0I=", + version = "v0.0.0-20200222043503-6f7a984d4dc4", + ) + go_repository( + name = "com_github_go_logr_logr", + importpath = "github.com/go-logr/logr", + sum = "h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=", + version = "v1.4.2", + ) + go_repository( + name = "com_github_go_logr_stdr", + importpath = "github.com/go-logr/stdr", + sum = "h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=", + version = "v1.2.2", + ) + go_repository( + name = "com_github_gogo_protobuf", + importpath = "github.com/gogo/protobuf", + sum = "h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=", + version = "v1.3.2", + ) + go_repository( + name = "com_github_golang_glog", + importpath = "github.com/golang/glog", + sum = "h1:CNNw5U8lSiiBk7druxtSHHTsRWcxKoac6kZKm2peBBc=", + version = "v1.2.4", + ) + go_repository( + name = "com_github_golang_groupcache", + importpath = "github.com/golang/groupcache", + sum = "h1:oI5xCqsCo564l8iNU+DwB5epxmsaqB+rhGL0m5jtYqE=", + version = "v0.0.0-20210331224755-41bb18bfe9da", + ) + go_repository( + name = "com_github_golang_mock", + importpath = "github.com/golang/mock", + sum = "h1:l75CXGRSwbaYNpl/Z2X1XIIAMSCquvXgpVZDhwEIJsc=", + version = "v1.4.4", + ) + go_repository( + name = "com_github_golang_protobuf", + importpath = "github.com/golang/protobuf", + sum = "h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek=", + version = "v1.5.4", + ) + go_repository( + name = "com_github_google_btree", + importpath = "github.com/google/btree", + sum = "h1:0udJVsspx3VBr5FwtLhQQtuAsVc79tTq0ocGIPAU6qo=", + version = "v1.0.0", + ) + go_repository( + name = "com_github_google_go_cmp", + importpath = "github.com/google/go-cmp", + sum = "h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI=", + version = "v0.6.0", + ) + go_repository( + name = "com_github_google_gopacket", + importpath = "github.com/google/gopacket", + sum = "h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8=", + version = "v1.1.19", + ) + go_repository( + name = "com_github_google_martian", + importpath = "github.com/google/martian", + sum = "h1:/CP5g8u/VJHijgedC/Legn3BAbAaWPgecwXBIDzw5no=", + version = "v2.1.0+incompatible", + ) + go_repository( + name = "com_github_google_martian_v3", + importpath = "github.com/google/martian/v3", + sum = "h1:wCKgOCHuUEVfsaQLpPSJb7VdYCdTVZQAuOdYm1yc/60=", + version = "v3.1.0", + ) + go_repository( + name = "com_github_google_pprof", + importpath = "github.com/google/pprof", + sum = "h1:LR89qFljJ48s990kEKGsk213yIJDPI4205OKOzbURK8=", + version = "v0.0.0-20201218002935-b9804c9f04c2", + ) + go_repository( + name = "com_github_google_renameio", + importpath = "github.com/google/renameio", + sum = "h1:GOZbcHa3HfsPKPlmyPyN2KEohoMXOhdMbHrvbpl2QaA=", + version = "v0.1.0", + ) + go_repository( + name = "com_github_google_s2a_go", + importpath = "github.com/google/s2a-go", + sum = "h1:FAgZmpLl/SXurPEZyCMPBIiiYeTbqfjlbdnCNTAkbGE=", + version = "v0.1.3", + ) + go_repository( + name = "com_github_google_uuid", + importpath = "github.com/google/uuid", + sum = "h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=", + version = "v1.6.0", + ) + go_repository( + name = "com_github_googleapis_enterprise_certificate_proxy", + importpath = "github.com/googleapis/enterprise-certificate-proxy", + sum = "h1:yk9/cqRKtT9wXZSsRH9aurXEpJX+U6FLtpYTdC3R06k=", + version = "v0.2.3", + ) + go_repository( + name = "com_github_googleapis_gax_go_v2", + importpath = "github.com/googleapis/gax-go/v2", + sum = "h1:UBtEZqx1bjXtOQ5BVTkuYghXrr3N4V123VKJK67vJZc=", + version = "v2.8.0", + ) + go_repository( + name = "com_github_googleapis_google_cloud_go_testing", + importpath = "github.com/googleapis/google-cloud-go-testing", + sum = "h1:tlyzajkF3030q6M8SvmJSemC9DTHL/xaMa18b65+JM4=", + version = "v0.0.0-20200911160855-bcd43fbb19e8", + ) + go_repository( + name = "com_github_googlecloudplatform_opentelemetry_operations_go_detectors_gcp", + importpath = "github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp", + sum = "h1:cZpsGsWTIFKymTA0je7IIvi1O7Es7apb9CF3EQlOcfE=", + version = "v1.24.2", + ) + go_repository( + name = "com_github_h_fam_errdiff", + importpath = "github.com/h-fam/errdiff", + sum = "h1:rPsW4ob2fMOIulwTEoZXaaUIuud7XUudw5SLKTZj3Ss=", + version = "v1.0.2", + ) + go_repository( + name = "com_github_hashicorp_consul_api", + importpath = "github.com/hashicorp/consul/api", + sum = "h1:9IHTjNVSZ7MIwjlW3N3a7iGiykCMDpxZu8jsxFJh0yc=", + version = "v1.20.0", + ) + go_repository( + name = "com_github_hashicorp_go_cleanhttp", + importpath = "github.com/hashicorp/go-cleanhttp", + sum = "h1:035FKYIWjmULyFRBKPs8TBQoi0x6d9G4xc9neXJWAZQ=", + version = "v0.5.2", + ) + go_repository( + name = "com_github_hashicorp_go_hclog", + importpath = "github.com/hashicorp/go-hclog", + sum = "h1:La19f8d7WIlm4ogzNHB0JGqs5AUDAZ2UfCY4sJXcJdM=", + version = "v1.2.0", + ) + go_repository( + name = "com_github_hashicorp_go_immutable_radix", + importpath = "github.com/hashicorp/go-immutable-radix", + sum = "h1:DKHmCUm2hRBK510BaiZlwvpD40f8bJFeZnpfm2KLowc=", + version = "v1.3.1", + ) + go_repository( + name = "com_github_hashicorp_go_rootcerts", + importpath = "github.com/hashicorp/go-rootcerts", + sum = "h1:jzhAVGtqPKbwpyCPELlgNWhE1znq+qwJtW5Oi2viEzc=", + version = "v1.0.2", + ) + go_repository( + name = "com_github_hashicorp_golang_lru", + importpath = "github.com/hashicorp/golang-lru", + sum = "h1:YDjusn29QI/Das2iO9M0BHnIbxPeyuCHsjMW+lJfyTc=", + version = "v0.5.4", + ) + go_repository( + name = "com_github_hashicorp_hcl", + importpath = "github.com/hashicorp/hcl", + sum = "h1:0Anlzjpi4vEasTeNFn2mLJgTSwt0+6sfsiTG8qcWGx4=", + version = "v1.0.0", + ) + go_repository( + name = "com_github_hashicorp_serf", + importpath = "github.com/hashicorp/serf", + sum = "h1:Z1H2J60yRKvfDYAOZLd2MU0ND4AH/WDz7xYHDWQsIPY=", + version = "v0.10.1", + ) + go_repository( + name = "com_github_hugelgupf_socketpair", + importpath = "github.com/hugelgupf/socketpair", + sum = "h1:/jC7qQFrv8CrSJVmaolDVOxTfS9kc36uB6H40kdbQq8=", + version = "v0.0.0-20190730060125-05d35a94e714", + ) + go_repository( + name = "com_github_ianlancetaylor_demangle", + importpath = "github.com/ianlancetaylor/demangle", + sum = "h1:mV02weKRL81bEnm8A0HT1/CAelMQDBuQIfLw8n+d6xI=", + version = "v0.0.0-20200824232613-28f6c0f3b639", + ) + go_repository( + name = "com_github_insomniacslk_dhcp", + importpath = "github.com/insomniacslk/dhcp", + sum = "h1:S33o3djA1nPRd+d/bf7jbbXytXuK/EoXow7+aa76grQ=", + version = "v0.0.0-20230908212754-65c27093e38a", + ) + go_repository( + name = "com_github_josharian_native", + importpath = "github.com/josharian/native", + sum = "h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA=", + version = "v1.1.0", + ) + go_repository( + name = "com_github_jsimonetti_rtnetlink", + importpath = "github.com/jsimonetti/rtnetlink", + sum = "h1:7cpGGTQO6+OuYQWkueqeXuErSjs1NZtpALpv1x7Mq4g=", + version = "v0.0.0-20201110080708-d2c240429e6c", + ) + go_repository( + name = "com_github_json_iterator_go", + importpath = "github.com/json-iterator/go", + sum = "h1:PV8peI4a0ysnczrg+LtxykD8LfKY9ML6u2jnxaEnrnM=", + version = "v1.1.12", + ) + go_repository( + name = "com_github_jstemmer_go_junit_report", + importpath = "github.com/jstemmer/go-junit-report", + sum = "h1:6QPYqodiu3GuPL+7mfx+NwDdp2eTkp9IfEUpgAwUN0o=", + version = "v0.9.1", + ) + go_repository( + name = "com_github_kisielk_gotool", + importpath = "github.com/kisielk/gotool", + sum = "h1:AV2c/EiW3KqPNT9ZKl07ehoAGi4C5/01Cfbblndcapg=", + version = "v1.0.0", + ) + go_repository( + name = "com_github_kr_fs", + importpath = "github.com/kr/fs", + sum = "h1:Jskdu9ieNAYnjxsi0LbQp1ulIKZV1LAFgK1tWhpZgl8=", + version = "v0.1.0", + ) + go_repository( + name = "com_github_kr_pretty", + importpath = "github.com/kr/pretty", + sum = "h1:flRD4NNwYAUpkphVc1HcthR4KEIFJ65n8Mw5qdRn3LE=", + version = "v0.3.1", + ) + go_repository( + name = "com_github_kr_pty", + importpath = "github.com/kr/pty", + sum = "h1:VkoXIwSboBpnk99O/KFauAEILuNHv5DVFKZMBN/gUgw=", + version = "v1.1.1", + ) + go_repository( + name = "com_github_kr_text", + importpath = "github.com/kr/text", + sum = "h1:5Nx0Ya0ZqY2ygV366QzturHI13Jq95ApcVaJBhpS+AY=", + version = "v0.2.0", + ) + go_repository( + name = "com_github_kylelemons_godebug", + importpath = "github.com/kylelemons/godebug", + sum = "h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=", + version = "v1.1.0", + ) + go_repository( + name = "com_github_magiconair_properties", + importpath = "github.com/magiconair/properties", + sum = "h1:IeQXZAiQcpL9mgcAe1Nu6cX9LLw6ExEHKjN0VQdvPDY=", + version = "v1.8.7", + ) + go_repository( + name = "com_github_mattn_go_colorable", + importpath = "github.com/mattn/go-colorable", + sum = "h1:fFA4WZxdEF4tXPZVKMLwD8oUnCTTo08duU7wxecdEvA=", + version = "v0.1.13", + ) + go_repository( + name = "com_github_mattn_go_isatty", + importpath = "github.com/mattn/go-isatty", + sum = "h1:JITubQf0MOLdlGRuRq+jtsDlekdYPia9ZFsB8h/APPA=", + version = "v0.0.19", + ) + go_repository( + name = "com_github_mdlayher_netlink", + importpath = "github.com/mdlayher/netlink", + sum = "h1:VqG+Voq9V4uZ+04vjIrcSCWDpf91B1xxbP4QBUmUJE8=", + version = "v1.1.1", + ) + go_repository( + name = "com_github_mdlayher_packet", + importpath = "github.com/mdlayher/packet", + sum = "h1:7Fv4OEMYqPl7//uBm04VgPpnSNi8fbBZznppgh6WMr8=", + version = "v1.1.1", + ) + go_repository( + name = "com_github_mdlayher_socket", + importpath = "github.com/mdlayher/socket", + sum = "h1:280wsy40IC9M9q1uPGcLBwXpcTQDtoGwVt+BNoITxIw=", + version = "v0.4.0", + ) + go_repository( + name = "com_github_mgutz_ansi", + importpath = "github.com/mgutz/ansi", + sum = "h1:5PJl274Y63IEHC+7izoQE9x6ikvDFZS2mDVS3drnohI=", + version = "v0.0.0-20200706080929-d51e80ef957d", + ) + go_repository( + name = "com_github_mitchellh_go_homedir", + importpath = "github.com/mitchellh/go-homedir", + sum = "h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG+4E0Y=", + version = "v1.1.0", + ) + go_repository( + name = "com_github_mitchellh_go_wordwrap", + importpath = "github.com/mitchellh/go-wordwrap", + sum = "h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0=", + version = "v1.0.1", + ) + go_repository( + name = "com_github_mitchellh_mapstructure", + importpath = "github.com/mitchellh/mapstructure", + sum = "h1:jeMsZIYE/09sWLaz43PL7Gy6RuMjD2eJVyuac5Z2hdY=", + version = "v1.5.0", + ) + go_repository( + name = "com_github_modern_go_concurrent", + importpath = "github.com/modern-go/concurrent", + sum = "h1:TRLaZ9cD/w8PVh93nsPXa1VrQ6jlwL5oN8l14QlcNfg=", + version = "v0.0.0-20180306012644-bacd9c7ef1dd", + ) + go_repository( + name = "com_github_modern_go_reflect2", + importpath = "github.com/modern-go/reflect2", + sum = "h1:xBagoLtFs94CBntxluKeaWgTMpvLxC4ur3nMaC9Gz0M=", + version = "v1.0.2", + ) + go_repository( + name = "com_github_nxadm_tail", + importpath = "github.com/nxadm/tail", + sum = "h1:nPr65rt6Y5JFSKQO7qToXr7pePgD6Gwiw05lkbyAQTE=", + version = "v1.4.8", + ) + go_repository( + name = "com_github_onsi_ginkgo", + importpath = "github.com/onsi/ginkgo", + sum = "h1:2mOpI4JVVPBN+WQRa0WKH2eXR+Ey+uK4n7Zj0aYpIQA=", + version = "v1.14.0", + ) + go_repository( + name = "com_github_onsi_gomega", + importpath = "github.com/onsi/gomega", + sum = "h1:o0+MgICZLuZ7xjH7Vx6zS/zcu93/BEp1VwkIW1mEXCE=", + version = "v1.10.1", + ) + go_repository( + name = "com_github_openconfig_gnmi", + importpath = "github.com/openconfig/gnmi", + sum = "h1:kQEZ/9ek3Vp2Y5IVuV2L/ba8/77TgjdXg505QXvYmg8=", + version = "v0.10.0", + ) + go_repository( + name = "com_github_openconfig_gnoi", + importpath = "github.com/openconfig/gnoi", + sum = "h1:jbYXRMNmmvA8ZFv2FBLrYoxA1MFSui4tEui+8LAWyVc=", + version = "v0.4.0", + ) + go_repository( + name = "com_github_openconfig_gnsi", + importpath = "github.com/openconfig/gnsi", + sum = "h1:V6jxHwBGqu0xUvVNFIeY27kAZ/VOEuETehz6ugCgo+s=", + version = "v1.4.3", + ) + go_repository( + name = "com_github_openconfig_goyang", + importpath = "github.com/openconfig/goyang", + sum = "h1:5MyIz4bN4vpH6aHDN339bkWXAjTkhg1ZKMhR4aIi5Rk=", + version = "v0.0.0-20200115183954-d0a48929f0ea", + ) + go_repository( + name = "com_github_openconfig_grpctunnel", + importpath = "github.com/openconfig/grpctunnel", + sum = "h1:t6SvvdfWCMlw0XPlsdxO8EgO+q/fXnTevDjdYREKFwU=", + version = "v0.0.0-20220819142823-6f5422b8ca70", + ) + go_repository( + name = "com_github_openconfig_ygot", + importpath = "github.com/openconfig/ygot", + sum = "h1:kJJFPBrczC6TDnz/HMlFTJEdW2CuyUftV13XveIukg0=", + version = "v0.6.0", + ) + go_repository( + name = "com_github_pelletier_go_toml_v2", + importpath = "github.com/pelletier/go-toml/v2", + sum = "h1:uH2qQXheeefCCkuBBSLi7jCiSmj3VRh2+Goq2N7Xxu0=", + version = "v2.0.9", + ) + go_repository( + name = "com_github_pierrec_lz4_v4", + importpath = "github.com/pierrec/lz4/v4", + sum = "h1:xaKrnTkyoqfh1YItXl56+6KJNVYWlEEPuAQW9xsplYQ=", + version = "v4.1.18", + ) + go_repository( + name = "com_github_pkg_errors", + importpath = "github.com/pkg/errors", + sum = "h1:FEBLx1zS214owpjy7qsBeixbURkuhQAwrK5UwLGTwt4=", + version = "v0.9.1", + ) + go_repository( + name = "com_github_pkg_sftp", + importpath = "github.com/pkg/sftp", + sum = "h1:I2qBYMChEhIjOgazfJmV3/mZM256btk6wkCDRmW7JYs=", + version = "v1.13.1", + ) + go_repository( + name = "com_github_planetscale_vtprotobuf", + importpath = "github.com/planetscale/vtprotobuf", + sum = "h1:GFCKgmp0tecUJ0sJuv4pzYCqS9+RGSn52M3FUwPs+uo=", + version = "v0.6.1-0.20240319094008-0393e58bdf10", + ) + go_repository( + name = "com_github_pmezard_go_difflib", + importpath = "github.com/pmezard/go-difflib", + sum = "h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=", + version = "v1.0.0", + ) + go_repository( + name = "com_github_prometheus_client_model", + importpath = "github.com/prometheus/client_model", + sum = "h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM=", + version = "v0.0.0-20190812154241-14fe0d1b01d4", + ) + go_repository( + name = "com_github_protocolbuffers_txtpbfmt", + importpath = "github.com/protocolbuffers/txtpbfmt", + sum = "h1:AKJY61V2SQtJ2a2PdeswKk0NM1qF77X+julRNYRxPOk=", + version = "v0.0.0-20220608084003-fc78c767cd6a", + ) + go_repository( + name = "com_github_rifflock_lfshook", + importpath = "github.com/rifflock/lfshook", + sum = "h1:mZHayPoR0lNmnHyvtYjDeq0zlVHn9K/ZXoy17ylucdo=", + version = "v0.0.0-20180920164130-b9218ef580f5", + ) + go_repository( + name = "com_github_rogpeppe_go_internal", + importpath = "github.com/rogpeppe/go-internal", + sum = "h1:73kH8U+JUqXU8lRuOHeVHaa/SZPifC7BkcraZVejAe8=", + version = "v1.9.0", + ) + go_repository( + name = "com_github_sagikazarmark_crypt", + importpath = "github.com/sagikazarmark/crypt", + sum = "h1:96E1qrToLBU6fGzo+PRRz7KGOc9FkYFiPnR3/zf8Smg=", + version = "v0.10.0", + ) + go_repository( + name = "com_github_sirupsen_logrus", + importpath = "github.com/sirupsen/logrus", + sum = "h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=", + version = "v1.9.3", + ) + go_repository( + name = "com_github_smartystreets_goconvey", + importpath = "github.com/smartystreets/goconvey", + sum = "h1:fv0U8FUIMPNf1L9lnHLvLhgicrIVChEkdzIKYqbNC9s=", + version = "v1.6.4", + ) + go_repository( + name = "com_github_spf13_afero", + importpath = "github.com/spf13/afero", + sum = "h1:stMpOSZFs//0Lv29HduCmli3GUfpFoF3Y1Q/aXj/wVM=", + version = "v1.9.5", + ) + go_repository( + name = "com_github_spf13_cast", + importpath = "github.com/spf13/cast", + sum = "h1:R+kOtfhWQE6TVQzY+4D7wJLBgkdVasCEFxSUBYBYIlA=", + version = "v1.5.1", + ) + go_repository( + name = "com_github_spf13_jwalterweatherman", + importpath = "github.com/spf13/jwalterweatherman", + sum = "h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=", + version = "v1.1.0", + ) + go_repository( + name = "com_github_spf13_pflag", + importpath = "github.com/spf13/pflag", + sum = "h1:zqmyTlQyufRC65JnImJ6H1Sf7BDj8bG31EV919NVEQc=", + version = "v1.0.6-0.20201009195203-85dd5c8bc61c", + ) + go_repository( + name = "com_github_spf13_viper", + importpath = "github.com/spf13/viper", + sum = "h1:rGGH0XDZhdUOryiDWjmIvUSWpbNqisK8Wk0Vyefw8hc=", + version = "v1.16.0", + ) + go_repository( + name = "com_github_stretchr_objx", + importpath = "github.com/stretchr/objx", + sum = "h1:1zr/of2m5FGMsad5YfcqgdqdWrIhu+EBEJRhR1U7z/c=", + version = "v0.5.0", + ) + go_repository( + name = "com_github_stretchr_testify", + importpath = "github.com/stretchr/testify", + sum = "h1:CcVxjf3Q8PM0mHUKJCdn+eZZtm5yQwehR5yeSVQQcUk=", + version = "v1.8.4", + ) + go_repository( + name = "com_github_subosito_gotenv", + importpath = "github.com/subosito/gotenv", + sum = "h1:X1TuBLAMDFbaTAChgCBLu3DU3UPyELpnF2jjJ2cz/S8=", + version = "v1.4.2", + ) + go_repository( + name = "com_github_u_root_uio", + importpath = "github.com/u-root/uio", + sum = "h1:YcojQL98T/OO+rybuzn2+5KrD5dBwXIvYBvQ2cD3Avg=", + version = "v0.0.0-20230305220412-3e8cd9d6bf63", + ) + go_repository( + name = "com_github_vishvananda_netns", + importpath = "github.com/vishvananda/netns", + sum = "h1:p4VB7kIXpOQvVn1ZaTIVp+3vuYAXFe3OJEvjbUYJLaA=", + version = "v0.0.0-20210104183010-2eb08e3e575f", + ) + go_repository( + name = "com_github_x_cray_logrus_prefixed_formatter", + importpath = "github.com/x-cray/logrus-prefixed-formatter", + sum = "h1:00txxvfBM9muc0jiLIEAkAcIMJzfthRT6usrui8uGmg=", + version = "v0.5.2", + ) + go_repository( + name = "com_github_yuin_goldmark", + importpath = "github.com/yuin/goldmark", + sum = "h1:ruQGxdhGHe7FWOJPT0mKs5+pD2Xs1Bm/kdGlHO04FmM=", + version = "v1.2.1", + ) + go_repository( + name = "com_google_cloud_go", + importpath = "cloud.google.com/go", + sum = "h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys=", + version = "v0.110.0", + ) + go_repository( + name = "com_google_cloud_go_bigquery", + importpath = "cloud.google.com/go/bigquery", + sum = "h1:PQcPefKFdaIzjQFbiyOgAqyx8q5djaE7x9Sqe712DPA=", + version = "v1.8.0", + ) + go_repository( + name = "com_google_cloud_go_compute", + importpath = "cloud.google.com/go/compute", + sum = "h1:+9zda3WGgW1ZSTlVppLCYFIr48Pa35q1uG2N1itbCEQ=", + version = "v1.19.0", + ) + go_repository( + name = "com_google_cloud_go_compute_metadata", + importpath = "cloud.google.com/go/compute/metadata", + sum = "h1:UxK4uu/Tn+I3p2dYWTfiX4wva7aYlKixAHn3fyqngqo=", + version = "v0.5.2", + ) + go_repository( + name = "com_google_cloud_go_datastore", + importpath = "cloud.google.com/go/datastore", + sum = "h1:/May9ojXjRkPBNVrq+oWLqmWCkr4OU5uRY29bu0mRyQ=", + version = "v1.1.0", + ) + go_repository( + name = "com_google_cloud_go_firestore", + importpath = "cloud.google.com/go/firestore", + sum = "h1:IBlRyxgGySXu5VuW0RgGFlTtLukSnNkpDiEOMkQkmpA=", + version = "v1.9.0", + ) + go_repository( + name = "com_google_cloud_go_longrunning", + importpath = "cloud.google.com/go/longrunning", + sum = "h1:v+yFJOfKC3yZdY6ZUI933pIYdhyhV8S3NpWrXWmg7jM=", + version = "v0.4.1", + ) + go_repository( + name = "com_google_cloud_go_pubsub", + importpath = "cloud.google.com/go/pubsub", + sum = "h1:ukjixP1wl0LpnZ6LWtZJ0mX5tBmjp1f8Sqer8Z2OMUU=", + version = "v1.3.1", + ) + go_repository( + name = "com_google_cloud_go_storage", + importpath = "cloud.google.com/go/storage", + sum = "h1:6RRlFMv1omScs6iq2hfE3IvgE+l6RfJPampq8UZc5TU=", + version = "v1.14.0", + ) + go_repository( + name = "com_shuralyov_dmitri_gpu_mtl", + importpath = "dmitri.shuralyov.com/gpu/mtl", + sum = "h1:VpgP7xuJadIUuKccphEpTJnWhS2jkQyMt6Y7pJCD7fY=", + version = "v0.0.0-20190408044501-666a987793e9", + ) + go_repository( + name = "dev_cel_expr", + importpath = "cel.dev/expr", + sum = "h1:RwRhoH17VhAu9U5CMvMhH1PDVgf0tuz9FT+24AfMLfU=", + version = "v0.16.2", + ) + go_repository( + name = "in_gopkg_check_v1", + importpath = "gopkg.in/check.v1", + sum = "h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY=", + version = "v1.0.0-20180628173108-788fd7840127", + ) + go_repository( + name = "in_gopkg_errgo_v2", + importpath = "gopkg.in/errgo.v2", + sum = "h1:0vLT13EuvQ0hNvakwLuFZ/jYrLp5F3kcWHXdRggjCE8=", + version = "v2.1.0", + ) + go_repository( + name = "in_gopkg_ini_v1", + importpath = "gopkg.in/ini.v1", + sum = "h1:Dgnx+6+nfE+IfzjUEISNeydPJh9AXNNsWbGP9KzCsOA=", + version = "v1.67.0", + ) + go_repository( + name = "in_gopkg_tomb_v1", + importpath = "gopkg.in/tomb.v1", + sum = "h1:uRGJdciOHaEIrze2W8Q3AKkepLTh2hOroT7a+7czfdQ=", + version = "v1.0.0-20141024135613-dd632973f1e7", + ) + go_repository( + name = "in_gopkg_yaml_v2", + importpath = "gopkg.in/yaml.v2", + sum = "h1:D8xgwECY7CYvx+Y2n4sBz93Jn9JRvxdiyyo8CTfuKaY=", + version = "v2.4.0", + ) + go_repository( + name = "in_gopkg_yaml_v3", + importpath = "gopkg.in/yaml.v3", + sum = "h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=", + version = "v3.0.1", + ) + go_repository( + name = "io_etcd_go_etcd_api_v3", + importpath = "go.etcd.io/etcd/api/v3", + sum = "h1:4wSsluwyTbGGmyjJktOf3wFQoTBIURXHnq9n/G/JQHs=", + version = "v3.5.9", + ) + go_repository( + name = "io_etcd_go_etcd_client_pkg_v3", + importpath = "go.etcd.io/etcd/client/pkg/v3", + sum = "h1:oidDC4+YEuSIQbsR94rY9gur91UPL6DnxDCIYd2IGsE=", + version = "v3.5.9", + ) + go_repository( + name = "io_etcd_go_etcd_client_v2", + importpath = "go.etcd.io/etcd/client/v2", + sum = "h1:AELPkjNR3/igjbO7CjyF1fPuVPjrblliiKj+Y6xSGOU=", + version = "v2.305.7", + ) + go_repository( + name = "io_etcd_go_etcd_client_v3", + importpath = "go.etcd.io/etcd/client/v3", + sum = "h1:r5xghnU7CwbUxD/fbUtRyJGaYNfDun8sp/gTr1hew6E=", + version = "v3.5.9", + ) + go_repository( + name = "io_opencensus_go", + importpath = "go.opencensus.io", + sum = "h1:y73uSU6J157QMP2kn2r30vwW1A2W2WFwSCGnAVxeaD0=", + version = "v0.24.0", + ) + go_repository( + name = "io_opentelemetry_go_contrib_detectors_gcp", + importpath = "go.opentelemetry.io/contrib/detectors/gcp", + sum = "h1:G1JQOreVrfhRkner+l4mrGxmfqYCAuy76asTDAo0xsA=", + version = "v1.31.0", + ) + go_repository( + name = "io_opentelemetry_go_otel", + importpath = "go.opentelemetry.io/otel", + sum = "h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY=", + version = "v1.31.0", + ) + go_repository( + name = "io_opentelemetry_go_otel_metric", + importpath = "go.opentelemetry.io/otel/metric", + sum = "h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE=", + version = "v1.31.0", + ) + go_repository( + name = "io_opentelemetry_go_otel_sdk", + importpath = "go.opentelemetry.io/otel/sdk", + sum = "h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk=", + version = "v1.31.0", + ) + go_repository( + name = "io_opentelemetry_go_otel_sdk_metric", + importpath = "go.opentelemetry.io/otel/sdk/metric", + sum = "h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc=", + version = "v1.31.0", + ) + go_repository( + name = "io_opentelemetry_go_otel_trace", + importpath = "go.opentelemetry.io/otel/trace", + sum = "h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys=", + version = "v1.31.0", + ) + go_repository( + name = "io_rsc_binaryregexp", + importpath = "rsc.io/binaryregexp", + sum = "h1:HfqmD5MEmC0zvwBuF187nq9mdnXjXsSivRiXN7SmRkE=", + version = "v0.2.0", + ) + go_repository( + name = "io_rsc_quote_v3", + importpath = "rsc.io/quote/v3", + sum = "h1:9JKUTTIUgS6kzR9mK1YuGKv6Nl+DijDNIc0ghT58FaY=", + version = "v3.1.0", + ) + go_repository( + name = "io_rsc_sampler", + importpath = "rsc.io/sampler", + sum = "h1:7uVkIFmeBqHfdjD+gZwtXXI+RODJ2Wc4O7MPEh/QiW4=", + version = "v1.3.0", + ) + go_repository( + name = "org_golang_google_api", + importpath = "google.golang.org/api", + sum = "h1:zDobeejm3E7pEG1mNHvdxvjs5XJoCMzyNH+CmwL94Es=", + version = "v0.122.0", + ) + go_repository( + name = "org_golang_google_appengine", + importpath = "google.golang.org/appengine", + sum = "h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c=", + version = "v1.6.7", + ) + go_repository( + name = "org_golang_google_genproto", + importpath = "google.golang.org/genproto", + sum = "h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A=", + version = "v0.0.0-20230410155749-daa745c078e1", + ) + go_repository( + name = "org_golang_google_genproto_googleapis_api", + importpath = "google.golang.org/genproto/googleapis/api", + sum = "h1:fVoAXEKA4+yufmbdVYv+SE73+cPZbbbe8paLsHfkK+U=", + version = "v0.0.0-20241015192408-796eee8c2d53", + ) + go_repository( + name = "org_golang_google_genproto_googleapis_rpc", + importpath = "google.golang.org/genproto/googleapis/rpc", + sum = "h1:3UsHvIr4Wc2aW4brOaSCmcxh9ksica6fHEr8P1XhkYw=", + version = "v0.0.0-20250106144421-5f5ef82da422", + ) + go_repository( + name = "org_golang_google_grpc", + importpath = "google.golang.org/grpc", + sum = "h1:MF5TftSMkd8GLw/m0KM6V8CMOCY6NZ1NQDPGFgbTt4A=", + version = "v1.69.4", + ) + go_repository( + name = "org_golang_google_grpc_cmd_protoc_gen_go_grpc", + importpath = "google.golang.org/grpc/cmd/protoc-gen-go-grpc", + sum = "h1:F29+wU6Ee6qgu9TddPgooOdaqsxTMunOoj8KA5yuS5A=", + version = "v1.5.1", + ) + go_repository( + name = "org_golang_google_protobuf", + build_file_proto_mode = "disable_global", # Manually added to fix build. See https://github.com/golang/protobuf/issues/1611 + importpath = "google.golang.org/protobuf", + sum = "h1:R8FeyR1/eLmkutZOM5CWghmo5itiG9z0ktFlTVLuTmU=", + version = "v1.36.2", + ) + go_repository( + name = "org_golang_x_crypto", + importpath = "golang.org/x/crypto", + sum = "h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc=", + version = "v0.32.0", + ) + go_repository( + name = "org_golang_x_exp", + importpath = "golang.org/x/exp", + sum = "h1:QE6XYQK6naiK1EPAe1g/ILLxN5RBoH5xkJk3CqlMI/Y=", + version = "v0.0.0-20200224162631-6cc2880d07d6", + ) + go_repository( + name = "org_golang_x_image", + importpath = "golang.org/x/image", + sum = "h1:+qEpEAPhDZ1o0x3tHzZTQDArnOixOzGD9HUJfcg0mb4=", + version = "v0.0.0-20190802002840-cff245a6509b", + ) + go_repository( + name = "org_golang_x_lint", + importpath = "golang.org/x/lint", + sum = "h1:2M3HP5CCK1Si9FQhwnzYhXdG6DXeebvUHFpre8QvbyI=", + version = "v0.0.0-20201208152925-83fdc39ff7b5", + ) + go_repository( + name = "org_golang_x_mobile", + importpath = "golang.org/x/mobile", + sum = "h1:4+4C/Iv2U4fMZBiMCc98MG1In4gJY5YRhtpDNeDeHWs=", + version = "v0.0.0-20190719004257-d2bd2a29d028", + ) + go_repository( + name = "org_golang_x_mod", + importpath = "golang.org/x/mod", + sum = "h1:zY54UmvipHiNd+pm+m0x9KhZ9hl1/7QNMyxXbc6ICqA=", + version = "v0.17.0", + ) + go_repository( + name = "org_golang_x_net", + importpath = "golang.org/x/net", + sum = "h1:Mb7Mrk043xzHgnRM88suvJFwzVrRfHEHJEl5/71CKw0=", + version = "v0.34.0", + ) + go_repository( + name = "org_golang_x_oauth2", + importpath = "golang.org/x/oauth2", + sum = "h1:PbgcYx2W7i4LvjJWEbf0ngHV6qJYr86PkAV3bXdLEbs=", + version = "v0.23.0", + ) + go_repository( + name = "org_golang_x_sync", + importpath = "golang.org/x/sync", + sum = "h1:3NQrjDixjgGwUOCaF8w2+VYHv0Ve/vGYSbdkTa98gmQ=", + version = "v0.10.0", + ) + go_repository( + name = "org_golang_x_sys", + importpath = "golang.org/x/sys", + sum = "h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU=", + version = "v0.29.0", + ) + go_repository( + name = "org_golang_x_term", + importpath = "golang.org/x/term", + sum = "h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg=", + version = "v0.28.0", + ) + go_repository( + name = "org_golang_x_text", + importpath = "golang.org/x/text", + sum = "h1:zyQAAkrwaneQ066sspRyJaG9VNi/YJ1NfzcGB3hZ/qo=", + version = "v0.21.0", + ) + go_repository( + name = "org_golang_x_time", + importpath = "golang.org/x/time", + sum = "h1:xYY+Bajn2a7VBmTM5GikTmnK8ZuX8YgnQCqZpbBNtmA=", + version = "v0.1.0", + ) + go_repository( + name = "org_golang_x_tools", + importpath = "golang.org/x/tools", + sum = "h1:vU5i/LfpvrRCpgM/VPfJLg5KjxD3E+hfT1SH+d9zLwg=", + version = "v0.21.1-0.20240508182429-e35e4ccd0d2d", + ) + go_repository( + name = "org_golang_x_xerrors", + importpath = "golang.org/x/xerrors", + sum = "h1:H2TDz8ibqkAF6YGhCdN3jS9O0/s90v0rJh3X/OLHEUk=", + version = "v0.0.0-20220907171357-04be3eba64a2", + ) + go_repository( + name = "org_mozilla_go_pkcs7", + importpath = "go.mozilla.org/pkcs7", + sum = "h1:CCriYyAfq1Br1aIYettdHZTy8mBTIPo7We18TuO/bak=", + version = "v0.0.0-20210826202110-33d05740a352", + ) + go_repository( + name = "org_uber_go_atomic", + importpath = "go.uber.org/atomic", + sum = "h1:ECmE8Bn/WFTYwEW/bpKD3M8VtR/zQVbavAoalC1PYyE=", + version = "v1.9.0", + ) + go_repository( + name = "org_uber_go_multierr", + importpath = "go.uber.org/multierr", + sum = "h1:dg6GjLku4EH+249NNmoIciG9N/jURbDG+pFlTkhzIC8=", + version = "v1.8.0", + ) + go_repository( + name = "org_uber_go_zap", + importpath = "go.uber.org/zap", + sum = "h1:WefMeulhovoZ2sYXz7st6K0sLj7bBhpiFaud4r4zST8=", + version = "v1.21.0", + ) diff --git a/client/BUILD.bazel b/client/BUILD.bazel index 7658b11..0958389 100644 --- a/client/BUILD.bazel +++ b/client/BUILD.bazel @@ -20,12 +20,15 @@ go_library( importpath = "github.com/openconfig/bootz/client", visibility = ["//visibility:public"], deps = [ + "//common/owner_certificate", + "//common/ownership_voucher", + "//common/signature", "//proto:bootz", "@com_github_golang_glog//:glog", - "@org_golang_google_grpc//:go_default_library", - "@org_golang_google_grpc//credentials/insecure", + "@org_golang_google_grpc//:grpc", + "@org_golang_google_grpc//credentials", + "@org_golang_google_protobuf//encoding/prototext", "@org_golang_google_protobuf//proto", - "@org_mozilla_go_pkcs7//:pkcs7", ], ) diff --git a/common.bzl b/common.bzl deleted file mode 100644 index 376417f..0000000 --- a/common.bzl +++ /dev/null @@ -1,42 +0,0 @@ -# Copyright 2023 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -load("@io_bazel_rules_go//proto:compiler.bzl", "go_proto_compiler") -load("@io_bazel_rules_go//proto/wkt:well_known_types.bzl", "PROTO_RUNTIME_DEPS", "WELL_KNOWN_TYPES_APIV2") - -def use_new_compilers(): - go_proto_compiler( - name = "go_protoc_gen_go", - options = [ - "paths=source_relative", - ], - plugin = "@org_golang_google_protobuf//cmd/protoc-gen-go", - suffix = ".pb.go", - visibility = ["//visibility:public"], - deps = PROTO_RUNTIME_DEPS + WELL_KNOWN_TYPES_APIV2, - ) - go_proto_compiler( - name = "go_protoc_gen_go_grpc", - options = [ - "paths=source_relative", - ], - plugin = "@org_golang_google_grpc_cmd_protoc_gen_go_grpc//:protoc-gen-go-grpc", - suffix = "_grpc.pb.go", - visibility = ["//visibility:public"], - deps = PROTO_RUNTIME_DEPS + [ - "@org_golang_google_grpc//:go_default_library", - "@org_golang_google_grpc//codes:go_default_library", - "@org_golang_google_grpc//status:go_default_library", - ], - ) \ No newline at end of file diff --git a/common/owner_certificate/BUILD.bazel b/common/owner_certificate/BUILD.bazel new file mode 100644 index 0000000..f4930d9 --- /dev/null +++ b/common/owner_certificate/BUILD.bazel @@ -0,0 +1,16 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "owner_certificate", + srcs = ["owner_certificate.go"], + importpath = "github.com/openconfig/bootz/common/owner_certificate", + visibility = ["//visibility:public"], + deps = ["@org_mozilla_go_pkcs7//:pkcs7"], +) + +go_test( + name = "owner_certificate_test", + srcs = ["owner_certificate_test.go"], + embed = [":owner_certificate"], + deps = ["//testdata:testdata_lib"], +) diff --git a/common/ownership_voucher/BUILD.bazel b/common/ownership_voucher/BUILD.bazel new file mode 100644 index 0000000..0a99ad9 --- /dev/null +++ b/common/ownership_voucher/BUILD.bazel @@ -0,0 +1,19 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "ownership_voucher", + srcs = ["ownership_voucher.go"], + importpath = "github.com/openconfig/bootz/common/ownership_voucher", + visibility = ["//visibility:public"], + deps = [ + "//testdata:testdata_lib", + "@org_mozilla_go_pkcs7//:pkcs7", + ], +) + +go_test( + name = "ownership_voucher_test", + srcs = ["ownership_voucher_test.go"], + embed = [":ownership_voucher"], + deps = ["//testdata:testdata_lib"], +) diff --git a/common/signature/BUILD.bazel b/common/signature/BUILD.bazel new file mode 100644 index 0000000..55217bc --- /dev/null +++ b/common/signature/BUILD.bazel @@ -0,0 +1,15 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") + +go_library( + name = "signature", + srcs = ["signature.go"], + importpath = "github.com/openconfig/bootz/common/signature", + visibility = ["//visibility:public"], +) + +go_test( + name = "signature_test", + srcs = ["signature_test.go"], + embed = [":signature"], + deps = ["//testdata:testdata_lib"], +) diff --git a/deps.bzl b/deps.bzl deleted file mode 100644 index 8850f34..0000000 --- a/deps.bzl +++ /dev/null @@ -1,1079 +0,0 @@ -# Copyright 2023 Google LLC -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -load("@bazel_gazelle//:deps.bzl", "go_repository") - -def go_dependencies(): - go_repository( - name = "co_honnef_go_tools", - importpath = "honnef.co/go/tools", - sum = "h1:/hemPrYIhOhy8zYrNj+069zDB68us2sMGsfkFJO0iZs=", - version = "v0.0.0-20190523083050-ea95bdfd59fc", - ) - go_repository( - name = "com_github_antihax_optional", - importpath = "github.com/antihax/optional", - sum = "h1:xK2lYat7ZLaVVcIuj82J8kIro4V6kDe0AUDFboUCwcg=", - version = "v1.0.0", - ) - go_repository( - name = "com_github_burntsushi_toml", - importpath = "github.com/BurntSushi/toml", - sum = "h1:WXkYYl6Yr3qBf1K79EBnL4mak0OimBfB0XUf9Vl28OQ=", - version = "v0.3.1", - ) - go_repository( - name = "com_github_cenkalti_backoff_v4", - importpath = "github.com/cenkalti/backoff/v4", - sum = "h1:G2HAfAmvm/GcKan2oOQpBXOd2tT2G57ZnZGWa1PxPBQ=", - version = "v4.1.1", - ) - go_repository( - name = "com_github_census_instrumentation_opencensus_proto", - importpath = "github.com/census-instrumentation/opencensus-proto", - sum = "h1:iKLQ0xPNFxR/2hzXZMrBo8f1j86j5WHzznCCQxV/b8g=", - version = "v0.4.1", - ) - go_repository( - name = "com_github_cespare_xxhash_v2", - importpath = "github.com/cespare/xxhash/v2", - sum = "h1:DC2CZ1Ep5Y4k3ZQ899DldepgrayRUGE6BBZ/cd9Cj44=", - version = "v2.2.0", - ) - go_repository( - name = "com_github_client9_misspell", - importpath = "github.com/client9/misspell", - sum = "h1:ta993UF76GwbvJcIo3Y68y/M3WxlpEHPWIGDkJYwzJI=", - version = "v0.3.4", - ) - go_repository( - name = "com_github_cncf_udpa_go", - importpath = "github.com/cncf/udpa/go", - sum = "h1:QQ3GSy+MqSHxm/d8nCtnAiZdYFd45cYZPs8vOOIYKfk=", - version = "v0.0.0-20220112060539-c52dc94e7fbe", - ) - go_repository( - name = "com_github_cncf_xds_go", - importpath = "github.com/cncf/xds/go", - sum = "h1:/inchEIKaYC1Akx+H+gqO04wryn5h75LSazbRlnya1k=", - version = "v0.0.0-20230607035331-e9ce68804cb4", - ) - go_repository( - name = "com_github_davecgh_go_spew", - importpath = "github.com/davecgh/go-spew", - sum = "h1:ZDRjVQ15GmhC3fiQ8ni8+OwkZQO4DARzQgrnXU1Liz8=", - version = "v1.1.0", - ) - go_repository( - name = "com_github_envoyproxy_go_control_plane", - importpath = "github.com/envoyproxy/go-control-plane", - sum = "h1:7T++XKzy4xg7PKy+bM+Sa9/oe1OC88yz2hXQUISoXfA=", - version = "v0.11.1-0.20230524094728-9239064ad72f", - ) - go_repository( - name = "com_github_envoyproxy_protoc_gen_validate", - importpath = "github.com/envoyproxy/protoc-gen-validate", - sum = "h1:c0g45+xCJhdgFGw7a5QAfdS4byAbud7miNWJ1WwEVf8=", - version = "v0.10.1", - ) - go_repository( - name = "com_github_ghodss_yaml", - importpath = "github.com/ghodss/yaml", - sum = "h1:wQHKEahhL6wmXdzwWG11gIVCkOv05bNOh+Rxn0yngAk=", - version = "v1.0.0", - ) - go_repository( - name = "com_github_golang_glog", - importpath = "github.com/golang/glog", - sum = "h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo=", - version = "v1.1.2", - ) - go_repository( - name = "com_github_golang_mock", - importpath = "github.com/golang/mock", - sum = "h1:G5FRp8JnTd7RQH5kemVNlMeyXQAztQ3mOWV95KxsXH8=", - version = "v1.1.1", - ) - go_repository( - name = "com_github_golang_protobuf", - importpath = "github.com/golang/protobuf", - sum = "h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg=", - version = "v1.5.3", - ) - go_repository( - name = "com_github_google_go_cmp", - importpath = "github.com/google/go-cmp", - sum = "h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38=", - version = "v0.5.9", - ) - go_repository( - name = "com_github_google_uuid", - importpath = "github.com/google/uuid", - sum = "h1:t6JiXgmwXMjEs8VusXIJk2BXHsn+wx8BZdTaoZ5fu7I=", - version = "v1.3.0", - ) - go_repository( - name = "com_github_grpc_ecosystem_grpc_gateway", - importpath = "github.com/grpc-ecosystem/grpc-gateway", - sum = "h1:gmcG1KaJ57LophUzW0Hy8NmPhnMZb4M0+kPpLofRdBo=", - version = "v1.16.0", - ) - go_repository( - name = "com_github_kylelemons_godebug", - importpath = "github.com/kylelemons/godebug", - sum = "h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=", - version = "v1.1.0", - ) - go_repository( - name = "com_github_mitchellh_go_wordwrap", - importpath = "github.com/mitchellh/go-wordwrap", - sum = "h1:TLuKupo69TCn6TQSyGxwI1EblZZEsQ0vMlAFQflz0v0=", - version = "v1.0.1", - ) - go_repository( - name = "com_github_openconfig_gnmi", - build_directives = [ - "gazelle:proto_import_prefix github.com/openconfig/gnmi", - ], - build_file_generation = "on", - importpath = "github.com/openconfig/gnmi", - sum = "h1:kQEZ/9ek3Vp2Y5IVuV2L/ba8/77TgjdXg505QXvYmg8=", - version = "v0.10.0", - ) - go_repository( - name = "com_github_openconfig_gnoi", - importpath = "github.com/openconfig/gnoi", - sum = "h1:jbYXRMNmmvA8ZFv2FBLrYoxA1MFSui4tEui+8LAWyVc=", - version = "v0.4.0", - ) - - go_repository( - name = "com_github_openconfig_gnsi", - importpath = "github.com/openconfig/gnsi", - sum = "h1:V6jxHwBGqu0xUvVNFIeY27kAZ/VOEuETehz6ugCgo+s=", - version = "v1.4.3", - ) - - go_repository( - name = "com_github_openconfig_goyang", - importpath = "github.com/openconfig/goyang", - sum = "h1:5MyIz4bN4vpH6aHDN339bkWXAjTkhg1ZKMhR4aIi5Rk=", - version = "v0.0.0-20200115183954-d0a48929f0ea", - ) - go_repository( - name = "com_github_openconfig_grpctunnel", - importpath = "github.com/openconfig/grpctunnel", - sum = "h1:tSMKTQlWcHhdxQhn6P9myhLcoI+SzxF9e6hHWstCagU=", - version = "v0.0.0-20220524190229-125331eabdde", - ) - go_repository( - name = "com_github_openconfig_ygot", - importpath = "github.com/openconfig/ygot", - sum = "h1:kJJFPBrczC6TDnz/HMlFTJEdW2CuyUftV13XveIukg0=", - version = "v0.6.0", - ) - go_repository( - name = "com_github_pmezard_go_difflib", - importpath = "github.com/pmezard/go-difflib", - sum = "h1:4DBwDE0NGyQoBHbLQYPwSUPoCMWR5BEzIk/f1lZbAQM=", - version = "v1.0.0", - ) - go_repository( - name = "com_github_prometheus_client_model", - importpath = "github.com/prometheus/client_model", - sum = "h1:gQz4mCbXsO+nc9n1hCxHcGA3Zx3Eo+UHZoInFGUIXNM=", - version = "v0.0.0-20190812154241-14fe0d1b01d4", - ) - go_repository( - name = "com_github_protocolbuffers_txtpbfmt", - importpath = "github.com/protocolbuffers/txtpbfmt", - sum = "h1:AKJY61V2SQtJ2a2PdeswKk0NM1qF77X+julRNYRxPOk=", - version = "v0.0.0-20220608084003-fc78c767cd6a", - ) - go_repository( - name = "com_github_rogpeppe_fastuuid", - importpath = "github.com/rogpeppe/fastuuid", - sum = "h1:Ppwyp6VYCF1nvBTXL3trRso7mXMlRrw9ooo375wvi2s=", - version = "v1.2.0", - ) - go_repository( - name = "com_github_stretchr_objx", - importpath = "github.com/stretchr/objx", - sum = "h1:4G4v2dO3VZwixGIRoQ5Lfboy6nUhCyYzaqnIAPPhYs4=", - version = "v0.1.0", - ) - go_repository( - name = "com_github_stretchr_testify", - importpath = "github.com/stretchr/testify", - sum = "h1:nwc3DEeHmmLAfoZucVR881uASk0Mfjw8xYJ99tb5CcY=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go", - importpath = "cloud.google.com/go", - sum = "h1:Zc8gqp3+a9/Eyph2KDmcGaPtbKRIoqq4YTlL4NMD0Ys=", - version = "v0.110.0", - ) - go_repository( - name = "com_google_cloud_go_accessapproval", - importpath = "cloud.google.com/go/accessapproval", - sum = "h1:x0cEHro/JFPd7eS4BlEWNTMecIj2HdXjOVB5BtvwER0=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_accesscontextmanager", - importpath = "cloud.google.com/go/accesscontextmanager", - sum = "h1:MG60JgnEoawHJrbWw0jGdv6HLNSf6gQvYRiXpuzqgEA=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_aiplatform", - importpath = "cloud.google.com/go/aiplatform", - sum = "h1:zTw+suCVchgZyO+k847wjzdVjWmrAuehxdvcZvJwfGg=", - version = "v1.37.0", - ) - go_repository( - name = "com_google_cloud_go_analytics", - importpath = "cloud.google.com/go/analytics", - sum = "h1:LqAo3tAh2FU9+w/r7vc3hBjU23Kv7GhO/PDIW7kIYgM=", - version = "v0.19.0", - ) - go_repository( - name = "com_google_cloud_go_apigateway", - importpath = "cloud.google.com/go/apigateway", - sum = "h1:ZI9mVO7x3E9RK/BURm2p1aw9YTBSCQe3klmyP1WxWEg=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_apigeeconnect", - importpath = "cloud.google.com/go/apigeeconnect", - sum = "h1:sWOmgDyAsi1AZ48XRHcATC0tsi9SkPT7DA/+VCfkaeA=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_apigeeregistry", - importpath = "cloud.google.com/go/apigeeregistry", - sum = "h1:E43RdhhCxdlV+I161gUY2rI4eOaMzHTA5kNkvRsFXvc=", - version = "v0.6.0", - ) - go_repository( - name = "com_google_cloud_go_apikeys", - importpath = "cloud.google.com/go/apikeys", - sum = "h1:B9CdHFZTFjVti89tmyXXrO+7vSNo2jvZuHG8zD5trdQ=", - version = "v0.6.0", - ) - go_repository( - name = "com_google_cloud_go_appengine", - importpath = "cloud.google.com/go/appengine", - sum = "h1:aBGDKmRIaRRoWJ2tAoN0oVSHoWLhtO9aj/NvUyP4aYs=", - version = "v1.7.1", - ) - go_repository( - name = "com_google_cloud_go_area120", - importpath = "cloud.google.com/go/area120", - sum = "h1:ugckkFh4XkHJMPhTIx0CyvdoBxmOpMe8rNs4Ok8GAag=", - version = "v0.7.1", - ) - go_repository( - name = "com_google_cloud_go_artifactregistry", - importpath = "cloud.google.com/go/artifactregistry", - sum = "h1:o1Q80vqEB6Qp8WLEH3b8FBLNUCrGQ4k5RFj0sn/sgO8=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_asset", - importpath = "cloud.google.com/go/asset", - sum = "h1:YAsssO08BqZ6mncbb6FPlj9h6ACS7bJQUOlzciSfbNk=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_assuredworkloads", - importpath = "cloud.google.com/go/assuredworkloads", - sum = "h1:VLGnVFta+N4WM+ASHbhc14ZOItOabDLH1MSoDv+Xuag=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_automl", - importpath = "cloud.google.com/go/automl", - sum = "h1:50VugllC+U4IGl3tDNcZaWvApHBTrn/TvyHDJ0wM+Uw=", - version = "v1.12.0", - ) - go_repository( - name = "com_google_cloud_go_baremetalsolution", - importpath = "cloud.google.com/go/baremetalsolution", - sum = "h1:2AipdYXL0VxMboelTTw8c1UJ7gYu35LZYUbuRv9Q28s=", - version = "v0.5.0", - ) - go_repository( - name = "com_google_cloud_go_batch", - importpath = "cloud.google.com/go/batch", - sum = "h1:YbMt0E6BtqeD5FvSv1d56jbVsWEzlGm55lYte+M6Mzs=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_beyondcorp", - importpath = "cloud.google.com/go/beyondcorp", - sum = "h1:UkY2BTZkEUAVrgqnSdOJ4p3y9ZRBPEe1LkjgC8Bj/Pc=", - version = "v0.5.0", - ) - go_repository( - name = "com_google_cloud_go_bigquery", - importpath = "cloud.google.com/go/bigquery", - sum = "h1:RscMV6LbnAmhAzD893Lv9nXXy2WCaJmbxYPWDLbGqNQ=", - version = "v1.50.0", - ) - go_repository( - name = "com_google_cloud_go_billing", - importpath = "cloud.google.com/go/billing", - sum = "h1:JYj28UYF5w6VBAh0gQYlgHJ/OD1oA+JgW29YZQU+UHM=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_binaryauthorization", - importpath = "cloud.google.com/go/binaryauthorization", - sum = "h1:d3pMDBCCNivxt5a4eaV7FwL7cSH0H7RrEnFrTb1QKWs=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_certificatemanager", - importpath = "cloud.google.com/go/certificatemanager", - sum = "h1:5C5UWeSt8Jkgp7OWn2rCkLmYurar/vIWIoSQ2+LaTOc=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_channel", - importpath = "cloud.google.com/go/channel", - sum = "h1:GpcQY5UJKeOekYgsX3QXbzzAc/kRGtBq43fTmyKe6Uw=", - version = "v1.12.0", - ) - go_repository( - name = "com_google_cloud_go_cloudbuild", - importpath = "cloud.google.com/go/cloudbuild", - sum = "h1:GHQCjV4WlPPVU/j3Rlpc8vNIDwThhd1U9qSY/NPZdko=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_clouddms", - importpath = "cloud.google.com/go/clouddms", - sum = "h1:E7v4TpDGUyEm1C/4KIrpVSOCTm0P6vWdHT0I4mostRA=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_cloudtasks", - importpath = "cloud.google.com/go/cloudtasks", - sum = "h1:uK5k6abf4yligFgYFnG0ni8msai/dSv6mDmiBulU0hU=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_compute", - importpath = "cloud.google.com/go/compute", - sum = "h1:am86mquDUgjGNWxiGn+5PGLbmgiWXlE/yNWpIpNvuXY=", - version = "v1.19.1", - ) - go_repository( - name = "com_google_cloud_go_compute_metadata", - importpath = "cloud.google.com/go/compute/metadata", - sum = "h1:mg4jlk7mCAj6xXp9UJ4fjI9VUI5rubuGBW5aJ7UnBMY=", - version = "v0.2.3", - ) - go_repository( - name = "com_google_cloud_go_contactcenterinsights", - importpath = "cloud.google.com/go/contactcenterinsights", - sum = "h1:jXIpfcH/VYSE1SYcPzO0n1VVb+sAamiLOgCw45JbOQk=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_container", - importpath = "cloud.google.com/go/container", - sum = "h1:NKlY/wCDapfVZlbVVaeuu2UZZED5Dy1z4Zx1KhEzm8c=", - version = "v1.15.0", - ) - go_repository( - name = "com_google_cloud_go_containeranalysis", - importpath = "cloud.google.com/go/containeranalysis", - sum = "h1:EQ4FFxNaEAg8PqQCO7bVQfWz9NVwZCUKaM1b3ycfx3U=", - version = "v0.9.0", - ) - go_repository( - name = "com_google_cloud_go_datacatalog", - importpath = "cloud.google.com/go/datacatalog", - sum = "h1:4H5IJiyUE0X6ShQBqgFFZvGGcrwGVndTwUSLP4c52gw=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_dataflow", - importpath = "cloud.google.com/go/dataflow", - sum = "h1:eYyD9o/8Nm6EttsKZaEGD84xC17bNgSKCu0ZxwqUbpg=", - version = "v0.8.0", - ) - go_repository( - name = "com_google_cloud_go_dataform", - importpath = "cloud.google.com/go/dataform", - sum = "h1:Dyk+fufup1FR6cbHjFpMuP4SfPiF3LI3JtoIIALoq48=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_datafusion", - importpath = "cloud.google.com/go/datafusion", - sum = "h1:sZjRnS3TWkGsu1LjYPFD/fHeMLZNXDK6PDHi2s2s/bk=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_datalabeling", - importpath = "cloud.google.com/go/datalabeling", - sum = "h1:ch4qA2yvddGRUrlfwrNJCr79qLqhS9QBwofPHfFlDIk=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_dataplex", - importpath = "cloud.google.com/go/dataplex", - sum = "h1:RvoZ5T7gySwm1CHzAw7yY1QwwqaGswunmqEssPxU/AM=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_dataproc", - importpath = "cloud.google.com/go/dataproc", - sum = "h1:W47qHL3W4BPkAIbk4SWmIERwsWBaNnWm0P2sdx3YgGU=", - version = "v1.12.0", - ) - go_repository( - name = "com_google_cloud_go_dataqna", - importpath = "cloud.google.com/go/dataqna", - sum = "h1:yFzi/YU4YAdjyo7pXkBE2FeHbgz5OQQBVDdbErEHmVQ=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_datastore", - importpath = "cloud.google.com/go/datastore", - sum = "h1:iF6I/HaLs3Ado8uRKMvZRvF/ZLkWaWE9i8AiHzbC774=", - version = "v1.11.0", - ) - go_repository( - name = "com_google_cloud_go_datastream", - importpath = "cloud.google.com/go/datastream", - sum = "h1:BBCBTnWMDwwEzQQmipUXxATa7Cm7CA/gKjKcR2w35T0=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_deploy", - importpath = "cloud.google.com/go/deploy", - sum = "h1:otshdKEbmsi1ELYeCKNYppwV0UH5xD05drSdBm7ouTk=", - version = "v1.8.0", - ) - go_repository( - name = "com_google_cloud_go_dialogflow", - importpath = "cloud.google.com/go/dialogflow", - sum = "h1:uVlKKzp6G/VtSW0E7IH1Y5o0H48/UOCmqksG2riYCwQ=", - version = "v1.32.0", - ) - go_repository( - name = "com_google_cloud_go_dlp", - importpath = "cloud.google.com/go/dlp", - sum = "h1:1JoJqezlgu6NWCroBxr4rOZnwNFILXr4cB9dMaSKO4A=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_documentai", - importpath = "cloud.google.com/go/documentai", - sum = "h1:KM3Xh0QQyyEdC8Gs2vhZfU+rt6OCPF0dwVwxKgLmWfI=", - version = "v1.18.0", - ) - go_repository( - name = "com_google_cloud_go_domains", - importpath = "cloud.google.com/go/domains", - sum = "h1:2ti/o9tlWL4N+wIuWUNH+LbfgpwxPr8J1sv9RHA4bYQ=", - version = "v0.8.0", - ) - go_repository( - name = "com_google_cloud_go_edgecontainer", - importpath = "cloud.google.com/go/edgecontainer", - sum = "h1:O0YVE5v+O0Q/ODXYsQHmHb+sYM8KNjGZw2pjX2Ws41c=", - version = "v1.0.0", - ) - go_repository( - name = "com_google_cloud_go_errorreporting", - importpath = "cloud.google.com/go/errorreporting", - sum = "h1:kj1XEWMu8P0qlLhm3FwcaFsUvXChV/OraZwA70trRR0=", - version = "v0.3.0", - ) - go_repository( - name = "com_google_cloud_go_essentialcontacts", - importpath = "cloud.google.com/go/essentialcontacts", - sum = "h1:gIzEhCoOT7bi+6QZqZIzX1Erj4SswMPIteNvYVlu+pM=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_eventarc", - importpath = "cloud.google.com/go/eventarc", - sum = "h1:fsJmNeqvqtk74FsaVDU6cH79lyZNCYP8Rrv7EhaB/PU=", - version = "v1.11.0", - ) - go_repository( - name = "com_google_cloud_go_filestore", - importpath = "cloud.google.com/go/filestore", - sum = "h1:ckTEXN5towyTMu4q0uQ1Mde/JwTHur0gXs8oaIZnKfw=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_firestore", - importpath = "cloud.google.com/go/firestore", - sum = "h1:IBlRyxgGySXu5VuW0RgGFlTtLukSnNkpDiEOMkQkmpA=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_functions", - importpath = "cloud.google.com/go/functions", - sum = "h1:pPDqtsXG2g9HeOQLoquLbmvmb82Y4Ezdo1GXuotFoWg=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_gaming", - importpath = "cloud.google.com/go/gaming", - sum = "h1:7vEhFnZmd931Mo7sZ6pJy7uQPDxF7m7v8xtBheG08tc=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_gkebackup", - importpath = "cloud.google.com/go/gkebackup", - sum = "h1:za3QZvw6ujR0uyqkhomKKKNoXDyqYGPJies3voUK8DA=", - version = "v0.4.0", - ) - go_repository( - name = "com_google_cloud_go_gkeconnect", - importpath = "cloud.google.com/go/gkeconnect", - sum = "h1:gXYKciHS/Lgq0GJ5Kc9SzPA35NGc3yqu6SkjonpEr2Q=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_gkehub", - importpath = "cloud.google.com/go/gkehub", - sum = "h1:TqCSPsEBQ6oZSJgEYZ3XT8x2gUadbvfwI32YB0kuHCs=", - version = "v0.12.0", - ) - go_repository( - name = "com_google_cloud_go_gkemulticloud", - importpath = "cloud.google.com/go/gkemulticloud", - sum = "h1:8I84Q4vl02rJRsFiinBxl7WCozfdLlUVBQuSrqr9Wtk=", - version = "v0.5.0", - ) - go_repository( - name = "com_google_cloud_go_gsuiteaddons", - importpath = "cloud.google.com/go/gsuiteaddons", - sum = "h1:1mvhXqJzV0Vg5Fa95QwckljODJJfDFXV4pn+iL50zzA=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_iam", - importpath = "cloud.google.com/go/iam", - sum = "h1:+CmB+K0J/33d0zSQ9SlFWUeCCEn5XJA0ZMZ3pHE9u8k=", - version = "v0.13.0", - ) - go_repository( - name = "com_google_cloud_go_iap", - importpath = "cloud.google.com/go/iap", - sum = "h1:PxVHFuMxmSZyfntKXHXhd8bo82WJ+LcATenq7HLdVnU=", - version = "v1.7.1", - ) - go_repository( - name = "com_google_cloud_go_ids", - importpath = "cloud.google.com/go/ids", - sum = "h1:fodnCDtOXuMmS8LTC2y3h8t24U8F3eKWfhi+3LY6Qf0=", - version = "v1.3.0", - ) - go_repository( - name = "com_google_cloud_go_iot", - importpath = "cloud.google.com/go/iot", - sum = "h1:39W5BFSarRNZfVG0eXI5LYux+OVQT8GkgpHCnrZL2vM=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_kms", - importpath = "cloud.google.com/go/kms", - sum = "h1:7hm1bRqGCA1GBRQUrp831TwJ9TWhP+tvLuP497CQS2g=", - version = "v1.10.1", - ) - go_repository( - name = "com_google_cloud_go_language", - importpath = "cloud.google.com/go/language", - sum = "h1:7Ulo2mDk9huBoBi8zCE3ONOoBrL6UXfAI71CLQ9GEIM=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_lifesciences", - importpath = "cloud.google.com/go/lifesciences", - sum = "h1:uWrMjWTsGjLZpCTWEAzYvyXj+7fhiZST45u9AgasasI=", - version = "v0.8.0", - ) - go_repository( - name = "com_google_cloud_go_logging", - importpath = "cloud.google.com/go/logging", - sum = "h1:CJYxlNNNNAMkHp9em/YEXcfJg+rPDg7YfwoRpMU+t5I=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_longrunning", - importpath = "cloud.google.com/go/longrunning", - sum = "h1:v+yFJOfKC3yZdY6ZUI933pIYdhyhV8S3NpWrXWmg7jM=", - version = "v0.4.1", - ) - go_repository( - name = "com_google_cloud_go_managedidentities", - importpath = "cloud.google.com/go/managedidentities", - sum = "h1:ZRQ4k21/jAhrHBVKl/AY7SjgzeJwG1iZa+mJ82P+VNg=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_maps", - importpath = "cloud.google.com/go/maps", - sum = "h1:mv9YaczD4oZBZkM5XJl6fXQ984IkJNHPwkc8MUsdkBo=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_mediatranslation", - importpath = "cloud.google.com/go/mediatranslation", - sum = "h1:anPxH+/WWt8Yc3EdoEJhPMBRF7EhIdz426A+tuoA0OU=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_memcache", - importpath = "cloud.google.com/go/memcache", - sum = "h1:8/VEmWCpnETCrBwS3z4MhT+tIdKgR1Z4Tr2tvYH32rg=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_metastore", - importpath = "cloud.google.com/go/metastore", - sum = "h1:QCFhZVe2289KDBQ7WxaHV2rAmPrmRAdLC6gbjUd3HPo=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_monitoring", - importpath = "cloud.google.com/go/monitoring", - sum = "h1:2qsrgXGVoRXpP7otZ14eE1I568zAa92sJSDPyOJvwjM=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_networkconnectivity", - importpath = "cloud.google.com/go/networkconnectivity", - sum = "h1:ZD6b4Pk1jEtp/cx9nx0ZYcL3BKqDa+KixNDZ6Bjs1B8=", - version = "v1.11.0", - ) - go_repository( - name = "com_google_cloud_go_networkmanagement", - importpath = "cloud.google.com/go/networkmanagement", - sum = "h1:8KWEUNGcpSX9WwZXq7FtciuNGPdPdPN/ruDm769yAEM=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_networksecurity", - importpath = "cloud.google.com/go/networksecurity", - sum = "h1:sOc42Ig1K2LiKlzG71GUVloeSJ0J3mffEBYmvu+P0eo=", - version = "v0.8.0", - ) - go_repository( - name = "com_google_cloud_go_notebooks", - importpath = "cloud.google.com/go/notebooks", - sum = "h1:Kg2K3K7CbSXYJHZ1aGQpf1xi5x2GUvQWf2sFVuiZh8M=", - version = "v1.8.0", - ) - go_repository( - name = "com_google_cloud_go_optimization", - importpath = "cloud.google.com/go/optimization", - sum = "h1:dj8O4VOJRB4CUwZXdmwNViH1OtI0WtWL867/lnYH248=", - version = "v1.3.1", - ) - go_repository( - name = "com_google_cloud_go_orchestration", - importpath = "cloud.google.com/go/orchestration", - sum = "h1:Vw+CEXo8M/FZ1rb4EjcLv0gJqqw89b7+g+C/EmniTb8=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_orgpolicy", - importpath = "cloud.google.com/go/orgpolicy", - sum = "h1:XDriMWug7sd0kYT1QKofRpRHzjad0bK8Q8uA9q+XrU4=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_osconfig", - importpath = "cloud.google.com/go/osconfig", - sum = "h1:PkSQx4OHit5xz2bNyr11KGcaFccL5oqglFPdTboyqwQ=", - version = "v1.11.0", - ) - go_repository( - name = "com_google_cloud_go_oslogin", - importpath = "cloud.google.com/go/oslogin", - sum = "h1:whP7vhpmc+ufZa90eVpkfbgzJRK/Xomjz+XCD4aGwWw=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_phishingprotection", - importpath = "cloud.google.com/go/phishingprotection", - sum = "h1:l6tDkT7qAEV49MNEJkEJTB6vOO/onbSOcNtAT09HPuA=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_policytroubleshooter", - importpath = "cloud.google.com/go/policytroubleshooter", - sum = "h1:yKAGC4p9O61ttZUswaq9GAn1SZnEzTd0vUYXD7ZBT7Y=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_privatecatalog", - importpath = "cloud.google.com/go/privatecatalog", - sum = "h1:EPEJ1DpEGXLDnmc7mnCAqFmkwUJbIsaLAiLHVOkkwtc=", - version = "v0.8.0", - ) - go_repository( - name = "com_google_cloud_go_pubsub", - importpath = "cloud.google.com/go/pubsub", - sum = "h1:vCge8m7aUKBJYOgrZp7EsNDf6QMd2CAlXZqWTn3yq6s=", - version = "v1.30.0", - ) - go_repository( - name = "com_google_cloud_go_pubsublite", - importpath = "cloud.google.com/go/pubsublite", - sum = "h1:cb9fsrtpINtETHiJ3ECeaVzrfIVhcGjhhJEjybHXHao=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_recaptchaenterprise_v2", - importpath = "cloud.google.com/go/recaptchaenterprise/v2", - sum = "h1:6iOCujSNJ0YS7oNymI64hXsjGq60T4FK1zdLugxbzvU=", - version = "v2.7.0", - ) - go_repository( - name = "com_google_cloud_go_recommendationengine", - importpath = "cloud.google.com/go/recommendationengine", - sum = "h1:VibRFCwWXrFebEWKHfZAt2kta6pS7Tlimsnms0fjv7k=", - version = "v0.7.0", - ) - go_repository( - name = "com_google_cloud_go_recommender", - importpath = "cloud.google.com/go/recommender", - sum = "h1:ZnFRY5R6zOVk2IDS1Jbv5Bw+DExCI5rFumsTnMXiu/A=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_redis", - importpath = "cloud.google.com/go/redis", - sum = "h1:JoAd3SkeDt3rLFAAxEvw6wV4t+8y4ZzfZcZmddqphQ8=", - version = "v1.11.0", - ) - go_repository( - name = "com_google_cloud_go_resourcemanager", - importpath = "cloud.google.com/go/resourcemanager", - sum = "h1:NRM0p+RJkaQF9Ee9JMnUV9BQ2QBIOq/v8M+Pbv/wmCs=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_resourcesettings", - importpath = "cloud.google.com/go/resourcesettings", - sum = "h1:8Dua37kQt27CCWHm4h/Q1XqCF6ByD7Ouu49xg95qJzI=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_retail", - importpath = "cloud.google.com/go/retail", - sum = "h1:1Dda2OpFNzIb4qWgFZjYlpP7sxX3aLeypKG6A3H4Yys=", - version = "v1.12.0", - ) - go_repository( - name = "com_google_cloud_go_run", - importpath = "cloud.google.com/go/run", - sum = "h1:ydJQo+k+MShYnBfhaRHSZYeD/SQKZzZLAROyfpeD9zw=", - version = "v0.9.0", - ) - go_repository( - name = "com_google_cloud_go_scheduler", - importpath = "cloud.google.com/go/scheduler", - sum = "h1:NpQAHtx3sulByTLe2dMwWmah8PWgeoieFPpJpArwFV0=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_secretmanager", - importpath = "cloud.google.com/go/secretmanager", - sum = "h1:pu03bha7ukxF8otyPKTFdDz+rr9sE3YauS5PliDXK60=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_security", - importpath = "cloud.google.com/go/security", - sum = "h1:PYvDxopRQBfYAXKAuDpFCKBvDOWPWzp9k/H5nB3ud3o=", - version = "v1.13.0", - ) - go_repository( - name = "com_google_cloud_go_securitycenter", - importpath = "cloud.google.com/go/securitycenter", - sum = "h1:AF3c2s3awNTMoBtMX3oCUoOMmGlYxGOeuXSYHNBkf14=", - version = "v1.19.0", - ) - go_repository( - name = "com_google_cloud_go_servicecontrol", - importpath = "cloud.google.com/go/servicecontrol", - sum = "h1:d0uV7Qegtfaa7Z2ClDzr9HJmnbJW7jn0WhZ7wOX6hLE=", - version = "v1.11.1", - ) - go_repository( - name = "com_google_cloud_go_servicedirectory", - importpath = "cloud.google.com/go/servicedirectory", - sum = "h1:SJwk0XX2e26o25ObYUORXx6torSFiYgsGkWSkZgkoSU=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_servicemanagement", - importpath = "cloud.google.com/go/servicemanagement", - sum = "h1:fopAQI/IAzlxnVeiKn/8WiV6zKndjFkvi+gzu+NjywY=", - version = "v1.8.0", - ) - go_repository( - name = "com_google_cloud_go_serviceusage", - importpath = "cloud.google.com/go/serviceusage", - sum = "h1:rXyq+0+RSIm3HFypctp7WoXxIA563rn206CfMWdqXX4=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_shell", - importpath = "cloud.google.com/go/shell", - sum = "h1:wT0Uw7ib7+AgZST9eCDygwTJn4+bHMDtZo5fh7kGWDU=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_spanner", - importpath = "cloud.google.com/go/spanner", - sum = "h1:7VdjZ8zj4sHbDw55atp5dfY6kn1j9sam9DRNpPQhqR4=", - version = "v1.45.0", - ) - go_repository( - name = "com_google_cloud_go_speech", - importpath = "cloud.google.com/go/speech", - sum = "h1:JEVoWGNnTF128kNty7T4aG4eqv2z86yiMJPT9Zjp+iw=", - version = "v1.15.0", - ) - go_repository( - name = "com_google_cloud_go_storagetransfer", - importpath = "cloud.google.com/go/storagetransfer", - sum = "h1:5T+PM+3ECU3EY2y9Brv0Sf3oka8pKmsCfpQ07+91G9o=", - version = "v1.8.0", - ) - go_repository( - name = "com_google_cloud_go_talent", - importpath = "cloud.google.com/go/talent", - sum = "h1:nI9sVZPjMKiO2q3Uu0KhTDVov3Xrlpt63fghP9XjyEM=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_texttospeech", - importpath = "cloud.google.com/go/texttospeech", - sum = "h1:H4g1ULStsbVtalbZGktyzXzw6jP26RjVGYx9RaYjBzc=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_tpu", - importpath = "cloud.google.com/go/tpu", - sum = "h1:/34T6CbSi+kTv5E19Q9zbU/ix8IviInZpzwz3rsFE+A=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_trace", - importpath = "cloud.google.com/go/trace", - sum = "h1:olxC0QHC59zgJVALtgqfD9tGk0lfeCP5/AGXL3Px/no=", - version = "v1.9.0", - ) - go_repository( - name = "com_google_cloud_go_translate", - importpath = "cloud.google.com/go/translate", - sum = "h1:GvLP4oQ4uPdChBmBaUSa/SaZxCdyWELtlAaKzpHsXdA=", - version = "v1.7.0", - ) - go_repository( - name = "com_google_cloud_go_video", - importpath = "cloud.google.com/go/video", - sum = "h1:upIbnGI0ZgACm58HPjAeBMleW3sl5cT84AbYQ8PWOgM=", - version = "v1.15.0", - ) - go_repository( - name = "com_google_cloud_go_videointelligence", - importpath = "cloud.google.com/go/videointelligence", - sum = "h1:Uh5BdoET8XXqXX2uXIahGb+wTKbLkGH7s4GXR58RrG8=", - version = "v1.10.0", - ) - go_repository( - name = "com_google_cloud_go_vision_v2", - importpath = "cloud.google.com/go/vision/v2", - sum = "h1:8C8RXUJoflCI4yVdqhTy9tRyygSHmp60aP363z23HKg=", - version = "v2.7.0", - ) - go_repository( - name = "com_google_cloud_go_vmmigration", - importpath = "cloud.google.com/go/vmmigration", - sum = "h1:Azs5WKtfOC8pxvkyrDvt7J0/4DYBch0cVbuFfCCFt5k=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_vmwareengine", - importpath = "cloud.google.com/go/vmwareengine", - sum = "h1:b0NBu7S294l0gmtrT0nOJneMYgZapr5x9tVWvgDoVEM=", - version = "v0.3.0", - ) - go_repository( - name = "com_google_cloud_go_vpcaccess", - importpath = "cloud.google.com/go/vpcaccess", - sum = "h1:FOe6CuiQD3BhHJWt7E8QlbBcaIzVRddupwJlp7eqmn4=", - version = "v1.6.0", - ) - go_repository( - name = "com_google_cloud_go_webrisk", - importpath = "cloud.google.com/go/webrisk", - sum = "h1:IY+L2+UwxcVm2zayMAtBhZleecdIFLiC+QJMzgb0kT0=", - version = "v1.8.0", - ) - go_repository( - name = "com_google_cloud_go_websecurityscanner", - importpath = "cloud.google.com/go/websecurityscanner", - sum = "h1:AHC1xmaNMOZtNqxI9Rmm87IJEyPaRkOxeI0gpAacXGk=", - version = "v1.5.0", - ) - go_repository( - name = "com_google_cloud_go_workflows", - importpath = "cloud.google.com/go/workflows", - sum = "h1:FfGp9w0cYnaKZJhUOMqCOJCYT/WlvYBfTQhFWV3sRKI=", - version = "v1.10.0", - ) - go_repository( - name = "in_gopkg_check_v1", - importpath = "gopkg.in/check.v1", - sum = "h1:yhCVgyC4o1eVCa2tZl7eS0r+SDo693bJlVdllGtEeKM=", - version = "v0.0.0-20161208181325-20d25e280405", - ) - go_repository( - name = "in_gopkg_yaml_v2", - importpath = "gopkg.in/yaml.v2", - sum = "h1:fvjTMHxHEw/mxHbtzPi3JCcKXQRAnQTBRo6YCJSVHKI=", - version = "v2.2.3", - ) - go_repository( - name = "in_gopkg_yaml_v3", - importpath = "gopkg.in/yaml.v3", - sum = "h1:dUUwHk2QECo/6vqA44rthZ8ie2QXMNeKRTHCNY2nXvo=", - version = "v3.0.0-20200313102051-9f266ea9e77c", - ) - go_repository( - name = "io_opentelemetry_go_proto_otlp", - importpath = "go.opentelemetry.io/proto/otlp", - sum = "h1:rwOQPCuKAKmwGKq2aVNnYIibI6wnV7EvzgfTCzcdGg8=", - version = "v0.7.0", - ) - go_repository( - name = "org_golang_google_appengine", - importpath = "google.golang.org/appengine", - sum = "h1:FZR1q0exgwxzPzp/aF+VccGrSfxfPpkBqjIIEq3ru6c=", - version = "v1.6.7", - ) - go_repository( - name = "org_golang_google_genproto", - importpath = "google.golang.org/genproto", - sum = "h1:KpwkzHKEF7B9Zxg18WzOa7djJ+Ha5DzthMyZYQfEn2A=", - version = "v0.0.0-20230410155749-daa745c078e1", - ) - go_repository( - name = "org_golang_google_grpc", - importpath = "google.golang.org/grpc", - sum = "h1:fVRFRnXvU+x6C4IlHZewvJOVHoOv1TUuQyoRsYnB4bI=", - version = "v1.56.2", - ) - go_repository( - name = "org_golang_google_protobuf", - importpath = "google.golang.org/protobuf", - sum = "h1:g0LDEJHgrBl9N9r17Ru3sqWhkIx2NB67okBHPwC7hs8=", - version = "v1.31.0", - ) - go_repository( - name = "org_golang_x_crypto", - importpath = "golang.org/x/crypto", - sum = "h1:psW17arqaxU48Z5kZ0CQnkZWQJsqcURM6tKiBApRjXI=", - version = "v0.0.0-20200622213623-75b288015ac9", - ) - go_repository( - name = "org_golang_x_exp", - importpath = "golang.org/x/exp", - sum = "h1:c2HOrn5iMezYjSlGPncknSEr/8x5LELb/ilJbXi9DEA=", - version = "v0.0.0-20190121172915-509febef88a4", - ) - go_repository( - name = "org_golang_x_lint", - importpath = "golang.org/x/lint", - sum = "h1:XQyxROzUlZH+WIQwySDgnISgOivlhjIEwaQaJEJrrN0=", - version = "v0.0.0-20190313153728-d0100b6bd8b3", - ) - go_repository( - name = "org_golang_x_mod", - importpath = "golang.org/x/mod", - sum = "h1:LUYupSeNrTNCGzR/hVBk2NHZO4hXcVaW1k4Qx7rjPx8=", - version = "v0.8.0", - ) - go_repository( - name = "org_golang_x_net", - importpath = "golang.org/x/net", - sum = "h1:aWJ/m6xSmxWBx+V0XRHTlrYrPG56jKsLdTFmsSsCzOM=", - version = "v0.9.0", - ) - go_repository( - name = "org_golang_x_oauth2", - importpath = "golang.org/x/oauth2", - sum = "h1:qe6s0zUXlPX80/dITx3440hWZ7GwMwgDDyrSGTPJG/g=", - version = "v0.7.0", - ) - go_repository( - name = "org_golang_x_sync", - importpath = "golang.org/x/sync", - sum = "h1:8gQV6CLnAEikrhgkHFbMAEhagSSnXWGV915qUMm9mrU=", - version = "v0.0.0-20190423024810-112230192c58", - ) - go_repository( - name = "org_golang_x_sys", - importpath = "golang.org/x/sys", - sum = "h1:3jlCCIQZPdOYu1h8BkNvLz8Kgwtae2cagcG/VamtZRU=", - version = "v0.7.0", - ) - go_repository( - name = "org_golang_x_term", - importpath = "golang.org/x/term", - sum = "h1:BEvjmm5fURWqcfbSKTdpkDXYBrUS1c0m8agp14W48vQ=", - version = "v0.7.0", - ) - go_repository( - name = "org_golang_x_text", - importpath = "golang.org/x/text", - sum = "h1:2sjJmO8cDvYveuX97RDLsxlyUxLl+GHoLxBiRdHllBE=", - version = "v0.9.0", - ) - go_repository( - name = "org_golang_x_tools", - importpath = "golang.org/x/tools", - sum = "h1:BOw41kyTf3PuCW1pVQf8+Cyg8pMlkYB1oo9iJ6D/lKM=", - version = "v0.6.0", - ) - go_repository( - name = "org_golang_x_xerrors", - importpath = "golang.org/x/xerrors", - sum = "h1:go1bK/D/BFZV2I8cIQd1NKEZ+0owSTG1fDTci4IqFcE=", - version = "v0.0.0-20200804184101-5ec99f83aff1", - ) - go_repository( - name = "org_mozilla_go_pkcs7", - importpath = "go.mozilla.org/pkcs7", - sum = "h1:CCriYyAfq1Br1aIYettdHZTy8mBTIPo7We18TuO/bak=", - version = "v0.0.0-20210826202110-33d05740a352", - ) diff --git a/dhcp/BUILD.bazel b/dhcp/BUILD.bazel new file mode 100644 index 0000000..f04dd8b --- /dev/null +++ b/dhcp/BUILD.bazel @@ -0,0 +1,19 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "dhcp", + srcs = ["dhcp.go"], + importpath = "github.com/openconfig/bootz/dhcp", + visibility = ["//visibility:public"], + deps = [ + "//dhcp/plugins/bootz", + "//dhcp/plugins/slease", + "@com_github_coredhcp_coredhcp//config", + "@com_github_coredhcp_coredhcp//logger", + "@com_github_coredhcp_coredhcp//plugins", + "@com_github_coredhcp_coredhcp//plugins/dns", + "@com_github_coredhcp_coredhcp//plugins/leasetime", + "@com_github_coredhcp_coredhcp//plugins/serverid", + "@com_github_coredhcp_coredhcp//server", + ], +) diff --git a/dhcp/main/BUILD.bazel b/dhcp/main/BUILD.bazel new file mode 100644 index 0000000..4c0b704 --- /dev/null +++ b/dhcp/main/BUILD.bazel @@ -0,0 +1,18 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") + +go_library( + name = "main_lib", + srcs = ["dhcp.go"], + importpath = "github.com/openconfig/bootz/dhcp/main", + visibility = ["//visibility:private"], + deps = [ + "//dhcp", + "@com_github_golang_glog//:glog", + ], +) + +go_binary( + name = "main", + embed = [":main_lib"], + visibility = ["//visibility:public"], +) diff --git a/dhcp/plugins/bootz/BUILD.bazel b/dhcp/plugins/bootz/BUILD.bazel new file mode 100644 index 0000000..9b01860 --- /dev/null +++ b/dhcp/plugins/bootz/BUILD.bazel @@ -0,0 +1,15 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "bootz", + srcs = ["bootz.go"], + importpath = "github.com/openconfig/bootz/dhcp/plugins/bootz", + visibility = ["//visibility:public"], + deps = [ + "@com_github_coredhcp_coredhcp//handler", + "@com_github_coredhcp_coredhcp//logger", + "@com_github_coredhcp_coredhcp//plugins", + "@com_github_insomniacslk_dhcp//dhcpv4", + "@com_github_insomniacslk_dhcp//dhcpv6", + ], +) diff --git a/dhcp/plugins/slease/BUILD.bazel b/dhcp/plugins/slease/BUILD.bazel new file mode 100644 index 0000000..bf60737 --- /dev/null +++ b/dhcp/plugins/slease/BUILD.bazel @@ -0,0 +1,15 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_library") + +go_library( + name = "slease", + srcs = ["slease.go"], + importpath = "github.com/openconfig/bootz/dhcp/plugins/slease", + visibility = ["//visibility:public"], + deps = [ + "@com_github_coredhcp_coredhcp//handler", + "@com_github_coredhcp_coredhcp//logger", + "@com_github_coredhcp_coredhcp//plugins", + "@com_github_insomniacslk_dhcp//dhcpv4", + "@com_github_insomniacslk_dhcp//dhcpv6", + ], +) diff --git a/go.mod b/go.mod index a33c857..dcd66d6 100644 --- a/go.mod +++ b/go.mod @@ -1,24 +1,24 @@ module github.com/openconfig/bootz -go 1.21 +go 1.23.4 require ( github.com/coredhcp/coredhcp v0.0.0-20230808195049-3e32ddb5ac86 - github.com/golang/glog v1.1.2 - github.com/google/go-cmp v0.5.9 + github.com/golang/glog v1.2.4 + github.com/google/go-cmp v0.6.0 github.com/h-fam/errdiff v1.0.2 github.com/insomniacslk/dhcp v0.0.0-20230908212754-65c27093e38a github.com/openconfig/gnmi v0.10.0 github.com/openconfig/gnsi v1.4.3 go.mozilla.org/pkcs7 v0.0.0-20210826202110-33d05740a352 - google.golang.org/grpc v1.59.0 - google.golang.org/protobuf v1.33.0 + google.golang.org/grpc v1.69.4 + google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1 + google.golang.org/protobuf v1.36.2 ) require ( github.com/chappjc/logrus-prefix v0.0.0-20180227015900-3a1d64819adb // indirect github.com/fsnotify/fsnotify v1.6.0 // indirect - github.com/golang/protobuf v1.5.3 // indirect github.com/google/gopacket v1.1.19 // indirect github.com/hashicorp/hcl v1.0.0 // indirect github.com/josharian/native v1.1.0 // indirect @@ -40,12 +40,12 @@ require ( github.com/spf13/viper v1.16.0 // indirect github.com/subosito/gotenv v1.4.2 // indirect github.com/u-root/uio v0.0.0-20230305220412-3e8cd9d6bf63 // indirect - golang.org/x/crypto v0.31.0 // indirect - golang.org/x/net v0.33.0 // indirect - golang.org/x/sys v0.28.0 // indirect - golang.org/x/term v0.27.0 // indirect + golang.org/x/crypto v0.32.0 // indirect + golang.org/x/net v0.34.0 // indirect + golang.org/x/sys v0.29.0 // indirect + golang.org/x/term v0.28.0 // indirect golang.org/x/text v0.21.0 // indirect - google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d // indirect + google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422 // indirect gopkg.in/ini.v1 v1.67.0 // indirect gopkg.in/yaml.v3 v3.0.1 // indirect ) diff --git a/go.sum b/go.sum index 3b34516..39d9402 100644 --- a/go.sum +++ b/go.sum @@ -67,9 +67,13 @@ github.com/fsnotify/fsnotify v1.6.0/go.mod h1:sl3t1tCWJFWoRz9R8WJCbQihKKwmorjAbS github.com/go-gl/glfw v0.0.0-20190409004039-e6da0acd62b1/go.mod h1:vR7hzQXu2zJy9AVAgeJqvqgH9Q5CA+iKCZ2gyEVpxRU= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20191125211704-12ad95a8df72/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= github.com/go-gl/glfw/v3.3/glfw v0.0.0-20200222043503-6f7a984d4dc4/go.mod h1:tQ2UAYgL5IevRw8kRxooKSPJfGvJ9fJQFa0TUsXzTg8= +github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY= +github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY= +github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag= +github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE= github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q= -github.com/golang/glog v1.1.2 h1:DVjP2PbBOzHyzA+dn3WhHIq4NdVu3Q+pvivFICf/7fo= -github.com/golang/glog v1.1.2/go.mod h1:zR+okUeTbrL6EL3xHUDxZuEtGv04p5shwip1+mL/rLQ= +github.com/golang/glog v1.2.4 h1:CNNw5U8lSiiBk7druxtSHHTsRWcxKoac6kZKm2peBBc= +github.com/golang/glog v1.2.4/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w= github.com/golang/groupcache v0.0.0-20190702054246-869f871628b6/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20191227052852-215e87163ea7/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= github.com/golang/groupcache v0.0.0-20200121045136-8c9f03a8e57e/go.mod h1:cIg4eruTrX1D+g88fzRXU5OdNfaM+9IcxsU14FzY7Hc= @@ -94,9 +98,8 @@ github.com/golang/protobuf v1.4.0/go.mod h1:jodUvKwWbYaEsadDk5Fwe5c77LiNKVO9IDvq github.com/golang/protobuf v1.4.1/go.mod h1:U8fpvMrcmy5pZrNK1lt4xCsGvpyWQ/VVv6QDs8UjoX8= github.com/golang/protobuf v1.4.2/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= github.com/golang/protobuf v1.4.3/go.mod h1:oDoupMAO8OvCJWAcko0GGGIgR6R6ocIYbsSw735rRwI= -github.com/golang/protobuf v1.5.0/go.mod h1:FsONVRAS9T7sI+LIUmWTfcYkHO4aIWwzhcaSAoJOfIk= -github.com/golang/protobuf v1.5.3 h1:KhyjKVUg7Usr/dYsdSqoFveMYd5ko72D+zANwlG1mmg= -github.com/golang/protobuf v1.5.3/go.mod h1:XVQd3VNwM+JqD3oG2Ue2ip4fOMUkwXdXDdiuN0vRsmY= +github.com/golang/protobuf v1.5.4 h1:i7eJL8qZTpSEXOPTxNKhASYpMn+8e5Q6AdndVa1dWek= +github.com/golang/protobuf v1.5.4/go.mod h1:lnTiLA8Wa4RWRcIUkrtSVa5nRhsEGBg48fD6rSs7xps= github.com/google/btree v0.0.0-20180813153112-4030bb1f1f0c/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/btree v1.0.0/go.mod h1:lNA+9X1NB3Zf8V7Ke586lFgjr2dZNuvo3lPJSGZ5JPQ= github.com/google/go-cmp v0.2.0/go.mod h1:oXzfMopK8JAjlY9xF4vHSVASa0yLyX7SntLO5aqRK0M= @@ -108,9 +111,8 @@ github.com/google/go-cmp v0.5.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/ github.com/google/go-cmp v0.5.1/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.2/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE= -github.com/google/go-cmp v0.5.9 h1:O2Tfq5qg4qc4AmwVlvv0oLiVAGB7enBSJ2x2DqQFi38= -github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= +github.com/google/go-cmp v0.6.0 h1:ofyhxvXcZhMsU5ulbFiLKl/XBFqE1GSq7atu8tAmTRI= +github.com/google/go-cmp v0.6.0/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY= github.com/google/gopacket v1.1.19 h1:ves8RnFZPGiFnTS0uPQStjwru6uO6h+nlr9j6fL7kF8= github.com/google/gopacket v1.1.19/go.mod h1:iJ8V8n6KS+z2U1A8pUwu8bW5SyEMkXJB8Yo/Vo+TKTo= github.com/google/martian v2.1.0+incompatible/go.mod h1:9I4somxYTbIHy5NJKHRl3wXiIaQGbYVAs8BPL6v8lEs= @@ -128,6 +130,8 @@ github.com/google/pprof v0.0.0-20201203190320-1bf35d6f28c2/go.mod h1:kpwsk12EmLe github.com/google/pprof v0.0.0-20201218002935-b9804c9f04c2/go.mod h1:kpwsk12EmLew5upagYY7GY0pfYCcupk39gWOCRROcvE= github.com/google/renameio v0.1.0/go.mod h1:KWCgfxg9yswjAJkECMjeO8J8rahYeXnNhOm40UhjYkI= github.com/google/uuid v1.1.2/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= +github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0= +github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo= github.com/googleapis/gax-go/v2 v2.0.4/go.mod h1:0Wqv26UfaUD9n4G6kQubkQ+KchISgw+vpHVxEJEs9eg= github.com/googleapis/gax-go/v2 v2.0.5/go.mod h1:DWXyrwAJ9X0FpwwEdw+IPEYBICEFu5mhpdKc/us6bOk= github.com/googleapis/google-cloud-go-testing v0.0.0-20200911160855-bcd43fbb19e8/go.mod h1:dvDLG8qkwmyD9a/MJJN3XJcT3xFxOKAvTZGvuZmac9g= @@ -239,6 +243,16 @@ go.opencensus.io v0.22.2/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.3/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.4/go.mod h1:yxeiOL68Rb0Xd1ddK5vPZ/oVn4vY4Ynel7k9FzqtOIw= go.opencensus.io v0.22.5/go.mod h1:5pWMHQbX5EPX2/62yrJeAkowc+lfs/XD7Uxpq3pI6kk= +go.opentelemetry.io/otel v1.31.0 h1:NsJcKPIW0D0H3NgzPDHmo0WW6SptzPdqg/L1zsIm2hY= +go.opentelemetry.io/otel v1.31.0/go.mod h1:O0C14Yl9FgkjqcCZAsE053C13OaddMYr/hz6clDkEJE= +go.opentelemetry.io/otel/metric v1.31.0 h1:FSErL0ATQAmYHUIzSezZibnyVlft1ybhy4ozRPcF2fE= +go.opentelemetry.io/otel/metric v1.31.0/go.mod h1:C3dEloVbLuYoX41KpmAhOqNriGbA+qqH6PQ5E5mUfnY= +go.opentelemetry.io/otel/sdk v1.31.0 h1:xLY3abVHYZ5HSfOg3l2E5LUj2Cwva5Y7yGxnSW9H5Gk= +go.opentelemetry.io/otel/sdk v1.31.0/go.mod h1:TfRbMdhvxIIr/B2N2LQW2S5v9m3gOQ/08KsbbO5BPT0= +go.opentelemetry.io/otel/sdk/metric v1.31.0 h1:i9hxxLJF/9kkvfHppyLL55aW7iIJz4JjxTeYusH7zMc= +go.opentelemetry.io/otel/sdk/metric v1.31.0/go.mod h1:CRInTMVvNhUKgSAMbKyTMxqOBC0zgyxzW55lZzX43Y8= +go.opentelemetry.io/otel/trace v1.31.0 h1:ffjsj1aRouKewfr85U2aGagJ46+MvodynlQ1HYdmJys= +go.opentelemetry.io/otel/trace v1.31.0/go.mod h1:TXZkRk7SM2ZQLtR6eoAWQFIHPvzQ06FJAsO1tJg480A= golang.org/x/crypto v0.0.0-20190308221718-c2843e01d9a2/go.mod h1:djNgcEr1/C05ACkg1iLfiJU5Ep61QUkGW8qpdssI0+w= golang.org/x/crypto v0.0.0-20190510104115-cbcb75029529/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= golang.org/x/crypto v0.0.0-20190605123033-f99c8df09eb5/go.mod h1:yigFU9vqHzYiE8UmvKecakEJjdnWj3jj499lnFckfCI= @@ -246,8 +260,8 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto= golang.org/x/crypto v0.0.0-20210421170649-83a5a9bb288b/go.mod h1:T9bdIzuCu7OtxOm1hfPfRQxPLYneinmdGuTeoZ9dtd4= golang.org/x/crypto v0.0.0-20220722155217-630584e8d5aa/go.mod h1:IxCIyHEi3zRg3s0A5j5BB6A9Jmi73HwBIUl50j+osU4= -golang.org/x/crypto v0.31.0 h1:ihbySMvVjLAeSH1IbfcRTkD/iNscyz8rGzjF/E5hV6U= -golang.org/x/crypto v0.31.0/go.mod h1:kDsLvtWBEx7MV9tJOj9bnXsPbxwJQ6csT/x4KIN4Ssk= +golang.org/x/crypto v0.32.0 h1:euUpcYgM8WcP71gNpTqQCn6rC2t6ULUPiOzfWaXVVfc= +golang.org/x/crypto v0.32.0/go.mod h1:ZnnJkOaASj8g0AjIduWNlq2NRxL0PlBrbKVyZ6V/Ugc= golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190306152737-a1d7652674e8/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA= golang.org/x/exp v0.0.0-20190510132918-efd6b22b2522/go.mod h1:ZjyILWgesfNpC6sMxTJOJm9Kp84zZh5NQWvqDGG3Qr8= @@ -313,8 +327,8 @@ golang.org/x/net v0.0.0-20201209123823-ac852fbbde11/go.mod h1:m0MpNAwzfU5UDzcl9v golang.org/x/net v0.0.0-20201224014010-6772e930b67b/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20210226172049-e18ecbb05110/go.mod h1:m0MpNAwzfU5UDzcl9v0D8zg8gWTRqZa9RBIspLL5mdg= golang.org/x/net v0.0.0-20211112202133-69e39bad7dc2/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y= -golang.org/x/net v0.33.0 h1:74SYHlV8BIgHIFC/LrYkOGIwL19eTYXQ5wc6TBuO36I= -golang.org/x/net v0.33.0/go.mod h1:HXLR5J+9DxmrqMwG9qjGCxZ+zKXxBru04zlTvWlWuN4= +golang.org/x/net v0.34.0 h1:Mb7Mrk043xzHgnRM88suvJFwzVrRfHEHJEl5/71CKw0= +golang.org/x/net v0.34.0/go.mod h1:di0qlW3YNM5oh6GqDGQr92MyTozJPmybPK4Ev/Gm31k= golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U= golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= golang.org/x/oauth2 v0.0.0-20190604053449-0f29369cfe45/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw= @@ -377,11 +391,11 @@ golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBc golang.org/x/sys v0.0.0-20220811171246-fbc7d0a398ab/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.0.0-20220908164124-27713097b956/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg= -golang.org/x/sys v0.28.0 h1:Fksou7UEQUWlKvIdsqzJmUmCX3cZuD2+P3XyyzwMhlA= -golang.org/x/sys v0.28.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= +golang.org/x/sys v0.29.0 h1:TPYlXGxvx1MGTn2GiZDhnjPA9wZzZeGKHHmKhHYvgaU= +golang.org/x/sys v0.29.0/go.mod h1:/VUhepiaJMQUp4+oa/7Zr1D23ma6VTLIYjOOTFZPUcA= golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo= -golang.org/x/term v0.27.0 h1:WP60Sv1nlK1T6SupCHbXzSaN0b9wUmsPoRS9b61A23Q= -golang.org/x/term v0.27.0/go.mod h1:iMsnZpn0cago0GOrHO2+Y7u7JPn5AylBrcoWkElMTSM= +golang.org/x/term v0.28.0 h1:/Ts8HFuMR2E6IP/jlo7QVLZHggjKQbhu/7H0LJFr3Gg= +golang.org/x/term v0.28.0/go.mod h1:Sw/lC2IAUZ92udQNf3WodGtn4k/XoLyZoh8v/8uiwek= golang.org/x/text v0.0.0-20170915032832-14c0d48ead0c/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= golang.org/x/text v0.3.1-0.20180807135948-17ff2d5776d2/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ= @@ -510,8 +524,8 @@ google.golang.org/genproto v0.0.0-20201210142538-e3217bee35cc/go.mod h1:FWY/as6D google.golang.org/genproto v0.0.0-20201214200347-8c77b98c765d/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210108203827-ffc7fda8c3d7/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= google.golang.org/genproto v0.0.0-20210226172003-ab064af71705/go.mod h1:FWY/as6DDZQgahTzZj3fqbO1CbirC29ZNUFHwi0/+no= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d h1:uvYuEyMHKNt+lT4K3bN6fGswmK8qSvcreM3BwjDh+y4= -google.golang.org/genproto/googleapis/rpc v0.0.0-20230822172742-b8732ec3820d/go.mod h1:+Bk1OCOj40wS2hwAMA+aCW9ypzm63QTBBHp6lQ3p+9M= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422 h1:3UsHvIr4Wc2aW4brOaSCmcxh9ksica6fHEr8P1XhkYw= +google.golang.org/genproto/googleapis/rpc v0.0.0-20250106144421-5f5ef82da422/go.mod h1:3ENsm/5D1mzDyhpzeRi1NR784I0BcofWBoSc5QqqMK4= google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c= google.golang.org/grpc v1.20.1/go.mod h1:10oTOabMzJvdu6/UiuZezV6QK5dSlG84ov/aaiqXj38= google.golang.org/grpc v1.21.1/go.mod h1:oYelfM1adQP15Ek0mdvEgi9Df8B9CZIaU1084ijfRaM= @@ -529,8 +543,10 @@ google.golang.org/grpc v1.31.1/go.mod h1:N36X2cJ7JwdamYAgDz+s+rVMFjt3numwzf/HckM google.golang.org/grpc v1.33.2/go.mod h1:JMHMWHQWaTccqQQlmk3MJZS+GWXOdAesneDmEnv2fbc= google.golang.org/grpc v1.34.0/go.mod h1:WotjhfgOW/POjDeRt8vscBtXq+2VjORFy659qA51WJ8= google.golang.org/grpc v1.35.0/go.mod h1:qjiiYl8FncCW8feJPdyg3v6XW24KsRHe+dy9BAGRRjU= -google.golang.org/grpc v1.59.0 h1:Z5Iec2pjwb+LEOqzpB2MR12/eKFhDPhuqW91O+4bwUk= -google.golang.org/grpc v1.59.0/go.mod h1:aUPDwccQo6OTjy7Hct4AfBPD1GptF4fyUjIkQ9YtF98= +google.golang.org/grpc v1.69.4 h1:MF5TftSMkd8GLw/m0KM6V8CMOCY6NZ1NQDPGFgbTt4A= +google.golang.org/grpc v1.69.4/go.mod h1:vyjdE6jLBI76dgpDojsFGNaHlxdjXN9ghpnd2o7JGZ4= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1 h1:F29+wU6Ee6qgu9TddPgooOdaqsxTMunOoj8KA5yuS5A= +google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1/go.mod h1:5KF+wpkbTSbGcR9zteSqZV6fqFOWBl4Yde8En8MryZA= google.golang.org/protobuf v0.0.0-20200109180630-ec00e32a8dfd/go.mod h1:DFci5gLYBciE7Vtevhsrf46CRTquxDuWsQurQQe4oz8= google.golang.org/protobuf v0.0.0-20200221191635-4d8936d0db64/go.mod h1:kwYJMbMJ01Woi6D6+Kah6886xMZcty6N08ah7+eCXa0= google.golang.org/protobuf v0.0.0-20200228230310-ab0ca4ff8a60/go.mod h1:cfTl7dwQJ+fmap5saPgwCLgHXTUD7jkjRqWcaiX5VyM= @@ -541,10 +557,8 @@ google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2 google.golang.org/protobuf v1.23.1-0.20200526195155-81db48ad09cc/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU= google.golang.org/protobuf v1.24.0/go.mod h1:r/3tXBNzIEhYS9I1OUVjXDlt8tc493IdKGjtUeSXeh4= google.golang.org/protobuf v1.25.0/go.mod h1:9JNX74DMeImyA3h4bdi1ymwjUzf21/xIlbajtzgsN7c= -google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw= -google.golang.org/protobuf v1.26.0/go.mod h1:9q0QmTI4eRPtz6boOQmLYwt+qCgq0jsYwAQnmE0givc= -google.golang.org/protobuf v1.33.0 h1:uNO2rsAINq/JlFpSdYEKIZ0uKD/R9cpdv0T+yoGwGmI= -google.golang.org/protobuf v1.33.0/go.mod h1:c6P6GXX6sHbq/GpV6MGZEdwhWPcYBgnhAHhKbcUYpos= +google.golang.org/protobuf v1.36.2 h1:R8FeyR1/eLmkutZOM5CWghmo5itiG9z0ktFlTVLuTmU= +google.golang.org/protobuf v1.36.2/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE= gopkg.in/check.v1 v0.0.0-20161208181325-20d25e280405/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127 h1:qIbj1fsPNlZgppZ+VLlY7N33q108Sa+fhmuc+sWQYwY= gopkg.in/check.v1 v1.0.0-20180628173108-788fd7840127/go.mod h1:Co6ibVJAznAaIkqp8huTwlJQCZ016jof/cbN4VW5Yz0= diff --git a/proto/BUILD.bazel b/proto/BUILD.bazel index 8c9e9f7..0f7dada 100644 --- a/proto/BUILD.bazel +++ b/proto/BUILD.bazel @@ -12,25 +12,22 @@ # See the License for the specific language governing permissions and # limitations under the License. +load("@com_google_protobuf//bazel:proto_library.bzl", "proto_library") load("@io_bazel_rules_go//go:def.bzl", "go_library") load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") -load("@rules_proto//proto:defs.bzl", "proto_library") -load("//:common.bzl", "use_new_compilers") package(default_visibility = ["//visibility:public"]) -use_new_compilers() - proto_library( name = "bootz_proto", srcs = ["bootz.proto"], import_prefix = "github.com/openconfig/bootz", deps = [ - "@com_github_openconfig_gnsi//authz:authz_proto", - "@com_github_openconfig_gnsi//certz:certz_proto", - "@com_github_openconfig_gnsi//credentialz:credentialz_proto", - "@com_github_openconfig_gnsi//pathz:pathz_proto", "@com_google_protobuf//:struct_proto", + "@openconfig_gnsi//authz:authz_proto", + "@openconfig_gnsi//certz:certz_proto", + "@openconfig_gnsi//credentialz:credentialz_proto", + "@openconfig_gnsi//pathz:pathz_proto", ], ) @@ -40,14 +37,17 @@ proto_library( go_proto_library( name = "bootz_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], + compilers = [ + "@io_bazel_rules_go//proto:go_grpc_v2", + "@io_bazel_rules_go//proto:go_proto", + ], importpath = "github.com/openconfig/bootz/proto/bootz", proto = ":bootz_proto", deps = [ - "@com_github_openconfig_gnsi//authz:authz_go_proto", - "@com_github_openconfig_gnsi//certz:certz_go_proto", - "@com_github_openconfig_gnsi//credentialz:credentialz_go_proto", - "@com_github_openconfig_gnsi//pathz:pathz_go_proto", + "@openconfig_gnsi//authz:authz_go_proto", + "@openconfig_gnsi//certz:certz_go_proto", + "@openconfig_gnsi//credentialz:credentialz_go_proto", + "@openconfig_gnsi//pathz:pathz_go_proto", ], ) diff --git a/proto/bootz/bootz.pb.go b/proto/bootz/bootz.pb.go index d775783..ccf7472 100755 --- a/proto/bootz/bootz.pb.go +++ b/proto/bootz/bootz.pb.go @@ -1,20 +1,16 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 -// protoc v3.21.10 +// protoc-gen-go v1.36.2 +// protoc v5.29.3 // source: github.com/openconfig/bootz/proto/bootz.proto package bootz import ( - context "context" authz "github.com/openconfig/gnsi/authz" certz "github.com/openconfig/gnsi/certz" credentialz "github.com/openconfig/gnsi/credentialz" pathz "github.com/openconfig/gnsi/pathz" - grpc "google.golang.org/grpc" - codes "google.golang.org/grpc/codes" - status "google.golang.org/grpc/status" protoreflect "google.golang.org/protobuf/reflect/protoreflect" protoimpl "google.golang.org/protobuf/runtime/protoimpl" structpb "google.golang.org/protobuf/types/known/structpb" @@ -180,22 +176,19 @@ func (ReportStatusRequest_BootstrapStatus) EnumDescriptor() ([]byte, []int) { } type GetBootstrapDataRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - ChassisDescriptor *ChassisDescriptor `protobuf:"bytes,1,opt,name=chassis_descriptor,json=chassisDescriptor,proto3" json:"chassis_descriptor,omitempty"` - ControlCardState *ControlCardState `protobuf:"bytes,2,opt,name=control_card_state,json=controlCardState,proto3" json:"control_card_state,omitempty"` - Nonce string `protobuf:"bytes,1001,opt,name=nonce,proto3" json:"nonce,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + ChassisDescriptor *ChassisDescriptor `protobuf:"bytes,1,opt,name=chassis_descriptor,json=chassisDescriptor,proto3" json:"chassis_descriptor,omitempty"` + ControlCardState *ControlCardState `protobuf:"bytes,2,opt,name=control_card_state,json=controlCardState,proto3" json:"control_card_state,omitempty"` + Nonce string `protobuf:"bytes,1001,opt,name=nonce,proto3" json:"nonce,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetBootstrapDataRequest) Reset() { *x = GetBootstrapDataRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetBootstrapDataRequest) String() string { @@ -206,7 +199,7 @@ func (*GetBootstrapDataRequest) ProtoMessage() {} func (x *GetBootstrapDataRequest) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -243,23 +236,20 @@ func (x *GetBootstrapDataRequest) GetNonce() string { } type ChassisDescriptor struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Manufacturer string `protobuf:"bytes,1,opt,name=manufacturer,proto3" json:"manufacturer,omitempty"` + PartNumber string `protobuf:"bytes,2,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` + SerialNumber string `protobuf:"bytes,3,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` + ControlCards []*ControlCard `protobuf:"bytes,4,rep,name=control_cards,json=controlCards,proto3" json:"control_cards,omitempty"` unknownFields protoimpl.UnknownFields - - Manufacturer string `protobuf:"bytes,1,opt,name=manufacturer,proto3" json:"manufacturer,omitempty"` - PartNumber string `protobuf:"bytes,2,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` - SerialNumber string `protobuf:"bytes,3,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` - ControlCards []*ControlCard `protobuf:"bytes,4,rep,name=control_cards,json=controlCards,proto3" json:"control_cards,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ChassisDescriptor) Reset() { *x = ChassisDescriptor{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ChassisDescriptor) String() string { @@ -270,7 +260,7 @@ func (*ChassisDescriptor) ProtoMessage() {} func (x *ChassisDescriptor) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -314,24 +304,21 @@ func (x *ChassisDescriptor) GetControlCards() []*ControlCard { } type ControlCard struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + PartNumber string `protobuf:"bytes,1,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` + SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` + // Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. + Slot int32 `protobuf:"varint,3,opt,name=slot,proto3" json:"slot,omitempty"` + SlotId string `protobuf:"bytes,4,opt,name=slot_id,json=slotId,proto3" json:"slot_id,omitempty"` unknownFields protoimpl.UnknownFields - - PartNumber string `protobuf:"bytes,1,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` - SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` - // Deprecated: Do not use. - Slot int32 `protobuf:"varint,3,opt,name=slot,proto3" json:"slot,omitempty"` - SlotId string `protobuf:"bytes,4,opt,name=slot_id,json=slotId,proto3" json:"slot_id,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ControlCard) Reset() { *x = ControlCard{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ControlCard) String() string { @@ -342,7 +329,7 @@ func (*ControlCard) ProtoMessage() {} func (x *ControlCard) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -371,7 +358,7 @@ func (x *ControlCard) GetSerialNumber() string { return "" } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. func (x *ControlCard) GetSlot() int32 { if x != nil { return x.Slot @@ -387,21 +374,18 @@ func (x *ControlCard) GetSlotId() string { } type ControlCardState struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + SerialNumber string `protobuf:"bytes,1,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` + Status ControlCardState_ControlCardStatus `protobuf:"varint,2,opt,name=status,proto3,enum=bootz.ControlCardState_ControlCardStatus" json:"status,omitempty"` unknownFields protoimpl.UnknownFields - - SerialNumber string `protobuf:"bytes,1,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` - Status ControlCardState_ControlCardStatus `protobuf:"varint,2,opt,name=status,proto3,enum=bootz.ControlCardState_ControlCardStatus" json:"status,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ControlCardState) Reset() { *x = ControlCardState{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ControlCardState) String() string { @@ -412,7 +396,7 @@ func (*ControlCardState) ProtoMessage() {} func (x *ControlCardState) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -442,30 +426,27 @@ func (x *ControlCardState) GetStatus() ControlCardState_ControlCardStatus { } type BootstrapDataResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SerialNum string `protobuf:"bytes,1,opt,name=serial_num,json=serialNum,proto3" json:"serial_num,omitempty"` - IntendedImage *SoftwareImage `protobuf:"bytes,2,opt,name=intended_image,json=intendedImage,proto3" json:"intended_image,omitempty"` - BootPasswordHash string `protobuf:"bytes,3,opt,name=boot_password_hash,json=bootPasswordHash,proto3" json:"boot_password_hash,omitempty"` - ServerTrustCert string `protobuf:"bytes,4,opt,name=server_trust_cert,json=serverTrustCert,proto3" json:"server_trust_cert,omitempty"` - BootConfig *BootConfig `protobuf:"bytes,5,opt,name=boot_config,json=bootConfig,proto3" json:"boot_config,omitempty"` - Credentials *Credentials `protobuf:"bytes,6,opt,name=credentials,proto3" json:"credentials,omitempty"` - Pathz *pathz.UploadRequest `protobuf:"bytes,7,opt,name=pathz,proto3" json:"pathz,omitempty"` - Authz *authz.UploadRequest `protobuf:"bytes,8,opt,name=authz,proto3" json:"authz,omitempty"` - // Deprecated: Do not use. + state protoimpl.MessageState `protogen:"open.v1"` + SerialNum string `protobuf:"bytes,1,opt,name=serial_num,json=serialNum,proto3" json:"serial_num,omitempty"` + IntendedImage *SoftwareImage `protobuf:"bytes,2,opt,name=intended_image,json=intendedImage,proto3" json:"intended_image,omitempty"` + BootPasswordHash string `protobuf:"bytes,3,opt,name=boot_password_hash,json=bootPasswordHash,proto3" json:"boot_password_hash,omitempty"` + ServerTrustCert string `protobuf:"bytes,4,opt,name=server_trust_cert,json=serverTrustCert,proto3" json:"server_trust_cert,omitempty"` + BootConfig *BootConfig `protobuf:"bytes,5,opt,name=boot_config,json=bootConfig,proto3" json:"boot_config,omitempty"` + Credentials *Credentials `protobuf:"bytes,6,opt,name=credentials,proto3" json:"credentials,omitempty"` + Pathz *pathz.UploadRequest `protobuf:"bytes,7,opt,name=pathz,proto3" json:"pathz,omitempty"` + Authz *authz.UploadRequest `protobuf:"bytes,8,opt,name=authz,proto3" json:"authz,omitempty"` + // Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. Certificates *certz.UploadRequest `protobuf:"bytes,9,opt,name=certificates,proto3" json:"certificates,omitempty"` CertzProfiles *CertzProfiles `protobuf:"bytes,10,opt,name=certz_profiles,json=certzProfiles,proto3" json:"certz_profiles,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *BootstrapDataResponse) Reset() { *x = BootstrapDataResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *BootstrapDataResponse) String() string { @@ -476,7 +457,7 @@ func (*BootstrapDataResponse) ProtoMessage() {} func (x *BootstrapDataResponse) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -547,7 +528,7 @@ func (x *BootstrapDataResponse) GetAuthz() *authz.UploadRequest { return nil } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. func (x *BootstrapDataResponse) GetCertificates() *certz.UploadRequest { if x != nil { return x.Certificates @@ -563,20 +544,17 @@ func (x *BootstrapDataResponse) GetCertzProfiles() *CertzProfiles { } type CertzProfiles struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Profiles []*CertzProfile `protobuf:"bytes,1,rep,name=profiles,proto3" json:"profiles,omitempty"` unknownFields protoimpl.UnknownFields - - Profiles []*CertzProfile `protobuf:"bytes,1,rep,name=profiles,proto3" json:"profiles,omitempty"` + sizeCache protoimpl.SizeCache } func (x *CertzProfiles) Reset() { *x = CertzProfiles{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *CertzProfiles) String() string { @@ -587,7 +565,7 @@ func (*CertzProfiles) ProtoMessage() {} func (x *CertzProfiles) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -610,21 +588,18 @@ func (x *CertzProfiles) GetProfiles() []*CertzProfile { } type CertzProfile struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + SslProfileId string `protobuf:"bytes,1,opt,name=ssl_profile_id,json=sslProfileId,proto3" json:"ssl_profile_id,omitempty"` + Certz *certz.UploadRequest `protobuf:"bytes,2,opt,name=certz,proto3" json:"certz,omitempty"` unknownFields protoimpl.UnknownFields - - SslProfileId string `protobuf:"bytes,1,opt,name=ssl_profile_id,json=sslProfileId,proto3" json:"ssl_profile_id,omitempty"` - Certz *certz.UploadRequest `protobuf:"bytes,2,opt,name=certz,proto3" json:"certz,omitempty"` + sizeCache protoimpl.SizeCache } func (x *CertzProfile) Reset() { *x = CertzProfile{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *CertzProfile) String() string { @@ -635,7 +610,7 @@ func (*CertzProfile) ProtoMessage() {} func (x *CertzProfile) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -665,21 +640,18 @@ func (x *CertzProfile) GetCertz() *certz.UploadRequest { } type BootstrapDataSigned struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Responses []*BootstrapDataResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` + Nonce string `protobuf:"bytes,2,opt,name=nonce,proto3" json:"nonce,omitempty"` unknownFields protoimpl.UnknownFields - - Responses []*BootstrapDataResponse `protobuf:"bytes,1,rep,name=responses,proto3" json:"responses,omitempty"` - Nonce string `protobuf:"bytes,2,opt,name=nonce,proto3" json:"nonce,omitempty"` + sizeCache protoimpl.SizeCache } func (x *BootstrapDataSigned) Reset() { *x = BootstrapDataSigned{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *BootstrapDataSigned) String() string { @@ -690,7 +662,7 @@ func (*BootstrapDataSigned) ProtoMessage() {} func (x *BootstrapDataSigned) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -720,25 +692,22 @@ func (x *BootstrapDataSigned) GetNonce() string { } type GetBootstrapDataResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - // Deprecated: Do not use. + state protoimpl.MessageState `protogen:"open.v1"` + // Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. SignedResponse *BootstrapDataSigned `protobuf:"bytes,1,opt,name=signed_response,json=signedResponse,proto3" json:"signed_response,omitempty"` OwnershipVoucher []byte `protobuf:"bytes,101,opt,name=ownership_voucher,json=ownershipVoucher,proto3" json:"ownership_voucher,omitempty"` OwnershipCertificate []byte `protobuf:"bytes,102,opt,name=ownership_certificate,json=ownershipCertificate,proto3" json:"ownership_certificate,omitempty"` ResponseSignature string `protobuf:"bytes,103,opt,name=response_signature,json=responseSignature,proto3" json:"response_signature,omitempty"` SerializedBootstrapData []byte `protobuf:"bytes,104,opt,name=serialized_bootstrap_data,json=serializedBootstrapData,proto3" json:"serialized_bootstrap_data,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GetBootstrapDataResponse) Reset() { *x = GetBootstrapDataResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[8] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[8] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GetBootstrapDataResponse) String() string { @@ -749,7 +718,7 @@ func (*GetBootstrapDataResponse) ProtoMessage() {} func (x *GetBootstrapDataResponse) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[8] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -764,7 +733,7 @@ func (*GetBootstrapDataResponse) Descriptor() ([]byte, []int) { return file_github_com_openconfig_bootz_proto_bootz_proto_rawDescGZIP(), []int{8} } -// Deprecated: Do not use. +// Deprecated: Marked as deprecated in github.com/openconfig/bootz/proto/bootz.proto. func (x *GetBootstrapDataResponse) GetSignedResponse() *BootstrapDataSigned { if x != nil { return x.SignedResponse @@ -801,24 +770,21 @@ func (x *GetBootstrapDataResponse) GetSerializedBootstrapData() []byte { } type SoftwareImage struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` + Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` + Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` + OsImageHash string `protobuf:"bytes,4,opt,name=os_image_hash,json=osImageHash,proto3" json:"os_image_hash,omitempty"` + HashAlgorithm string `protobuf:"bytes,5,opt,name=hash_algorithm,json=hashAlgorithm,proto3" json:"hash_algorithm,omitempty"` unknownFields protoimpl.UnknownFields - - Name string `protobuf:"bytes,1,opt,name=name,proto3" json:"name,omitempty"` - Version string `protobuf:"bytes,2,opt,name=version,proto3" json:"version,omitempty"` - Url string `protobuf:"bytes,3,opt,name=url,proto3" json:"url,omitempty"` - OsImageHash string `protobuf:"bytes,4,opt,name=os_image_hash,json=osImageHash,proto3" json:"os_image_hash,omitempty"` - HashAlgorithm string `protobuf:"bytes,5,opt,name=hash_algorithm,json=hashAlgorithm,proto3" json:"hash_algorithm,omitempty"` + sizeCache protoimpl.SizeCache } func (x *SoftwareImage) Reset() { *x = SoftwareImage{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[9] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[9] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *SoftwareImage) String() string { @@ -829,7 +795,7 @@ func (*SoftwareImage) ProtoMessage() {} func (x *SoftwareImage) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[9] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -880,22 +846,19 @@ func (x *SoftwareImage) GetHashAlgorithm() string { } type Credentials struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Credentials []*credentialz.AuthorizedKeysRequest `protobuf:"bytes,1,rep,name=credentials,proto3" json:"credentials,omitempty"` + Users []*credentialz.AuthorizedUsersRequest `protobuf:"bytes,2,rep,name=users,proto3" json:"users,omitempty"` + Passwords []*credentialz.PasswordRequest `protobuf:"bytes,3,rep,name=passwords,proto3" json:"passwords,omitempty"` unknownFields protoimpl.UnknownFields - - Credentials []*credentialz.AuthorizedKeysRequest `protobuf:"bytes,1,rep,name=credentials,proto3" json:"credentials,omitempty"` - Users []*credentialz.AuthorizedUsersRequest `protobuf:"bytes,2,rep,name=users,proto3" json:"users,omitempty"` - Passwords []*credentialz.PasswordRequest `protobuf:"bytes,3,rep,name=passwords,proto3" json:"passwords,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Credentials) Reset() { *x = Credentials{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[10] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[10] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Credentials) String() string { @@ -906,7 +869,7 @@ func (*Credentials) ProtoMessage() {} func (x *Credentials) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[10] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -943,23 +906,20 @@ func (x *Credentials) GetPasswords() []*credentialz.PasswordRequest { } type BootConfig struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Metadata *structpb.Struct `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - VendorConfig []byte `protobuf:"bytes,2,opt,name=vendor_config,json=vendorConfig,proto3" json:"vendor_config,omitempty"` - OcConfig []byte `protobuf:"bytes,3,opt,name=oc_config,json=ocConfig,proto3" json:"oc_config,omitempty"` - BootloaderConfig *structpb.Struct `protobuf:"bytes,4,opt,name=bootloader_config,json=bootloaderConfig,proto3" json:"bootloader_config,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Metadata *structpb.Struct `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + VendorConfig []byte `protobuf:"bytes,2,opt,name=vendor_config,json=vendorConfig,proto3" json:"vendor_config,omitempty"` + OcConfig []byte `protobuf:"bytes,3,opt,name=oc_config,json=ocConfig,proto3" json:"oc_config,omitempty"` + BootloaderConfig *structpb.Struct `protobuf:"bytes,4,opt,name=bootloader_config,json=bootloaderConfig,proto3" json:"bootloader_config,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *BootConfig) Reset() { *x = BootConfig{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[11] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[11] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *BootConfig) String() string { @@ -970,7 +930,7 @@ func (*BootConfig) ProtoMessage() {} func (x *BootConfig) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[11] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1014,22 +974,19 @@ func (x *BootConfig) GetBootloaderConfig() *structpb.Struct { } type ReportStatusRequest struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - + state protoimpl.MessageState `protogen:"open.v1"` Status ReportStatusRequest_BootstrapStatus `protobuf:"varint,1,opt,name=status,proto3,enum=bootz.ReportStatusRequest_BootstrapStatus" json:"status,omitempty"` StatusMessage string `protobuf:"bytes,2,opt,name=status_message,json=statusMessage,proto3" json:"status_message,omitempty"` States []*ControlCardState `protobuf:"bytes,3,rep,name=states,proto3" json:"states,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *ReportStatusRequest) Reset() { *x = ReportStatusRequest{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[12] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[12] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ReportStatusRequest) String() string { @@ -1040,7 +997,7 @@ func (*ReportStatusRequest) ProtoMessage() {} func (x *ReportStatusRequest) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[12] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1077,18 +1034,16 @@ func (x *ReportStatusRequest) GetStates() []*ControlCardState { } type EmptyResponse struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *EmptyResponse) Reset() { *x = EmptyResponse{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[13] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[13] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *EmptyResponse) String() string { @@ -1099,7 +1054,7 @@ func (*EmptyResponse) ProtoMessage() {} func (x *EmptyResponse) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[13] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -1348,7 +1303,7 @@ func file_github_com_openconfig_bootz_proto_bootz_proto_rawDescGZIP() []byte { var file_github_com_openconfig_bootz_proto_bootz_proto_enumTypes = make([]protoimpl.EnumInfo, 3) var file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes = make([]protoimpl.MessageInfo, 14) -var file_github_com_openconfig_bootz_proto_bootz_proto_goTypes = []interface{}{ +var file_github_com_openconfig_bootz_proto_bootz_proto_goTypes = []any{ (BootMode)(0), // 0: bootz.BootMode (ControlCardState_ControlCardStatus)(0), // 1: bootz.ControlCardState.ControlCardStatus (ReportStatusRequest_BootstrapStatus)(0), // 2: bootz.ReportStatusRequest.BootstrapStatus @@ -1413,176 +1368,6 @@ func file_github_com_openconfig_bootz_proto_bootz_proto_init() { if File_github_com_openconfig_bootz_proto_bootz_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBootstrapDataRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ChassisDescriptor); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ControlCard); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ControlCardState); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BootstrapDataResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CertzProfiles); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*CertzProfile); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BootstrapDataSigned); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[8].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GetBootstrapDataResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[9].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*SoftwareImage); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[10].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Credentials); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[11].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BootConfig); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[12].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ReportStatusRequest); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_proto_bootz_proto_msgTypes[13].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*EmptyResponse); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ @@ -1603,119 +1388,3 @@ func file_github_com_openconfig_bootz_proto_bootz_proto_init() { file_github_com_openconfig_bootz_proto_bootz_proto_goTypes = nil file_github_com_openconfig_bootz_proto_bootz_proto_depIdxs = nil } - -// Reference imports to suppress errors if they are not otherwise used. -var _ context.Context -var _ grpc.ClientConnInterface - -// This is a compile-time assertion to ensure that this generated file -// is compatible with the grpc package it is being compiled against. -const _ = grpc.SupportPackageIsVersion6 - -// BootstrapClient is the client API for Bootstrap service. -// -// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://godoc.org/google.golang.org/grpc#ClientConn.NewStream. -type BootstrapClient interface { - GetBootstrapData(ctx context.Context, in *GetBootstrapDataRequest, opts ...grpc.CallOption) (*GetBootstrapDataResponse, error) - ReportStatus(ctx context.Context, in *ReportStatusRequest, opts ...grpc.CallOption) (*EmptyResponse, error) -} - -type bootstrapClient struct { - cc grpc.ClientConnInterface -} - -func NewBootstrapClient(cc grpc.ClientConnInterface) BootstrapClient { - return &bootstrapClient{cc} -} - -func (c *bootstrapClient) GetBootstrapData(ctx context.Context, in *GetBootstrapDataRequest, opts ...grpc.CallOption) (*GetBootstrapDataResponse, error) { - out := new(GetBootstrapDataResponse) - err := c.cc.Invoke(ctx, "/bootz.Bootstrap/GetBootstrapData", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -func (c *bootstrapClient) ReportStatus(ctx context.Context, in *ReportStatusRequest, opts ...grpc.CallOption) (*EmptyResponse, error) { - out := new(EmptyResponse) - err := c.cc.Invoke(ctx, "/bootz.Bootstrap/ReportStatus", in, out, opts...) - if err != nil { - return nil, err - } - return out, nil -} - -// BootstrapServer is the server API for Bootstrap service. -type BootstrapServer interface { - GetBootstrapData(context.Context, *GetBootstrapDataRequest) (*GetBootstrapDataResponse, error) - ReportStatus(context.Context, *ReportStatusRequest) (*EmptyResponse, error) -} - -// UnimplementedBootstrapServer can be embedded to have forward compatible implementations. -type UnimplementedBootstrapServer struct { -} - -func (*UnimplementedBootstrapServer) GetBootstrapData(context.Context, *GetBootstrapDataRequest) (*GetBootstrapDataResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method GetBootstrapData not implemented") -} -func (*UnimplementedBootstrapServer) ReportStatus(context.Context, *ReportStatusRequest) (*EmptyResponse, error) { - return nil, status.Errorf(codes.Unimplemented, "method ReportStatus not implemented") -} - -func RegisterBootstrapServer(s *grpc.Server, srv BootstrapServer) { - s.RegisterService(&_Bootstrap_serviceDesc, srv) -} - -func _Bootstrap_GetBootstrapData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(GetBootstrapDataRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BootstrapServer).GetBootstrapData(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/bootz.Bootstrap/GetBootstrapData", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BootstrapServer).GetBootstrapData(ctx, req.(*GetBootstrapDataRequest)) - } - return interceptor(ctx, in, info, handler) -} - -func _Bootstrap_ReportStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { - in := new(ReportStatusRequest) - if err := dec(in); err != nil { - return nil, err - } - if interceptor == nil { - return srv.(BootstrapServer).ReportStatus(ctx, in) - } - info := &grpc.UnaryServerInfo{ - Server: srv, - FullMethod: "/bootz.Bootstrap/ReportStatus", - } - handler := func(ctx context.Context, req interface{}) (interface{}, error) { - return srv.(BootstrapServer).ReportStatus(ctx, req.(*ReportStatusRequest)) - } - return interceptor(ctx, in, info, handler) -} - -var _Bootstrap_serviceDesc = grpc.ServiceDesc{ - ServiceName: "bootz.Bootstrap", - HandlerType: (*BootstrapServer)(nil), - Methods: []grpc.MethodDesc{ - { - MethodName: "GetBootstrapData", - Handler: _Bootstrap_GetBootstrapData_Handler, - }, - { - MethodName: "ReportStatus", - Handler: _Bootstrap_ReportStatus_Handler, - }, - }, - Streams: []grpc.StreamDesc{}, - Metadata: "github.com/openconfig/bootz/proto/bootz.proto", -} diff --git a/proto/bootz/bootz_grpc.pb.go b/proto/bootz/bootz_grpc.pb.go new file mode 100755 index 0000000..7b5d419 --- /dev/null +++ b/proto/bootz/bootz_grpc.pb.go @@ -0,0 +1,157 @@ +// Code generated by protoc-gen-go-grpc. DO NOT EDIT. +// versions: +// - protoc-gen-go-grpc v1.5.1 +// - protoc v5.29.3 +// source: github.com/openconfig/bootz/proto/bootz.proto + +package bootz + +import ( + context "context" + grpc "google.golang.org/grpc" + codes "google.golang.org/grpc/codes" + status "google.golang.org/grpc/status" +) + +// This is a compile-time assertion to ensure that this generated file +// is compatible with the grpc package it is being compiled against. +// Requires gRPC-Go v1.64.0 or later. +const _ = grpc.SupportPackageIsVersion9 + +const ( + Bootstrap_GetBootstrapData_FullMethodName = "/bootz.Bootstrap/GetBootstrapData" + Bootstrap_ReportStatus_FullMethodName = "/bootz.Bootstrap/ReportStatus" +) + +// BootstrapClient is the client API for Bootstrap service. +// +// For semantics around ctx use and closing/ending streaming RPCs, please refer to https://pkg.go.dev/google.golang.org/grpc/?tab=doc#ClientConn.NewStream. +type BootstrapClient interface { + GetBootstrapData(ctx context.Context, in *GetBootstrapDataRequest, opts ...grpc.CallOption) (*GetBootstrapDataResponse, error) + ReportStatus(ctx context.Context, in *ReportStatusRequest, opts ...grpc.CallOption) (*EmptyResponse, error) +} + +type bootstrapClient struct { + cc grpc.ClientConnInterface +} + +func NewBootstrapClient(cc grpc.ClientConnInterface) BootstrapClient { + return &bootstrapClient{cc} +} + +func (c *bootstrapClient) GetBootstrapData(ctx context.Context, in *GetBootstrapDataRequest, opts ...grpc.CallOption) (*GetBootstrapDataResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(GetBootstrapDataResponse) + err := c.cc.Invoke(ctx, Bootstrap_GetBootstrapData_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +func (c *bootstrapClient) ReportStatus(ctx context.Context, in *ReportStatusRequest, opts ...grpc.CallOption) (*EmptyResponse, error) { + cOpts := append([]grpc.CallOption{grpc.StaticMethod()}, opts...) + out := new(EmptyResponse) + err := c.cc.Invoke(ctx, Bootstrap_ReportStatus_FullMethodName, in, out, cOpts...) + if err != nil { + return nil, err + } + return out, nil +} + +// BootstrapServer is the server API for Bootstrap service. +// All implementations should embed UnimplementedBootstrapServer +// for forward compatibility. +type BootstrapServer interface { + GetBootstrapData(context.Context, *GetBootstrapDataRequest) (*GetBootstrapDataResponse, error) + ReportStatus(context.Context, *ReportStatusRequest) (*EmptyResponse, error) +} + +// UnimplementedBootstrapServer should be embedded to have +// forward compatible implementations. +// +// NOTE: this should be embedded by value instead of pointer to avoid a nil +// pointer dereference when methods are called. +type UnimplementedBootstrapServer struct{} + +func (UnimplementedBootstrapServer) GetBootstrapData(context.Context, *GetBootstrapDataRequest) (*GetBootstrapDataResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method GetBootstrapData not implemented") +} +func (UnimplementedBootstrapServer) ReportStatus(context.Context, *ReportStatusRequest) (*EmptyResponse, error) { + return nil, status.Errorf(codes.Unimplemented, "method ReportStatus not implemented") +} +func (UnimplementedBootstrapServer) testEmbeddedByValue() {} + +// UnsafeBootstrapServer may be embedded to opt out of forward compatibility for this service. +// Use of this interface is not recommended, as added methods to BootstrapServer will +// result in compilation errors. +type UnsafeBootstrapServer interface { + mustEmbedUnimplementedBootstrapServer() +} + +func RegisterBootstrapServer(s grpc.ServiceRegistrar, srv BootstrapServer) { + // If the following call pancis, it indicates UnimplementedBootstrapServer was + // embedded by pointer and is nil. This will cause panics if an + // unimplemented method is ever invoked, so we test this at initialization + // time to prevent it from happening at runtime later due to I/O. + if t, ok := srv.(interface{ testEmbeddedByValue() }); ok { + t.testEmbeddedByValue() + } + s.RegisterService(&Bootstrap_ServiceDesc, srv) +} + +func _Bootstrap_GetBootstrapData_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(GetBootstrapDataRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BootstrapServer).GetBootstrapData(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Bootstrap_GetBootstrapData_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BootstrapServer).GetBootstrapData(ctx, req.(*GetBootstrapDataRequest)) + } + return interceptor(ctx, in, info, handler) +} + +func _Bootstrap_ReportStatus_Handler(srv interface{}, ctx context.Context, dec func(interface{}) error, interceptor grpc.UnaryServerInterceptor) (interface{}, error) { + in := new(ReportStatusRequest) + if err := dec(in); err != nil { + return nil, err + } + if interceptor == nil { + return srv.(BootstrapServer).ReportStatus(ctx, in) + } + info := &grpc.UnaryServerInfo{ + Server: srv, + FullMethod: Bootstrap_ReportStatus_FullMethodName, + } + handler := func(ctx context.Context, req interface{}) (interface{}, error) { + return srv.(BootstrapServer).ReportStatus(ctx, req.(*ReportStatusRequest)) + } + return interceptor(ctx, in, info, handler) +} + +// Bootstrap_ServiceDesc is the grpc.ServiceDesc for Bootstrap service. +// It's only intended for direct use with grpc.RegisterService, +// and not to be introspected or modified (even as a copy) +var Bootstrap_ServiceDesc = grpc.ServiceDesc{ + ServiceName: "bootz.Bootstrap", + HandlerType: (*BootstrapServer)(nil), + Methods: []grpc.MethodDesc{ + { + MethodName: "GetBootstrapData", + Handler: _Bootstrap_GetBootstrapData_Handler, + }, + { + MethodName: "ReportStatus", + Handler: _Bootstrap_ReportStatus_Handler, + }, + }, + Streams: []grpc.StreamDesc{}, + Metadata: "github.com/openconfig/bootz/proto/bootz.proto", +} diff --git a/regenerate-files.sh b/regenerate-files.sh index 83e5cbd..41a4308 100755 --- a/regenerate-files.sh +++ b/regenerate-files.sh @@ -17,9 +17,6 @@ copy_generated() { done } -# Don't upgrade bazel version until repo supports 7.0 syntax -export USE_BAZEL_VERSION=6.4.0 - bazel build //proto:all bazel build //server/entitymanager/proto:all # first arg is the package name, second arg is namespace for the package, and thrid is the location where the generated code will be saved. diff --git a/server/BUILD.bazel b/server/BUILD.bazel index 9121ab4..491b353 100644 --- a/server/BUILD.bazel +++ b/server/BUILD.bazel @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("@io_bazel_rules_go//go:def.bzl", "go_library") +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "server_lib", @@ -20,10 +20,22 @@ go_library( importpath = "github.com/openconfig/bootz/server", visibility = ["//visibility:public"], deps = [ + "//dhcp", + "//proto:bootz", "//server/entitymanager", "//server/service", - "//proto:bootz", "@com_github_golang_glog//:glog", - "@org_golang_google_grpc//:go_default_library", + "@org_golang_google_grpc//:grpc", + "@org_golang_google_grpc//credentials", + ], +) + +go_test( + name = "server_test", + srcs = ["server_test.go"], + embed = [":server_lib"], + deps = [ + "//server/entitymanager", + "//testdata:testdata_lib", ], ) diff --git a/server/emulator/BUILD.bazel b/server/emulator/BUILD.bazel index 841c0a4..e502129 100644 --- a/server/emulator/BUILD.bazel +++ b/server/emulator/BUILD.bazel @@ -20,12 +20,10 @@ go_library( importpath = "github.com/openconfig/bootz/server/emulator", visibility = ["//visibility:private"], deps = [ + "//server:server_lib", "//server/entitymanager", - "//server/service", - "//proto:bootz", - "//testdata", + "//testdata:testdata_lib", "@com_github_golang_glog//:glog", - "@org_golang_google_grpc//:go_default_library", ], ) diff --git a/server/entitymanager/BUILD.bazel b/server/entitymanager/BUILD.bazel index fc094d6..1877e31 100644 --- a/server/entitymanager/BUILD.bazel +++ b/server/entitymanager/BUILD.bazel @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("@io_bazel_rules_go//go:def.bzl", "go_library") +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "entitymanager", @@ -20,9 +20,16 @@ go_library( importpath = "github.com/openconfig/bootz/server/entitymanager", visibility = ["//visibility:public"], deps = [ + "//common/owner_certificate", + "//common/signature", "//proto:bootz", + "//server/entitymanager/proto", "//server/service", + "@com_github_golang_glog//:glog", + "@openconfig_gnsi//authz:authz_go_proto", "@org_golang_google_grpc//codes", "@org_golang_google_grpc//status", + "@org_golang_google_protobuf//encoding/prototext", + "@org_golang_google_protobuf//proto", ], ) diff --git a/server/entitymanager/proto/BUILD.bazel b/server/entitymanager/proto/BUILD.bazel index d702cb8..6af917b 100755 --- a/server/entitymanager/proto/BUILD.bazel +++ b/server/entitymanager/proto/BUILD.bazel @@ -1,22 +1,19 @@ +load("@com_google_protobuf//bazel:proto_library.bzl", "proto_library") load("@io_bazel_rules_go//go:def.bzl", "go_library") load("@io_bazel_rules_go//proto:def.bzl", "go_proto_library") -load("@rules_proto//proto:defs.bzl", "proto_library") -load("//:common.bzl", "use_new_compilers") package(default_visibility = ["//visibility:public"]) -use_new_compilers() - proto_library( name = "entity_proto", srcs = ["entity.proto"], import_prefix = "github.com/openconfig/bootz", deps = [ - "@local_repo_root//proto:bootz_proto", - "@com_github_openconfig_gnsi//authz:authz_proto", - "@com_github_openconfig_gnsi//certz:certz_proto", - "@com_github_openconfig_gnsi//pathz:pathz_proto", + "//proto:bootz_proto", "@com_google_protobuf//:struct_proto", + "@openconfig_gnsi//authz:authz_proto", + "@openconfig_gnsi//certz:certz_proto", + "@openconfig_gnsi//pathz:pathz_proto", ], ) @@ -26,14 +23,13 @@ proto_library( go_proto_library( name = "entity_go_proto", - compilers = ["@io_bazel_rules_go//proto:go_grpc"], importpath = "github.com/openconfig/bootz/server/entitymanager/proto/entity", proto = ":entity_proto", deps = [ - "@local_repo_root//proto:bootz_go_proto", - "@com_github_openconfig_gnsi//authz:authz_go_proto", - "@com_github_openconfig_gnsi//certz:certz_go_proto", - "@com_github_openconfig_gnsi//pathz:pathz_go_proto", + "//proto:bootz", + "@openconfig_gnsi//authz:authz_go_proto", + "@openconfig_gnsi//certz:certz_go_proto", + "@openconfig_gnsi//pathz:pathz_go_proto", ], ) @@ -42,3 +38,9 @@ go_library( embed = [":entity_go_proto"], importpath = "github.com/openconfig/server/entitymanager/proto/entity", ) + +go_library( + name = "proto", + embed = [":entity_go_proto"], + importpath = "github.com/openconfig/bootz/server/entitymanager/proto/entity", +) diff --git a/server/entitymanager/proto/entity/entity.pb.go b/server/entitymanager/proto/entity/entity.pb.go index bc3c1ee..2427613 100755 --- a/server/entitymanager/proto/entity/entity.pb.go +++ b/server/entitymanager/proto/entity/entity.pb.go @@ -1,7 +1,7 @@ // Code generated by protoc-gen-go. DO NOT EDIT. // versions: -// protoc-gen-go v1.28.1 -// protoc v3.21.10 +// protoc-gen-go v1.36.2 +// protoc v5.29.3 // source: github.com/openconfig/bootz/server/entitymanager/proto/entity.proto package entity @@ -26,22 +26,19 @@ const ( ) type Options struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - GnsiGlobalConfig *GNSIConfig `protobuf:"bytes,1,opt,name=gnsi_global_config,json=gnsiGlobalConfig,proto3" json:"gnsi_global_config,omitempty"` - Bootzserver string `protobuf:"bytes,2,opt,name=bootzserver,proto3" json:"bootzserver,omitempty"` - ArtifactDir string `protobuf:"bytes,3,opt,name=artifact_dir,json=artifactDir,proto3" json:"artifact_dir,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + GnsiGlobalConfig *GNSIConfig `protobuf:"bytes,1,opt,name=gnsi_global_config,json=gnsiGlobalConfig,proto3" json:"gnsi_global_config,omitempty"` + Bootzserver string `protobuf:"bytes,2,opt,name=bootzserver,proto3" json:"bootzserver,omitempty"` + ArtifactDir string `protobuf:"bytes,3,opt,name=artifact_dir,json=artifactDir,proto3" json:"artifact_dir,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Options) Reset() { *x = Options{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[0] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[0] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Options) String() string { @@ -52,7 +49,7 @@ func (*Options) ProtoMessage() {} func (x *Options) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[0] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -89,21 +86,18 @@ func (x *Options) GetArtifactDir() string { } type Entities struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + Options *Options `protobuf:"bytes,1,opt,name=options,proto3" json:"options,omitempty"` + Chassis []*Chassis `protobuf:"bytes,2,rep,name=chassis,proto3" json:"chassis,omitempty"` unknownFields protoimpl.UnknownFields - - Options *Options `protobuf:"bytes,1,opt,name=options,proto3" json:"options,omitempty"` - Chassis []*Chassis `protobuf:"bytes,2,rep,name=chassis,proto3" json:"chassis,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Entities) Reset() { *x = Entities{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[1] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[1] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Entities) String() string { @@ -114,7 +108,7 @@ func (*Entities) ProtoMessage() {} func (x *Entities) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[1] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -144,21 +138,18 @@ func (x *Entities) GetChassis() []*Chassis { } type Config struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + BootConfig *BootConfig `protobuf:"bytes,1,opt,name=boot_config,json=bootConfig,proto3" json:"boot_config,omitempty"` + GnsiConfig *GNSIConfig `protobuf:"bytes,2,opt,name=gnsi_config,json=gnsiConfig,proto3" json:"gnsi_config,omitempty"` unknownFields protoimpl.UnknownFields - - BootConfig *BootConfig `protobuf:"bytes,1,opt,name=boot_config,json=bootConfig,proto3" json:"boot_config,omitempty"` - GnsiConfig *GNSIConfig `protobuf:"bytes,2,opt,name=gnsi_config,json=gnsiConfig,proto3" json:"gnsi_config,omitempty"` + sizeCache protoimpl.SizeCache } func (x *Config) Reset() { *x = Config{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[2] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[2] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Config) String() string { @@ -169,7 +160,7 @@ func (*Config) ProtoMessage() {} func (x *Config) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[2] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -199,25 +190,22 @@ func (x *Config) GetGnsiConfig() *GNSIConfig { } type BootConfig struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - Metadata *structpb.Struct `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` - VendorConfigFile string `protobuf:"bytes,2,opt,name=vendor_config_file,json=vendorConfigFile,proto3" json:"vendor_config_file,omitempty"` - VendorConfig []byte `protobuf:"bytes,3,opt,name=vendor_config,json=vendorConfig,proto3" json:"vendor_config,omitempty"` - OcConfigFile string `protobuf:"bytes,4,opt,name=oc_config_file,json=ocConfigFile,proto3" json:"oc_config_file,omitempty"` - OcConfig []byte `protobuf:"bytes,5,opt,name=oc_config,json=ocConfig,proto3" json:"oc_config,omitempty"` - BootloaderConfig *structpb.Struct `protobuf:"bytes,6,opt,name=bootloader_config,json=bootloaderConfig,proto3" json:"bootloader_config,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + Metadata *structpb.Struct `protobuf:"bytes,1,opt,name=metadata,proto3" json:"metadata,omitempty"` + VendorConfigFile string `protobuf:"bytes,2,opt,name=vendor_config_file,json=vendorConfigFile,proto3" json:"vendor_config_file,omitempty"` + VendorConfig []byte `protobuf:"bytes,3,opt,name=vendor_config,json=vendorConfig,proto3" json:"vendor_config,omitempty"` + OcConfigFile string `protobuf:"bytes,4,opt,name=oc_config_file,json=ocConfigFile,proto3" json:"oc_config_file,omitempty"` + OcConfig []byte `protobuf:"bytes,5,opt,name=oc_config,json=ocConfig,proto3" json:"oc_config,omitempty"` + BootloaderConfig *structpb.Struct `protobuf:"bytes,6,opt,name=bootloader_config,json=bootloaderConfig,proto3" json:"bootloader_config,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *BootConfig) Reset() { *x = BootConfig{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[3] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[3] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *BootConfig) String() string { @@ -228,7 +216,7 @@ func (*BootConfig) ProtoMessage() {} func (x *BootConfig) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[3] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -286,27 +274,24 @@ func (x *BootConfig) GetBootloaderConfig() *structpb.Struct { } type GNSIConfig struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - AuthzUploadFile string `protobuf:"bytes,1,opt,name=authz_upload_file,json=authzUploadFile,proto3" json:"authz_upload_file,omitempty"` - AuthzUpload *authz.UploadRequest `protobuf:"bytes,2,opt,name=authz_upload,json=authzUpload,proto3" json:"authz_upload,omitempty"` - PathzUploadFile string `protobuf:"bytes,3,opt,name=pathz_upload_file,json=pathzUploadFile,proto3" json:"pathz_upload_file,omitempty"` - PathzUpload *pathz.UploadRequest `protobuf:"bytes,4,opt,name=pathz_upload,json=pathzUpload,proto3" json:"pathz_upload,omitempty"` - CertzUpload *certz.UploadRequest `protobuf:"bytes,5,opt,name=certz_upload,json=certzUpload,proto3" json:"certz_upload,omitempty"` - CertzUploadFile string `protobuf:"bytes,6,opt,name=certz_upload_file,json=certzUploadFile,proto3" json:"certz_upload_file,omitempty"` - CredentialsFile string `protobuf:"bytes,7,opt,name=credentials_file,json=credentialsFile,proto3" json:"credentials_file,omitempty"` - Credentials *bootz.Credentials `protobuf:"bytes,8,opt,name=credentials,proto3" json:"credentials,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + AuthzUploadFile string `protobuf:"bytes,1,opt,name=authz_upload_file,json=authzUploadFile,proto3" json:"authz_upload_file,omitempty"` + AuthzUpload *authz.UploadRequest `protobuf:"bytes,2,opt,name=authz_upload,json=authzUpload,proto3" json:"authz_upload,omitempty"` + PathzUploadFile string `protobuf:"bytes,3,opt,name=pathz_upload_file,json=pathzUploadFile,proto3" json:"pathz_upload_file,omitempty"` + PathzUpload *pathz.UploadRequest `protobuf:"bytes,4,opt,name=pathz_upload,json=pathzUpload,proto3" json:"pathz_upload,omitempty"` + CertzUpload *certz.UploadRequest `protobuf:"bytes,5,opt,name=certz_upload,json=certzUpload,proto3" json:"certz_upload,omitempty"` + CertzUploadFile string `protobuf:"bytes,6,opt,name=certz_upload_file,json=certzUploadFile,proto3" json:"certz_upload_file,omitempty"` + CredentialsFile string `protobuf:"bytes,7,opt,name=credentials_file,json=credentialsFile,proto3" json:"credentials_file,omitempty"` + Credentials *bootz.Credentials `protobuf:"bytes,8,opt,name=credentials,proto3" json:"credentials,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *GNSIConfig) Reset() { *x = GNSIConfig{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[4] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[4] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *GNSIConfig) String() string { @@ -317,7 +302,7 @@ func (*GNSIConfig) ProtoMessage() {} func (x *GNSIConfig) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[4] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -389,23 +374,20 @@ func (x *GNSIConfig) GetCredentials() *bootz.Credentials { } type DHCPConfig struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - HardwareAddress string `protobuf:"bytes,1,opt,name=hardware_address,json=hardwareAddress,proto3" json:"hardware_address,omitempty"` - IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` - Gateway string `protobuf:"bytes,3,opt,name=gateway,proto3" json:"gateway,omitempty"` - Bootzserver string `protobuf:"bytes,4,opt,name=bootzserver,proto3" json:"bootzserver,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + HardwareAddress string `protobuf:"bytes,1,opt,name=hardware_address,json=hardwareAddress,proto3" json:"hardware_address,omitempty"` + IpAddress string `protobuf:"bytes,2,opt,name=ip_address,json=ipAddress,proto3" json:"ip_address,omitempty"` + Gateway string `protobuf:"bytes,3,opt,name=gateway,proto3" json:"gateway,omitempty"` + Bootzserver string `protobuf:"bytes,4,opt,name=bootzserver,proto3" json:"bootzserver,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *DHCPConfig) Reset() { *x = DHCPConfig{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[5] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[5] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *DHCPConfig) String() string { @@ -416,7 +398,7 @@ func (*DHCPConfig) ProtoMessage() {} func (x *DHCPConfig) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[5] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -460,22 +442,19 @@ func (x *DHCPConfig) GetBootzserver() string { } type ControlCard struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache + state protoimpl.MessageState `protogen:"open.v1"` + PartNumber string `protobuf:"bytes,1,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` + SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` + DhcpConfig *DHCPConfig `protobuf:"bytes,4,opt,name=dhcp_config,json=dhcpConfig,proto3" json:"dhcp_config,omitempty"` unknownFields protoimpl.UnknownFields - - PartNumber string `protobuf:"bytes,1,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` - SerialNumber string `protobuf:"bytes,2,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` - DhcpConfig *DHCPConfig `protobuf:"bytes,4,opt,name=dhcp_config,json=dhcpConfig,proto3" json:"dhcp_config,omitempty"` + sizeCache protoimpl.SizeCache } func (x *ControlCard) Reset() { *x = ControlCard{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[6] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[6] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *ControlCard) String() string { @@ -486,7 +465,7 @@ func (*ControlCard) ProtoMessage() {} func (x *ControlCard) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[6] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -523,29 +502,26 @@ func (x *ControlCard) GetDhcpConfig() *DHCPConfig { } type Chassis struct { - state protoimpl.MessageState - sizeCache protoimpl.SizeCache - unknownFields protoimpl.UnknownFields - - SerialNumber string `protobuf:"bytes,1,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` - Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` - PartNumber string `protobuf:"bytes,3,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` - Manufacturer string `protobuf:"bytes,4,opt,name=manufacturer,proto3" json:"manufacturer,omitempty"` - BootloaderPasswordHash string `protobuf:"bytes,5,opt,name=bootloader_password_hash,json=bootloaderPasswordHash,proto3" json:"bootloader_password_hash,omitempty"` - BootMode bootz.BootMode `protobuf:"varint,6,opt,name=boot_mode,json=bootMode,proto3,enum=bootz.BootMode" json:"boot_mode,omitempty"` - SoftwareImage *bootz.SoftwareImage `protobuf:"bytes,7,opt,name=software_image,json=softwareImage,proto3" json:"software_image,omitempty"` - ControllerCards []*ControlCard `protobuf:"bytes,8,rep,name=controller_cards,json=controllerCards,proto3" json:"controller_cards,omitempty"` - Config *Config `protobuf:"bytes,9,opt,name=config,proto3" json:"config,omitempty"` - DhcpConfig *DHCPConfig `protobuf:"bytes,12,opt,name=dhcp_config,json=dhcpConfig,proto3" json:"dhcp_config,omitempty"` + state protoimpl.MessageState `protogen:"open.v1"` + SerialNumber string `protobuf:"bytes,1,opt,name=serial_number,json=serialNumber,proto3" json:"serial_number,omitempty"` + Name string `protobuf:"bytes,2,opt,name=name,proto3" json:"name,omitempty"` + PartNumber string `protobuf:"bytes,3,opt,name=part_number,json=partNumber,proto3" json:"part_number,omitempty"` + Manufacturer string `protobuf:"bytes,4,opt,name=manufacturer,proto3" json:"manufacturer,omitempty"` + BootloaderPasswordHash string `protobuf:"bytes,5,opt,name=bootloader_password_hash,json=bootloaderPasswordHash,proto3" json:"bootloader_password_hash,omitempty"` + BootMode bootz.BootMode `protobuf:"varint,6,opt,name=boot_mode,json=bootMode,proto3,enum=bootz.BootMode" json:"boot_mode,omitempty"` + SoftwareImage *bootz.SoftwareImage `protobuf:"bytes,7,opt,name=software_image,json=softwareImage,proto3" json:"software_image,omitempty"` + ControllerCards []*ControlCard `protobuf:"bytes,8,rep,name=controller_cards,json=controllerCards,proto3" json:"controller_cards,omitempty"` + Config *Config `protobuf:"bytes,9,opt,name=config,proto3" json:"config,omitempty"` + DhcpConfig *DHCPConfig `protobuf:"bytes,12,opt,name=dhcp_config,json=dhcpConfig,proto3" json:"dhcp_config,omitempty"` + unknownFields protoimpl.UnknownFields + sizeCache protoimpl.SizeCache } func (x *Chassis) Reset() { *x = Chassis{} - if protoimpl.UnsafeEnabled { - mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[7] - ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) - ms.StoreMessageInfo(mi) - } + mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[7] + ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) + ms.StoreMessageInfo(mi) } func (x *Chassis) String() string { @@ -556,7 +532,7 @@ func (*Chassis) ProtoMessage() {} func (x *Chassis) ProtoReflect() protoreflect.Message { mi := &file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[7] - if protoimpl.UnsafeEnabled && x != nil { + if x != nil { ms := protoimpl.X.MessageStateOf(protoimpl.Pointer(x)) if ms.LoadMessageInfo() == nil { ms.StoreMessageInfo(mi) @@ -793,7 +769,7 @@ func file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_ra } var file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes = make([]protoimpl.MessageInfo, 8) -var file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_goTypes = []interface{}{ +var file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_goTypes = []any{ (*Options)(nil), // 0: entity.Options (*Entities)(nil), // 1: entity.Entities (*Config)(nil), // 2: entity.Config @@ -840,104 +816,6 @@ func file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_in if File_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto != nil { return } - if !protoimpl.UnsafeEnabled { - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[0].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Options); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[1].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Entities); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[2].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Config); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[3].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*BootConfig); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[4].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*GNSIConfig); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[5].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*DHCPConfig); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[6].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*ControlCard); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - file_github_com_openconfig_bootz_server_entitymanager_proto_entity_proto_msgTypes[7].Exporter = func(v interface{}, i int) interface{} { - switch v := v.(*Chassis); i { - case 0: - return &v.state - case 1: - return &v.sizeCache - case 2: - return &v.unknownFields - default: - return nil - } - } - } type x struct{} out := protoimpl.TypeBuilder{ File: protoimpl.DescBuilder{ diff --git a/server/service/BUILD.bazel b/server/service/BUILD.bazel index 456255c..e1e5fb8 100644 --- a/server/service/BUILD.bazel +++ b/server/service/BUILD.bazel @@ -12,7 +12,7 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("@io_bazel_rules_go//go:def.bzl", "go_library") +load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test") go_library( name = "service", @@ -21,8 +21,23 @@ go_library( visibility = ["//visibility:public"], deps = [ "//proto:bootz", - "@com_github_openconfig_gnmi//errlist", + "@com_github_golang_glog//:glog", + "@openconfig_gnmi//errlist", + "@openconfig_gnsi//authz:authz_go_proto", "@org_golang_google_grpc//codes", + "@org_golang_google_grpc//peer", "@org_golang_google_grpc//status", + "@org_golang_google_protobuf//proto", + ], +) + +go_test( + name = "service_test", + srcs = ["service_test.go"], + embed = [":service"], + deps = [ + "//proto:bootz", + "@com_github_google_go_cmp//cmp", + "@org_golang_google_grpc//peer", ], ) diff --git a/testdata/BUILD.bazel b/testdata/BUILD.bazel index 54a8917..289b24c 100644 --- a/testdata/BUILD.bazel +++ b/testdata/BUILD.bazel @@ -12,21 +12,15 @@ # See the License for the specific language governing permissions and # limitations under the License. -load("@io_bazel_rules_go//go:def.bzl", "go_binary", "go_library") +load("@io_bazel_rules_go//go:def.bzl", "go_library") go_library( name = "testdata_lib", - srcs = ["generate.go"], + srcs = ["artifacts.go"], importpath = "github.com/openconfig/bootz/testdata", - visibility = ["//visibility:private"], + visibility = ["//visibility:public"], deps = [ - "@com_github_golang_glog//:glog", + "//server/service", "@org_mozilla_go_pkcs7//:pkcs7", ], ) - -go_binary( - name = "testdata", - embed = [":testdata_lib"], - visibility = ["//visibility:public"], -)