MCPcopy Create free account
hub / github.com/BishopFox/cloudfox / executeChecks

Method executeChecks

aws/workloads.go:272–311  ·  view source on GitHub ↗
(r string, wg *sync.WaitGroup, semaphore chan struct{}, dataReceiver chan Workload)

Source from the content-addressed store, hash-verified

270}
271
272func (m *WorkloadsModule) executeChecks(r string, wg *sync.WaitGroup, semaphore chan struct{}, dataReceiver chan Workload) {
273 defer wg.Done()
274 // Use shared ServiceMap instance if provided, otherwise create a new one
275 servicemap := m.ServiceMap
276 if servicemap == nil {
277 servicemap = &awsservicemap.AwsServiceMap{
278 JsonFileSource: "DOWNLOAD_FROM_AWS",
279 }
280 }
281
282 res, _ := servicemap.IsServiceInRegion("ec2", r)
283 if res {
284 m.CommandCounter.IncrTotal()
285 wg.Add(1)
286 go m.getEC2WorkloadsPerRegion(r, wg, semaphore, dataReceiver)
287 }
288
289 res, _ = servicemap.IsServiceInRegion("ecs", r)
290 if res {
291 m.CommandCounter.IncrTotal()
292 wg.Add(1)
293 go m.getECSWorkloadsPerRegion(r, wg, semaphore, dataReceiver)
294 }
295
296 res, err := servicemap.IsServiceInRegion("lambda", r)
297 if err != nil {
298 m.modLog.Error(err)
299 }
300 if res {
301 m.CommandCounter.IncrTotal()
302 wg.Add(1)
303 go m.getLambdaWorkloadsPerRegion(r, wg, semaphore, dataReceiver)
304 }
305
306 // AppRunner is not supported in the aws service region catalog so we have to run it in all regions
307 m.CommandCounter.IncrTotal()
308 wg.Add(1)
309 go m.getAppRunnerWorkloadsPerRegion(r, wg, semaphore, dataReceiver)
310
311}
312
313func (m *WorkloadsModule) getEC2WorkloadsPerRegion(r string, wg *sync.WaitGroup, semaphore chan struct{}, dataReceiver chan Workload) {
314 defer func() {

Callers 1

PrintWorkloadsMethod · 0.95

Calls 7

IncrTotalMethod · 0.80
AddMethod · 0.80
ErrorMethod · 0.80

Tested by

no test coverage detected