1load("@io_bazel_rules_go//go:def.bzl", "go_library", "go_test", "gomock")
2
3go_library(
4 name = "services",
5 srcs = [
6 "activity_service.go",
7 "artifact_registry_service.go",
8 "banner_config_service.go",
9 "bootstrap_service.go",
10 "bsl_mock_server.go",
11 "bsp_groups.go",
12 "bsp_site_service.go",
13 "capability_service.go",
14 "chariot_service.go",
15 "cluster_config_service.go",
16 "cluster_network_service_orchestration.go",
17 "compatibility_service.go",
18 "edge_agent_service.go",
19 "gcp_client_service.go",
20 "gcp_service.go",
21 "gke_client.go",
22 "helm_service.go",
23 "iam_service.go",
24 "iam_settings_service.go",
25 "label_service.go",
26 "log_classifcation_service.go",
27 "log_classification_labels_service.go",
28 "log_replay_service.go",
29 "namespace_service.go",
30 "oi_service.go",
31 "oi_service_rules.go",
32 "organization_service.go",
33 "registration_service.go",
34 "role_service.go",
35 "secret_service.go",
36 "store_service.go",
37 "tenant_service.go",
38 "terminal_disks.go",
39 "terminal_label_service.go",
40 "terminal_service.go",
41 "user_management_service.go",
42 "vm_disks.go",
43 "vm_service.go",
44 ],
45 importpath = "edge-infra.dev/pkg/edge/api/services",
46 visibility = ["//visibility:public"],
47 deps = [
48 "//pkg/edge/api/apierror",
49 "//pkg/edge/api/apierror/gcp",
50 "//pkg/edge/api/apierror/sql",
51 "//pkg/edge/api/bsl/types",
52 "//pkg/edge/api/clients",
53 "//pkg/edge/api/graph/mapper",
54 "//pkg/edge/api/graph/model",
55 "//pkg/edge/api/middleware",
56 "//pkg/edge/api/services/artifacts",
57 "//pkg/edge/api/services/edgenode/common",
58 "//pkg/edge/api/services/gcp",
59 "//pkg/edge/api/services/interfaces",
60 "//pkg/edge/api/sql",
61 "//pkg/edge/api/status",
62 "//pkg/edge/api/testutils",
63 "//pkg/edge/api/types",
64 "//pkg/edge/api/utils",
65 "//pkg/edge/apis/banner/v1alpha1",
66 "//pkg/edge/apis/cluster/v1alpha1",
67 "//pkg/edge/apis/gkecluster/v1alpha1",
68 "//pkg/edge/bsl",
69 "//pkg/edge/capabilities",
70 "//pkg/edge/chariot/client",
71 "//pkg/edge/compatibility",
72 "//pkg/edge/constants",
73 "//pkg/edge/constants/api/banner",
74 "//pkg/edge/constants/api/cluster",
75 "//pkg/edge/constants/api/fleet",
76 "//pkg/edge/constants/api/workload",
77 "//pkg/edge/controllers/util/edgedb",
78 "//pkg/edge/ctlfish/monitor",
79 "//pkg/edge/edgeagent/model",
80 "//pkg/edge/externalsecrets",
81 "//pkg/edge/flux/bootstrap",
82 "//pkg/edge/k8objectsutils/gcp/iamcomponent",
83 "//pkg/edge/linkerd",
84 "//pkg/edge/okta",
85 "//pkg/f8n/warehouse/cluster",
86 "//pkg/f8n/warehouse/k8s/apis/v1alpha1",
87 "//pkg/f8n/warehouse/lift/unpack",
88 "//pkg/f8n/warehouse/oci/layer",
89 "//pkg/lib/crypto",
90 "//pkg/lib/edgeutils",
91 "//pkg/lib/fog",
92 "//pkg/lib/gcp/iam",
93 "//pkg/lib/gcp/iam/roles",
94 "//pkg/lib/gcp/pubsub",
95 "//pkg/lib/gcp/secretmanager",
96 "//pkg/lib/gcp/utils",
97 "//pkg/lib/mqtt",
98 "//pkg/lib/networkvalidator",
99 "//pkg/lib/runtime/version",
100 "//pkg/lib/uuid",
101 "//pkg/sds/clustersecrets/audit",
102 "//pkg/sds/clustersecrets/common",
103 "//pkg/sds/devices/k8s/apis/v1:apis",
104 "//pkg/sds/emergencyaccess/rules",
105 "//pkg/sds/emergencyaccess/rules/storage/database",
106 "//pkg/sds/ien/k8s/apis/v1:apis",
107 "//pkg/sds/ien/topology",
108 "@com_github_doug_martin_goqu_v9//dialect/mysql",
109 "@com_github_external_secrets_external_secrets//apis/externalsecrets/v1beta1",
110 "@com_github_fluxcd_helm_controller_api//v2:api",
111 "@com_github_fluxcd_helm_controller_api//v2beta1",
112 "@com_github_fluxcd_kustomize_controller_api//v1:api",
113 "@com_github_fluxcd_pkg_apis_meta//:meta",
114 "@com_github_fluxcd_source_controller_api//v1:api",
115 "@com_github_fluxcd_source_controller_api//v1beta2",
116 "@com_github_go_resty_resty_v2//:resty",
117 "@com_github_google_uuid//:uuid",
118 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/container/v1beta1",
119 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/iam/v1beta1",
120 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/k8s/v1alpha1",
121 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/resourcemanager/v1beta1",
122 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/secretmanager/v1beta1",
123 "@com_github_hashicorp_go_multierror//:go-multierror",
124 "@com_github_lib_pq//:pq",
125 "@com_github_qri_io_jsonschema//:jsonschema",
126 "@com_github_rs_zerolog//log",
127 "@com_google_cloud_go_pubsub//:pubsub",
128 "@com_google_cloud_go_secretmanager//apiv1/secretmanagerpb",
129 "@in_gopkg_yaml_v2//:yaml_v2",
130 "@io_k8s_api//core/v1:core",
131 "@io_k8s_api//rbac/v1:rbac",
132 "@io_k8s_apiextensions_apiserver//pkg/apis/apiextensions/v1:apiextensions",
133 "@io_k8s_apimachinery//pkg/apis/meta/v1:meta",
134 "@io_k8s_apimachinery//pkg/util/runtime",
135 "@io_k8s_apimachinery//pkg/util/wait",
136 "@io_k8s_client_go//kubernetes/scheme",
137 "@io_k8s_client_go//rest",
138 "@io_k8s_client_go//tools/clientcmd/api",
139 "@io_k8s_client_go//util/retry",
140 "@io_k8s_sigs_controller_runtime//pkg/client",
141 "@io_k8s_sigs_controller_runtime//pkg/controller/controllerutil",
142 "@io_k8s_sigs_yaml//:yaml",
143 "@io_k8s_utils//net",
144 "@io_k8s_utils//ptr",
145 "@org_golang_google_api//cloudresourcemanager/v1:cloudresourcemanager",
146 "@org_golang_google_api//googleapi",
147 "@org_golang_google_api//iam/v1:iam",
148 "@org_golang_google_api//option",
149 "@sh_helm_helm_v3//pkg/chart",
150 "@sh_helm_helm_v3//pkg/chart/loader",
151 "@sh_helm_helm_v3//pkg/repo",
152 ],
153)
154
155go_test(
156 name = "services_test",
157 srcs = [
158 "activity_service_test.go",
159 "artifact_registry_service_test.go",
160 "banner_config_service_test.go",
161 "bootstrap_service_test.go",
162 "bsp_site_service_test.go",
163 "cluster_config_service_test.go",
164 "compatibility_service_test.go",
165 "gcp_service_test.go",
166 "gke_client_test.go",
167 "helm_service_test.go",
168 "iam_service_test.go",
169 "iam_settings_service_test.go",
170 "label_service_test.go",
171 "log_classifcation_service_test.go",
172 "log_classification_labels_service_test.go",
173 "log_replay_service_test.go",
174 "namespace_service_test.go",
175 "oi_service_rules_test.go",
176 "oi_service_test.go",
177 "organization_service_test.go",
178 "registration_service_test.go",
179 "role_service_test.go",
180 "services_test.go",
181 "store_service_test.go",
182 "tenant_service_test.go",
183 "terminal_disks_test.go",
184 "terminal_label_service_test.go",
185 "terminal_service_test.go",
186 "user_management_service_test.go",
187 "vm_disks_test.go",
188 "vm_service_test.go",
189 ],
190 data = glob(["testdata/**"]),
191 embed = [":services"],
192 embedsrcs = ["testdata/alpine-0.2.0.tgz"],
193 visibility = ["//visibility:public"],
194 deps = [
195 "//pkg/edge/api/apierror/bsl",
196 "//pkg/edge/api/apierror/sql",
197 "//pkg/edge/api/bsl/types",
198 "//pkg/edge/api/graph/mapper",
199 "//pkg/edge/api/graph/model",
200 "//pkg/edge/api/middleware",
201 "//pkg/edge/api/mocks",
202 "//pkg/edge/api/services/artifacts",
203 "//pkg/edge/api/services/cluster",
204 "//pkg/edge/api/services/cluster/label",
205 "//pkg/edge/api/services/edgenode/common",
206 "//pkg/edge/api/sql",
207 "//pkg/edge/api/status",
208 "//pkg/edge/api/testutils/seededpostgres",
209 "//pkg/edge/api/types",
210 "//pkg/edge/api/utils",
211 "//pkg/edge/apis/meta",
212 "//pkg/edge/bsl",
213 "//pkg/edge/capabilities",
214 "//pkg/edge/chariot/client",
215 "//pkg/edge/constants",
216 "//pkg/edge/constants/api/banner",
217 "//pkg/edge/constants/api/cluster",
218 "//pkg/edge/constants/api/fleet",
219 "//pkg/edge/constants/api/pallet",
220 "//pkg/edge/constants/api/workload",
221 "//pkg/edge/controllers/util/edgedb",
222 "//pkg/edge/ctlfish/monitor",
223 "//pkg/edge/externalsecrets",
224 "//pkg/edge/linkerd",
225 "//pkg/edge/okta",
226 "//pkg/f8n/warehouse/k8s/apis/v1alpha1",
227 "//pkg/f8n/warehouse/oci",
228 "//pkg/f8n/warehouse/pallet",
229 "//pkg/lib/crypto",
230 "//pkg/lib/gcp/iam/utils",
231 "//pkg/lib/gcp/secretmanager",
232 "//pkg/lib/runtime/version",
233 "//pkg/lib/uuid",
234 "//pkg/sds/clustersecrets/breakglass",
235 "//pkg/sds/clustersecrets/grub",
236 "//pkg/sds/emergencyaccess/rules",
237 "//pkg/sds/ien/topology",
238 "//pkg/sds/k8s/bootstrap/tokens",
239 "//test/fixtures",
240 "//test/framework/gcp/pubsub",
241 "@com_github_data_dog_go_sqlmock//:go-sqlmock",
242 "@com_github_fluxcd_helm_controller_api//v2:api",
243 "@com_github_fluxcd_kustomize_controller_api//v1:api",
244 "@com_github_fluxcd_pkg_apis_meta//:meta",
245 "@com_github_fluxcd_source_controller_api//v1:api",
246 "@com_github_go_test_deep//:deep",
247 "@com_github_golang_mock//gomock",
248 "@com_github_google_go_containerregistry//pkg/name",
249 "@com_github_google_uuid//:uuid",
250 "@com_github_googlecloudplatform_k8s_config_connector//pkg/clients/generated/apis/container/v1beta1",
251 "@com_github_lib_pq//:pq",
252 "@com_github_stretchr_testify//assert",
253 "@com_github_stretchr_testify//require",
254 "@com_github_thoas_go_funk//:go-funk",
255 "@com_google_cloud_go_pubsub//:pubsub",
256 "@io_k8s_apiextensions_apiserver//pkg/apis/apiextensions/v1:apiextensions",
257 "@io_k8s_apimachinery//pkg/apis/meta/v1:meta",
258 "@io_k8s_client_go//rest",
259 "@io_k8s_client_go//tools/clientcmd/api",
260 "@io_k8s_sigs_controller_runtime//pkg/client",
261 "@io_k8s_sigs_yaml//:yaml",
262 "@io_k8s_utils//ptr",
263 "@org_golang_google_api//option",
264 "@sh_helm_helm_v3//pkg/chart",
265 "@sh_helm_helm_v3//pkg/repo",
266 ],
267)
268
269gomock(
270 name = "mock_cluster_config_service_gen",
271 out = "mock_cluster_config_service",
272 interfaces = ["ClusterConfigService"],
273 library = ":services",
274 package = "mocks",
275 visibility = ["//visibility:public"],
276)
277
278gomock(
279 name = "mock_registration_service_gen",
280 out = "mock_registration_service",
281 interfaces = ["RegistrationService"],
282 library = ":services",
283 package = "mocks",
284 visibility = ["//visibility:public"],
285)
286
287gomock(
288 # TODO: TO BE DEPRECATED IN 0.25 @RS185722
289 name = "mock_log_classification_service_gen",
290 out = "mock_log_classification_service",
291 interfaces = ["LogClassificationService"],
292 library = ":services",
293 package = "mocks",
294 visibility = ["//visibility:public"],
295)
296
297gomock(
298 # TODO: TO BE DEPRECATED IN 0.25 @RS185722
299 name = "mock_log_classification_labels_service_gen",
300 out = "mock_log_classification_labels_service",
301 interfaces = ["LogClassificationLabelsService"],
302 library = ":services",
303 package = "mocks",
304 visibility = ["//visibility:public"],
305)
306
307gomock(
308 name = "mock_user_management_service_gen",
309 out = "mock_user_management_service",
310 interfaces = ["UserManagementService"],
311 library = ":services",
312 package = "mocks",
313 visibility = ["//visibility:public"],
314)
315
316gomock(
317 name = "mock_log_replay_service_gen",
318 out = "mock_log_replay_service",
319 interfaces = ["LogReplayService"],
320 library = ":services",
321 package = "mocks",
322 visibility = ["//visibility:public"],
323)
324
325gomock(
326 name = "terminal_service_gen",
327 out = "terminal_service",
328 interfaces = ["TerminalService"],
329 library = ":services",
330 package = "mocks",
331 visibility = ["//visibility:public"],
332)
View as plain text