func NewSiteConnection(ctx *pulumi.Context,
	name string, args *SiteConnectionArgs, opts ...pulumi.ResourceOption) (*SiteConnection, error) {
	if args == nil {
		return nil, errors.New("missing one or more required arguments")
	}

	if args.IkepolicyId == nil {
		return nil, errors.New("invalid value for required argument 'IkepolicyId'")
	}
	if args.IpsecpolicyId == nil {
		return nil, errors.New("invalid value for required argument 'IpsecpolicyId'")
	}
	if args.PeerAddress == nil {
		return nil, errors.New("invalid value for required argument 'PeerAddress'")
	}
	if args.PeerId == nil {
		return nil, errors.New("invalid value for required argument 'PeerId'")
	}
	if args.Psk == nil {
		return nil, errors.New("invalid value for required argument 'Psk'")
	}
	if args.VpnserviceId == nil {
		return nil, errors.New("invalid value for required argument 'VpnserviceId'")
	}
	var resource SiteConnection
	err := ctx.RegisterResource("openstack:vpnaas/siteConnection:SiteConnection", name, args, &resource, opts...)
	if err != nil {
		return nil, err
	}
	return &resource, nil
}
// NewSiteConnection registers a new resource with the given unique name, arguments, and options.
NewSiteConnection registers a new resource with the given unique name, arguments, and options.
// NewSiteConnection registers a new resource with the given unique name arguments and options .
func NewSiteConnection(ctx *pulumi.Context,
	name string, args *SiteConnectionArgs, opts ...pulumi.ResourceOption) (*SiteConnection, error) {
	if args == nil {
		return nil, errors.New("missing one or more required arguments")
	}
	if args.IkepolicyId == nil {
		return nil, errors.New("invalid value for required argument 'IkepolicyId'")
	}
	if args.IpsecpolicyId == nil {
		return nil, errors.New("invalid value for required argument 'IpsecpolicyId'")
	}
	if args.PeerAddress == nil {
		return nil, errors.New("invalid value for required argument 'PeerAddress'")
	}
	if args.PeerId == nil {
		return nil, errors.New("invalid value for required argument 'PeerId'")
	}
	if args.Psk == nil {
		return nil, errors.New("invalid value for required argument 'Psk'")
	}
	if args.VpnserviceId == nil {
		return nil, errors.New("invalid value for required argument 'VpnserviceId'")
	}
	var resource SiteConnection
	err := ctx.RegisterResource("openstack:vpnaas/siteConnection:SiteConnection", name, args, &resource, opts...)
	if err != nil {
		return nil, err
	}
	return &resource, nil
}
func NewSiteConnection ( ctx * pulumi . Context , name string , args * SiteConnectionArgs , opts ... pulumi . ResourceOption ) ( * SiteConnection , error ) { if args == nil { return nil , errors . New ( " " ) } if args . IkepolicyId == nil { return nil , errors . New ( " " ) } if args . IpsecpolicyId == nil { return nil , errors . New ( " " ) } if args . PeerAddress == nil { return nil , errors . New ( " " ) } if args . PeerId == nil { return nil , errors . New ( " " ) } if args . Psk == nil { return nil , errors . New ( " " ) } if args . VpnserviceId == nil { return nil , errors . New ( " " ) } var resource SiteConnection err := ctx . RegisterResource ( " " , name , args , & resource , opts ... ) if err != nil { return nil , err } return & resource , nil }
NewSiteConnection registers a new resource with the given unique name, arguments, and options.
NewSiteConnection registers a new resource with the given unique name arguments and options .