// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "email": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("NSOT_EMAIL", nil), Description: "Your nsot email.", }, "secret": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("NSOT_SECRET", nil), Description: "The secret key for API operations.", }, "url": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("NSOT_URL", nil), Description: "The URL to your nsot instance.", }, }, ResourcesMap: map[string]*schema.Resource{ "nsot_site": resourceNsotSite(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ ResourcesMap: map[string]*schema.Resource{ "influxdb_database": resourceDatabase(), "influxdb_user": resourceUser(), "influxdb_continuous_query": resourceContinuousQuery(), }, Schema: map[string]*schema.Schema{ "url": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc( "INFLUXDB_URL", "http://localhost:8086/", ), }, "username": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("INFLUXDB_USERNAME", ""), }, "password": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("INFLUXDB_PASSWORD", ""), }, }, ConfigureFunc: configure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "address": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("NOMAD_ADDR", nil), Description: "URL of the root of the target Nomad agent.", }, "region": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("NOMAD_REGION", ""), Description: "Region of the target Nomad agent.", }, }, ConfigureFunc: providerConfigure, ResourcesMap: map[string]*schema.Resource{ "nomad_job": resourceJob(), }, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("ATLAS_TOKEN", nil), Description: descriptions["token"], }, "address": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("ATLAS_ADDRESS", defaultAtlasServer), Description: descriptions["address"], }, }, ResourcesMap: map[string]*schema.Resource{ "atlas_artifact": resourceArtifact(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "username": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("ULTRADNS_USERNAME", nil), Description: "UltraDNS Username.", }, "password": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("ULTRADNS_PASSWORD", nil), Description: "UltraDNS User Password", }, "baseurl": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("ULTRADNS_BASEURL", nil), Description: "UltraDNS Base Url(defaults to testing)", }, }, ResourcesMap: map[string]*schema.Resource{ "ultradns_record": resourceUltraDNSRecord(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "credentials": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_CREDENTIALS", nil), ValidateFunc: validateCredentials, }, "project": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_PROJECT", nil), }, "region": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_REGION", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "googleappengine_app": resourceAppengine(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { // The actual provider return &schema.Provider{ Schema: map[string]*schema.Schema{ "token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GITHUB_TOKEN", nil), Description: descriptions["token"], }, "organization": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GITHUB_ORGANIZATION", nil), Description: descriptions["organization"], }, }, ResourcesMap: map[string]*schema.Resource{ "github_team": resourceGithubTeam(), "github_team_membership": resourceGithubTeamMembership(), "github_team_repository": resourceGithubTeamRepository(), "github_membership": resourceGithubMembership(), }, ConfigureFunc: providerConfigure, } }
func Provider() *schema.Provider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "username": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("CONOHA_USERNAME", nil), }, "password": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("CONOHA_PASSWORD", nil), }, "tenant_name": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("CONOHA_TENANT_NAME", nil), }, "region": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("CONOHA_REGION", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "conoha_compute_keypair": resourceComputeKeypair(), "conoha_dns_domain": resourceDnsDomain(), }, ConfigureFunc: configure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "credentials": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_CREDENTIALS", nil), }, "project": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_PROJECT", nil), }, "region": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_REGION", nil), }, "CredentialsFile": &schema.Schema{ Type: schema.TypeString, Computed: true, }, }, ResourcesMap: map[string]*schema.Resource{ "googlecli_dataflow": resourceDataflow(), "googlecli_container_replica_controller": resourceContainerReplicaController(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "url": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GRAFANA_URL", nil), Description: "URL of the root of the target Grafana server.", }, "auth": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GRAFANA_AUTH", nil), Description: "Credentials for accessing the Grafana API.", }, }, ResourcesMap: map[string]*schema.Resource{ "grafana_dashboard": ResourceDashboard(), "grafana_data_source": ResourceDataSource(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "customer_name": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DYN_CUSTOMER_NAME", nil), Description: "A Dyn customer name.", }, "username": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DYN_USERNAME", nil), Description: "A Dyn username.", }, "password": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DYN_PASSWORD", nil), Description: "The Dyn password.", }, }, ResourcesMap: map[string]*schema.Resource{ "dyn_record": resourceDynRecord(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "target": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BOSH_TARGET", nil), }, "user": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BOSH_USER", nil), }, "password": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BOSH_PASSWORD", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "bosh_stemcell": resourceBoshStemcell(), "bosh_release": resourceBoshRelease(), "bosh_cloudconfig": resourceBoshCloudConfig(), "bosh_deployment": resourceBoshDeployment(), "bosh_microbosh": resourceBoshMicrobosh(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "api_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DATADOG_API_KEY", nil), // TODO: not fetched from env? }, "app_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DATADOG_APP_KEY", nil), }, }, ResourcesMap: map[string]*schema.Resource{ // TODO this is where the other resources will be mapped "datadog_dashboard": resourceDatadogDashboard(), "datadog_graph": resourceDatadogGraph(), "datadog_monitor": resourceDatadogMonitor(), "datadog_service_check": resourceDatadogServiceCheck(), "datadog_metric_alert": resourceDatadogMetricAlert(), "datadog_outlier_alert": resourceDatadogOutlierAlert(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ ResourcesMap: map[string]*schema.Resource{ "beanstalk_hipchat_integration": resourceHipchatIntegration(), "beanstalk_jira_integration": resourceJiraIntegration(), "beanstalk_modular_webhook_integration": resourceModularWebhookIntegration(), "beanstalk_repository": resourceRepository(), "beanstalk_repository_code_review_settings": resourceRepositoryCodeReviewSettings(), "beanstalk_user": resourceUser(), "beanstalk_team": resourceTeam(), }, Schema: map[string]*schema.Schema{ "account_name": &schema.Schema{ Type: schema.TypeString, Required: true, }, "username": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BEANSTALK_USERNAME", nil), }, "access_token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BEANSTALK_ACCESS_TOKEN", nil), }, }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "account": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BIGV_ACCOUNT", nil), Description: "The bigv account name", }, "user": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BIGV_USER", nil), Description: "The bigv user name", }, "password": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("BGIV_PASSWORD", nil), Description: "The bigv password", }, }, ResourcesMap: map[string]*schema.Resource{ "bigv_vm": resourceBigvVM(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "account_file": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_ACCOUNT_FILE", nil), ValidateFunc: validateAccountFile, }, "project": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_PROJECT", nil), }, "region": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("GOOGLE_REGION", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "google_compute_autoscaler": resourceComputeAutoscaler(), "google_compute_address": resourceComputeAddress(), "google_compute_backend_service": resourceComputeBackendService(), "google_compute_disk": resourceComputeDisk(), "google_compute_firewall": resourceComputeFirewall(), "google_compute_forwarding_rule": resourceComputeForwardingRule(), "google_compute_global_address": resourceComputeGlobalAddress(), "google_compute_global_forwarding_rule": resourceComputeGlobalForwardingRule(), "google_compute_http_health_check": resourceComputeHttpHealthCheck(), "google_compute_instance": resourceComputeInstance(), "google_compute_instance_group_manager": resourceComputeInstanceGroupManager(), "google_compute_instance_template": resourceComputeInstanceTemplate(), "google_compute_network": resourceComputeNetwork(), "google_compute_project_metadata": resourceComputeProjectMetadata(), "google_compute_route": resourceComputeRoute(), "google_compute_ssl_certificate": resourceComputeSslCertificate(), "google_compute_target_http_proxy": resourceComputeTargetHttpProxy(), "google_compute_target_https_proxy": resourceComputeTargetHttpsProxy(), "google_compute_target_pool": resourceComputeTargetPool(), "google_compute_url_map": resourceComputeUrlMap(), "google_compute_vpn_gateway": resourceComputeVpnGateway(), "google_compute_vpn_tunnel": resourceComputeVpnTunnel(), "google_container_cluster": resourceContainerCluster(), "google_dns_managed_zone": resourceDnsManagedZone(), "google_dns_record_set": resourceDnsRecordSet(), "google_sql_database": resourceSqlDatabase(), "google_sql_database_instance": resourceSqlDatabaseInstance(), "google_storage_bucket": resourceStorageBucket(), "google_storage_bucket_acl": resourceStorageBucketAcl(), "google_storage_bucket_object": resourceStorageBucketObject(), "google_storage_object_acl": resourceStorageObjectAcl(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "api_url": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RANCHER_URL", nil), Description: descriptions["api_url"], }, "access_key": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("RANCHER_ACCESS_KEY", ""), Description: descriptions["access_key"], }, "secret_key": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("RANCHER_SECRET_KEY", ""), Description: descriptions["secret_key"], }, }, ResourcesMap: map[string]*schema.Resource{ "rancher_environment": resourceRancherEnvironment(), "rancher_registration_token": resourceRancherRegistrationToken(), "rancher_registry": resourceRancherRegistry(), "rancher_registry_credential": resourceRancherRegistryCredential(), "rancher_stack": resourceRancherStack(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "endpoint": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("MYSQL_ENDPOINT", nil), }, "username": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("MYSQL_USERNAME", nil), }, "password": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("MYSQL_PASSWORD", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "mysql_database": resourceDatabase(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "api_url": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("CLOUDSTACK_API_URL", nil), }, "api_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("CLOUDSTACK_API_KEY", nil), }, "secret_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("CLOUDSTACK_SECRET_KEY", nil), }, "http_get_only": &schema.Schema{ Type: schema.TypeBool, Required: true, DefaultFunc: schema.EnvDefaultFunc("CLOUDSTACK_HTTP_GET_ONLY", false), }, "timeout": &schema.Schema{ Type: schema.TypeInt, Required: true, DefaultFunc: schema.EnvDefaultFunc("CLOUDSTACK_TIMEOUT", 900), }, }, ResourcesMap: map[string]*schema.Resource{ "cloudstack_affinity_group": resourceCloudStackAffinityGroup(), "cloudstack_disk": resourceCloudStackDisk(), "cloudstack_egress_firewall": resourceCloudStackEgressFirewall(), "cloudstack_firewall": resourceCloudStackFirewall(), "cloudstack_instance": resourceCloudStackInstance(), "cloudstack_ipaddress": resourceCloudStackIPAddress(), "cloudstack_loadbalancer_rule": resourceCloudStackLoadBalancerRule(), "cloudstack_network": resourceCloudStackNetwork(), "cloudstack_network_acl": resourceCloudStackNetworkACL(), "cloudstack_network_acl_rule": resourceCloudStackNetworkACLRule(), "cloudstack_nic": resourceCloudStackNIC(), "cloudstack_port_forward": resourceCloudStackPortForward(), "cloudstack_secondary_ipaddress": resourceCloudStackSecondaryIPAddress(), "cloudstack_ssh_keypair": resourceCloudStackSSHKeyPair(), "cloudstack_static_nat": resourceCloudStackStaticNAT(), "cloudstack_template": resourceCloudStackTemplate(), "cloudstack_vpc": resourceCloudStackVPC(), "cloudstack_vpn_connection": resourceCloudStackVPNConnection(), "cloudstack_vpn_customer_gateway": resourceCloudStackVPNCustomerGateway(), "cloudstack_vpn_gateway": resourceCloudStackVPNGateway(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "user": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("VSPHERE_USER", nil), Description: "The user name for vSphere API operations.", }, "password": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("VSPHERE_PASSWORD", nil), Description: "The user password for vSphere API operations.", }, "vcenter_server": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("VSPHERE_VCENTER", nil), Description: "The vCenter Server name for vSphere API operations.", }, }, ResourcesMap: map[string]*schema.Resource{ "vsphere_virtual_machine": resourceVSphereVirtualMachine(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "email": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("HEROKU_EMAIL", nil), }, "api_key": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("HEROKU_API_KEY", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "heroku_app": resourceHerokuApp(), "heroku_addon": resourceHerokuAddon(), "heroku_domain": resourceHerokuDomain(), "heroku_drain": resourceHerokuDrain(), "heroku_cert": resourceHerokuCert(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "access_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("SCALEWAY_ACCESS_KEY", nil), Description: "The API key for Scaleway API operations.", }, "organization": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("SCALEWAY_ORGANIZATION", nil), Description: "The Organization ID for Scaleway API operations.", }, }, ResourcesMap: map[string]*schema.Resource{ "scaleway_server": resourceScalewayServer(), "scaleway_ip": resourceScalewayIP(), "scaleway_security_group": resourceScalewaySecurityGroup(), "scaleway_security_group_rule": resourceScalewaySecurityGroupRule(), "scaleway_volume": resourceScalewayVolume(), "scaleway_volume_attachment": resourceScalewayVolumeAttachment(), }, ConfigureFunc: providerConfigure, } }
func newProvider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "email": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("LIBRATO_EMAIL", nil), Description: "The email address for the Librato account.", }, "token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("LIBRATO_TOKEN", nil), Description: "The auth token for the Librato account.", }, }, ResourcesMap: map[string]*schema.Resource{ "librato_space": resourceLibratoSpace(), "librato_space_chart": resourceLibratoSpaceChart(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "email": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DNSIMPLE_EMAIL", nil), Description: "A registered DNSimple email address.", }, "token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DNSIMPLE_TOKEN", nil), Description: "The token key for API operations.", }, }, ResourcesMap: map[string]*schema.Resource{ "dnsimple_record": resourceDNSimpleRecord(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform.ResourceProvider. func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "refreshToken": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RIGHTSCALE_REFRESHTOKEN", nil), Description: "RightScale OAuth refresh token.", }, "accountID": &schema.Schema{ Type: schema.TypeInt, Required: true, DefaultFunc: schema.EnvDefaultFunc("RIGHTSCALE_ACCOUNTID", nil), Description: "RightScale account ID to work with.", }, }, ResourcesMap: map[string]*schema.Resource{ "rightscale_cloud": resourceRightScaleCloud(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "username": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("SOFTLAYER_USERNAME", nil), Description: "The user name for SoftLayer API operations.", }, "api_key": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("SOFTLAYER_API_KEY", nil), Description: "The API key for SoftLayer API operations.", }, }, ResourcesMap: map[string]*schema.Resource{ "softlayer_virtual_guest": resourceSoftLayerVirtualGuest(), "softlayer_ssh_key": resourceSoftLayerSSHKey(), }, ConfigureFunc: providerConfigure, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "host": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("DOCKER_HOST", "unix:/run/docker.sock"), Description: "The Docker daemon address", }, "cert_path": &schema.Schema{ Type: schema.TypeString, Optional: true, DefaultFunc: schema.EnvDefaultFunc("DOCKER_CERT_PATH", ""), Description: "Path to directory with Docker TLS config", }, }, ResourcesMap: map[string]*schema.Resource{ "docker_container": resourceDockerContainer(), "docker_image": resourceDockerImage(), "docker_network": resourceDockerNetwork(), "docker_volume": resourceDockerVolume(), }, ConfigureFunc: providerConfigure, } }
func resourceNetworkingFloatingIPV2() *schema.Resource { return &schema.Resource{ Create: resourceNetworkFloatingIPV2Create, Read: resourceNetworkFloatingIPV2Read, Update: resourceNetworkFloatingIPV2Update, Delete: resourceNetworkFloatingIPV2Delete, Schema: map[string]*schema.Schema{ "region": &schema.Schema{ Type: schema.TypeString, Required: true, ForceNew: true, DefaultFunc: schema.EnvDefaultFunc("OS_REGION_NAME", ""), }, "address": &schema.Schema{ Type: schema.TypeString, Computed: true, }, "pool": &schema.Schema{ Type: schema.TypeString, Required: true, ForceNew: true, DefaultFunc: schema.EnvDefaultFunc("OS_POOL_NAME", nil), }, "port_id": &schema.Schema{ Type: schema.TypeString, Optional: true, Computed: true, }, }, } }
func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "url": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RUNDECK_URL", nil), Description: "URL of the root of the target Rundeck server.", }, "auth_token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RUNDECK_AUTH_TOKEN", nil), Description: "Auth token to use with the Rundeck API.", }, "allow_unverified_ssl": &schema.Schema{ Type: schema.TypeBool, Optional: true, Description: "If set, the Rundeck client will permit unverifiable SSL certificates.", }, }, ResourcesMap: map[string]*schema.Resource{ "rundeck_project": resourceRundeckProject(), "rundeck_job": resourceRundeckJob(), "rundeck_private_key": resourceRundeckPrivateKey(), "rundeck_public_key": resourceRundeckPublicKey(), }, ConfigureFunc: providerConfigure, } }
// Provider returns a terraform ResourceProvider func Provider() terraform.ResourceProvider { return &schema.Provider{ Schema: map[string]*schema.Schema{ "account_id": &schema.Schema{ Type: schema.TypeInt, Required: true, DefaultFunc: schema.EnvDefaultFunc("RS_ACCOUNT_ID", nil), }, "refresh_token": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RS_REFRESH_TOKEN", nil), }, "api_host": &schema.Schema{ Type: schema.TypeString, Required: true, DefaultFunc: schema.EnvDefaultFunc("RS_API_HOST", nil), }, }, ResourcesMap: map[string]*schema.Resource{ "rightscale_ssh_key": resourceRightScaleSSHKey(), "rightscale_deployment": resourceRightScaleDeployment(), }, ConfigureFunc: configureProvider, } }