/* Copyright (c) Edgeless Systems GmbH SPDX-License-Identifier: AGPL-3.0-only */ package client import ( "errors" "regexp" "github.com/spf13/afero" ) var projectIDRegex = regexp.MustCompile(`(?m)^project-id = (.*)$`) // loadProjectID loads the project id from the gce config file. func loadProjectID(fs afero.Fs, path string) (string, error) { rawConfig, err := afero.ReadFile(fs, path) if err != nil { return "", err } // find project-id line matches := projectIDRegex.FindStringSubmatch(string(rawConfig)) if len(matches) != 2 { return "", errors.New("invalid config: project-id not found") } return matches[1], nil }