@@ -17,6 +17,7 @@ import (
1717 "github.com/oasisprotocol/oasis-core/go/common/cbor"
1818 "github.com/oasisprotocol/oasis-core/go/common/sgx"
1919 "github.com/oasisprotocol/oasis-sdk/client-sdk/go/client"
20+ "github.com/oasisprotocol/oasis-sdk/client-sdk/go/config"
2021 "github.com/oasisprotocol/oasis-sdk/client-sdk/go/connection"
2122 "github.com/oasisprotocol/oasis-sdk/client-sdk/go/modules/rofl"
2223 "github.com/oasisprotocol/oasis-sdk/client-sdk/go/modules/roflmarket"
@@ -90,16 +91,20 @@ var (
9091
9192 switch machine .Provider {
9293 case "" :
93- // Not yet set, require the provider to be specified .
94+ // Not yet set, obtain a new machine from the provider .
9495 if deployProvider == "" {
95- cobra .CheckErr (fmt .Sprintf ("Provider not configured for deployment '%s' machine '%s'. Please specify --provider." , deploymentName , deployMachine ))
96+ if npa .ParaTime .ID == config .DefaultNetworks .All ["testnet" ].ParaTimes .All ["sapphire" ].ID {
97+ deployProvider = provider .DefaultRoflServices [npa .ParaTime .ID ].Provider
98+ } else {
99+ cobra .CheckErr (fmt .Sprintf ("Provider not configured for deployment '%s' machine '%s'. Please specify --provider." , deploymentName , deployMachine ))
100+ }
96101 }
97102
98103 machine .Provider = deployProvider
99104 default :
100- // Already set, require the provider to be omitted.
101- if deployProvider != "" {
102- cobra .CheckErr (fmt .Sprintf ("Provider already configured for deployment '%s' machine '%s'. Omit --provider." , deploymentName , deployMachine ))
105+ // Already set, require the provider to be omitted or equal .
106+ if deployProvider != "" && deployProvider != machine . Provider {
107+ cobra .CheckErr (fmt .Sprintf ("Provider '%s' conflicts with existing provider '%s' for deployment '%s' machine '%s'. Omit --provider." , deployProvider , machine . Provider , deploymentName , deployMachine ))
103108 }
104109 }
105110
@@ -345,7 +350,7 @@ func showProviderOffer(offer *roflmarket.Offer) {
345350func init () {
346351 providerFlags := flag .NewFlagSet ("" , flag .ContinueOnError )
347352 // Default to Testnet playground provider.
348- providerFlags .StringVar (& deployProvider , "provider" , "oasis1qp2ens0hsp7gh23wajxa4hpetkdek3swyyulyrmz " , "set the provider address" )
353+ providerFlags .StringVar (& deployProvider , "provider" , "" , "set the provider address" )
349354 providerFlags .StringVar (& deployOffer , "offer" , "" , "set the provider's offer identifier" )
350355 providerFlags .StringVar (& deployMachine , "machine" , buildRofl .DefaultMachineName , "machine to deploy into" )
351356 providerFlags .StringVar (& deployTerm , "term" , "" , "term to pay for in advance" )
0 commit comments