func()

in internal/secretmanager/secretmanager.go [51:65]


func (s *Client) GetSecretValue(ctx context.Context, projectID, secretName string) (string, error) {
	result, err := s.client.AccessSecretVersion(ctx, &secretmanagerpb.AccessSecretVersionRequest{
		Name: fmt.Sprintf("projects/%s/secrets/%s/versions/%s", projectID, secretName, "latest"),
	})
	if err != nil {
		return "", err
	}

	payload := result.GetPayload()
	if payload == nil {
		return "", fmt.Errorf("empty secret value from secret manager")
	}

	return string(payload.GetData()), nil
}