5
5
6
6
"github.com/DefangLabs/defang/src/pkg"
7
7
"github.com/DefangLabs/defang/src/pkg/cli"
8
- cliClient "github.com/DefangLabs/defang/src/pkg/cli/client"
9
- "github.com/DefangLabs/defang/src/pkg/cli/client/byoc/aws"
10
- "github.com/DefangLabs/defang/src/pkg/cli/client/byoc/gcp"
11
8
"github.com/DefangLabs/defang/src/pkg/term"
12
9
defangv1 "github.com/DefangLabs/defang/src/protos/io/defang/v1"
13
10
"github.com/spf13/cobra"
@@ -29,24 +26,14 @@ func makeEstimateCmd() *cobra.Command {
29
26
return err
30
27
}
31
28
32
- var previewProvider cliClient.Provider = & cliClient.PlaygroundProvider {FabricClient : client }
33
- switch providerID {
34
- case cliClient .ProviderAWS :
35
- if awsInEnv () {
36
- previewProvider = aws .NewByocProvider (ctx , client .GetTenantName ())
37
- }
38
- case cliClient .ProviderGCP :
39
- if gcpInEnv () {
40
- previewProvider = gcp .NewByocProvider (ctx , client .GetTenantName ())
41
- }
42
- case cliClient .ProviderAuto :
43
- fallthrough
44
- case cliClient .ProviderDefang :
45
- if _ , err := interactiveSelectProvider ([]cliClient.ProviderID {cliClient .ProviderAWS , cliClient .ProviderGCP }); err != nil {
46
- return err
47
- }
48
- default :
49
- return fmt .Errorf ("unsupported provider %s; must be one of %v" , providerID , []cliClient.ProviderID {cliClient .ProviderAWS })
29
+ previewProvider , err := newProvider (cmd .Context (), loader )
30
+ if err != nil {
31
+ return err
32
+ }
33
+
34
+ err = canIUseProvider (cmd .Context (), previewProvider , project .Name )
35
+ if err != nil {
36
+ return err
50
37
}
51
38
52
39
// default to development mode if not specified; TODO: when mode is not specified, show an interactive prompt
0 commit comments