@@ -185,21 +185,40 @@ certificates before they expire remains the user's responsibility.`,
185185 Elem : & schema.Resource {
186186 Schema : map [string ]* schema.Schema {
187187 "certificate_pem" : {
188+ Type : schema .TypeString ,
189+ Optional : true ,
190+ Deprecated : "Deprecated in favor of `pem_certificate`" ,
191+ Description : `**Deprecated** The certificate chain in PEM-encoded form.
192+
193+ Leaf certificate comes first, followed by intermediate ones if any.` ,
194+ Sensitive : true ,
195+ ExactlyOneOf : []string {"self_managed.0.certificate_pem" , "self_managed.0.pem_certificate" },
196+ },
197+ "pem_certificate" : {
188198 Type : schema .TypeString ,
189- Required : true ,
199+ Optional : true ,
190200 Description : `The certificate chain in PEM-encoded form.
191201
192202Leaf certificate comes first, followed by intermediate ones if any.` ,
193- Sensitive : true ,
203+ ExactlyOneOf : []string {"self_managed.0.certificate_pem" , "self_managed.0.pem_certificate" },
204+ },
205+ "pem_private_key" : {
206+ Type : schema .TypeString ,
207+ Optional : true ,
208+ Description : `The private key of the leaf certificate in PEM-encoded form.` ,
209+ ExactlyOneOf : []string {"self_managed.0.private_key_pem" , "self_managed.0.pem_private_key" },
194210 },
195211 "private_key_pem" : {
196- Type : schema .TypeString ,
197- Required : true ,
198- Description : `The private key of the leaf certificate in PEM-encoded form.` ,
199- Sensitive : true ,
212+ Type : schema .TypeString ,
213+ Optional : true ,
214+ Deprecated : "Deprecated in favor of `pem_private_key`" ,
215+ Description : `**Deprecated** The private key of the leaf certificate in PEM-encoded form.` ,
216+ Sensitive : true ,
217+ ExactlyOneOf : []string {"self_managed.0.private_key_pem" , "self_managed.0.pem_private_key" },
200218 },
201219 },
202220 },
221+ Sensitive : true ,
203222 ExactlyOneOf : []string {"self_managed" , "managed" },
204223 },
205224 "project" : {
@@ -341,9 +360,6 @@ func resourceCertificateManagerCertificateRead(d *schema.ResourceData, meta inte
341360 if err := d .Set ("scope" , flattenCertificateManagerCertificateScope (res ["scope" ], d , config )); err != nil {
342361 return fmt .Errorf ("Error reading Certificate: %s" , err )
343362 }
344- if err := d .Set ("self_managed" , flattenCertificateManagerCertificateSelfManaged (res ["selfManaged" ], d , config )); err != nil {
345- return fmt .Errorf ("Error reading Certificate: %s" , err )
346- }
347363 if err := d .Set ("managed" , flattenCertificateManagerCertificateManaged (res ["managed" ], d , config )); err != nil {
348364 return fmt .Errorf ("Error reading Certificate: %s" , err )
349365 }
@@ -503,29 +519,6 @@ func flattenCertificateManagerCertificateScope(v interface{}, d *schema.Resource
503519 return v
504520}
505521
506- func flattenCertificateManagerCertificateSelfManaged (v interface {}, d * schema.ResourceData , config * Config ) interface {} {
507- if v == nil {
508- return nil
509- }
510- original := v .(map [string ]interface {})
511- if len (original ) == 0 {
512- return nil
513- }
514- transformed := make (map [string ]interface {})
515- transformed ["certificate_pem" ] =
516- flattenCertificateManagerCertificateSelfManagedCertificatePem (original ["certificatePem" ], d , config )
517- transformed ["private_key_pem" ] =
518- flattenCertificateManagerCertificateSelfManagedPrivateKeyPem (original ["privateKeyPem" ], d , config )
519- return []interface {}{transformed }
520- }
521- func flattenCertificateManagerCertificateSelfManagedCertificatePem (v interface {}, d * schema.ResourceData , config * Config ) interface {} {
522- return v
523- }
524-
525- func flattenCertificateManagerCertificateSelfManagedPrivateKeyPem (v interface {}, d * schema.ResourceData , config * Config ) interface {} {
526- return v
527- }
528-
529522func flattenCertificateManagerCertificateManaged (v interface {}, d * schema.ResourceData , config * Config ) interface {} {
530523 if v == nil {
531524 return nil
@@ -661,6 +654,20 @@ func expandCertificateManagerCertificateSelfManaged(v interface{}, d TerraformRe
661654 transformed ["privateKeyPem" ] = transformedPrivateKeyPem
662655 }
663656
657+ transformedPemCertificate , err := expandCertificateManagerCertificateSelfManagedPemCertificate (original ["pem_certificate" ], d , config )
658+ if err != nil {
659+ return nil , err
660+ } else if val := reflect .ValueOf (transformedPemCertificate ); val .IsValid () && ! isEmptyValue (val ) {
661+ transformed ["pemCertificate" ] = transformedPemCertificate
662+ }
663+
664+ transformedPemPrivateKey , err := expandCertificateManagerCertificateSelfManagedPemPrivateKey (original ["pem_private_key" ], d , config )
665+ if err != nil {
666+ return nil , err
667+ } else if val := reflect .ValueOf (transformedPemPrivateKey ); val .IsValid () && ! isEmptyValue (val ) {
668+ transformed ["pemPrivateKey" ] = transformedPemPrivateKey
669+ }
670+
664671 return transformed , nil
665672}
666673
@@ -672,6 +679,14 @@ func expandCertificateManagerCertificateSelfManagedPrivateKeyPem(v interface{},
672679 return v , nil
673680}
674681
682+ func expandCertificateManagerCertificateSelfManagedPemCertificate (v interface {}, d TerraformResourceData , config * Config ) (interface {}, error ) {
683+ return v , nil
684+ }
685+
686+ func expandCertificateManagerCertificateSelfManagedPemPrivateKey (v interface {}, d TerraformResourceData , config * Config ) (interface {}, error ) {
687+ return v , nil
688+ }
689+
675690func expandCertificateManagerCertificateManaged (v interface {}, d TerraformResourceData , config * Config ) (interface {}, error ) {
676691 l := v .([]interface {})
677692 if len (l ) == 0 || l [0 ] == nil {
0 commit comments