func manageCompute()

in code/function/function.go [94:114]


func manageCompute(ctx context.Context, project, label string) error {
	filters := []string{
		"status = RUNNING",
		fmt.Sprintf("labels.%s = true", label),
	}

	svc, err := compute.NewService(ctx)
	if err != nil {
		return fmt.Errorf("cannont instaitate Compute Engine API service:: %s", err)
	}

	gceInstances, err := computeInstances(project, svc, filters)
	if err != nil {
		return fmt.Errorf("cannot get a list of Compute Engine Instances: %s", err)
	}

	if err := computeStop(project, svc, gceInstances); err != nil {
		return fmt.Errorf("cannot stop Compute Engine Instances: %s", err)
	}
	return nil
}