package vpc_endpoint

import (
	"context"

	"github.com/pingcap/errors"

	cloudv1 "github.com/tidbcloud/infra-api/api/v1"
	"github.com/tidbcloud/infra-provider/pkg/providers/gcp"
)

func DeployGApiPscEndpoint(ctx context.Context, gcpapi gcp.GCPAPI, network *cloudv1.Network, currentVersion int, projectID, networkName, shootName string) error {
	if !ShouldUpdateEndpoint(network.Annotations, currentVersion) {
		return nil
	}

	if err := gcpapi.CreateGoogleApiPsc(ctx, projectID, network.Spec.Region, networkName, shootName); err != nil {
		return errors.Annotate(err, "failed to create psc for google api")
	}
	return nil
}
