func toSSLConfig()

in internal/kibana/synthetics/schema.go [900:948]


func toSSLConfig(ctx context.Context, dg diag.Diagnostics, v tfSSLConfig, p string) (*kbapi.SSLConfig, diag.Diagnostics) {

	var ssl *kbapi.SSLConfig
	if !v.SslSupportedProtocols.IsNull() && !v.SslSupportedProtocols.IsUnknown() {
		sslSupportedProtocols := utils.ListTypeToSlice_String(ctx, v.SslSupportedProtocols, path.Root(p).AtName("ssl_supported_protocols"), &dg)
		if dg.HasError() {
			return nil, dg
		}
		ssl = &kbapi.SSLConfig{}
		ssl.SupportedProtocols = sslSupportedProtocols
	}

	if !v.SslVerificationMode.IsNull() && !v.SslVerificationMode.IsUnknown() {
		if ssl == nil {
			ssl = &kbapi.SSLConfig{}
		}
		ssl.VerificationMode = v.SslVerificationMode.ValueString()
	}

	certAuths := ValueStringSlice(v.SslCertificateAuthorities)
	if len(certAuths) > 0 {
		if ssl == nil {
			ssl = &kbapi.SSLConfig{}
		}
		ssl.CertificateAuthorities = certAuths
	}

	if !v.SslCertificate.IsUnknown() && !v.SslCertificate.IsNull() {
		if ssl == nil {
			ssl = &kbapi.SSLConfig{}
		}
		ssl.Certificate = v.SslCertificate.ValueString()
	}

	if !v.SslKey.IsUnknown() && !v.SslKey.IsNull() {
		if ssl == nil {
			ssl = &kbapi.SSLConfig{}
		}
		ssl.Key = v.SslKey.ValueString()
	}

	if !v.SslKeyPassphrase.IsUnknown() && !v.SslKeyPassphrase.IsNull() {
		if ssl == nil {
			ssl = &kbapi.SSLConfig{}
		}
		ssl.KeyPassphrase = v.SslKeyPassphrase.ValueString()
	}
	return ssl, dg
}