func()

in gcloud/serviceusage.go [168:190]


func (c *Client) ServiceIsEnabled(project string, service Service) (bool, error) {
	svc, err := c.getServiceUsageService()

	if project == "" {
		return false, ErrorProjectRequired
	}

	s := fmt.Sprintf("projects/%s/services/%s", project, service)
	current, err := svc.Services.Get(s).Do()
	if err != nil {
		if strings.Contains(err.Error(), "Not found or permission denied for service") {
			return false, ErrorServiceNotExistOrNotAllowed
		}

		return false, fmt.Errorf("cannot get the service for resource (%s): %w", s, err)
	}

	if current.State == "ENABLED" {
		return true, nil
	}

	return false, nil
}