1717// under the License.
1818//
1919
20-
2120package cloudstack
2221
2322import (
2423 "fmt"
24+ "strconv"
2525
2626 "github.com/apache/cloudstack-go/v2/cloudstack"
2727 "github.com/hashicorp/terraform-plugin-sdk/v2/helper/schema"
@@ -436,15 +436,6 @@ func resourceCloudStackServiceOffering() *schema.Resource {
436436 Optional : true ,
437437 Computed : true ,
438438 },
439- "service_offering_details" : {
440- Description : "Service offering details for GPU configuration and other advanced settings" ,
441- Type : schema .TypeMap ,
442- Optional : true ,
443- ForceNew : true ,
444- Elem : & schema.Schema {
445- Type : schema .TypeString ,
446- },
447- },
448439 },
449440 }
450441}
@@ -584,14 +575,6 @@ func resourceCloudStackServiceOfferingCreate(d *schema.ResourceData, meta interf
584575 p .SetTags (v .(string ))
585576 }
586577
587- << << << < HEAD
588- if v , ok := d .GetOk ("domain_id" ); ok {
589- domains := make ([]string , 0 )
590- for _ , d := range v .([]interface {}) {
591- domains = append (domains , d .(string ))
592- }
593- p .SetDomainid (domains )
594- == == == =
595578 if details , ok := d .GetOk ("service_offering_details" ); ok {
596579 serviceOfferingDetails := make (map [string ]string )
597580 for k , v := range details .(map [string ]interface {}) {
@@ -600,14 +583,6 @@ func resourceCloudStackServiceOfferingCreate(d *schema.ResourceData, meta interf
600583 p .SetServiceofferingdetails (serviceOfferingDetails )
601584 }
602585
603- log .Printf ("[DEBUG] Creating Service Offering %s" , name )
604- s , err := cs .ServiceOffering .CreateServiceOffering (p )
605-
606- if err != nil {
607- return err
608- >> >> >> > origin / main
609- }
610-
611586 if v , ok := d .GetOk ("zone_id" ); ok {
612587 zones := make ([]string , 0 )
613588 for _ , z := range v .([]interface {}) {
@@ -759,33 +734,6 @@ func resourceCloudStackServiceOfferingRead(d *schema.ResourceData, meta interfac
759734 d .Set ("host_tags" , so .Hosttags )
760735 d .Set ("storage_type" , so .Storagetype )
761736
762- << << << < HEAD
763- // Only set customized if it was explicitly configured by user
764- // When not configured, CloudStack auto-determines based on cpu/memory presence
765- if _ , ok := d .GetOkExists ("customized" ); ok {
766- d .Set ("customized" , so .Iscustomized )
767- == == == =
768- fields := map [string ]interface {}{
769- "name" : s .Name ,
770- "display_text" : s .Displaytext ,
771- "cpu_number" : s .Cpunumber ,
772- "cpu_speed" : s .Cpuspeed ,
773- "host_tags" : s .Hosttags ,
774- "limit_cpu_use" : s .Limitcpuuse ,
775- "memory" : s .Memory ,
776- "offer_ha" : s .Offerha ,
777- "storage_type" : s .Storagetype ,
778- "customized" : s .Iscustomized ,
779- "min_cpu_number" : getIntFromDetails (s .Serviceofferingdetails , "mincpunumber" ),
780- "max_cpu_number" : getIntFromDetails (s .Serviceofferingdetails , "maxcpunumber" ),
781- "min_memory" : getIntFromDetails (s .Serviceofferingdetails , "minmemory" ),
782- "max_memory" : getIntFromDetails (s .Serviceofferingdetails , "maxmemory" ),
783- "encrypt_root" : s .Encryptroot ,
784- "storage_tags" : s .Storagetags ,
785- "service_offering_details" : getServiceOfferingDetails (s .Serviceofferingdetails ),
786- >> >> >> > origin / main
787- }
788-
789737 // Set GPU fields from dedicated response fields
790738 // Use gpucardname (not gpucardid) to match what user provides in terraform config
791739 if so .Gpucardname != "" {
@@ -1004,8 +952,6 @@ func resourceCloudStackServiceOfferingDelete(d *schema.ResourceData, meta interf
1004952
1005953 return nil
1006954}
1007- << << << < HEAD
1008- == == == =
1009955
1010956// getIntFromDetails extracts an integer value from the service offering details map.
1011957func getIntFromDetails (details map [string ]string , key string ) interface {} {
@@ -1044,4 +990,3 @@ func getServiceOfferingDetails(details map[string]string) map[string]interface{}
1044990
1045991 return result
1046992}
1047- >> >> >> > origin / main
0 commit comments