當前位置: 首頁>>代碼示例>>Golang>>正文


Golang plugin.Serve函數代碼示例

本文整理匯總了Golang中github.com/hashicorp/terraform/plugin.Serve函數的典型用法代碼示例。如果您正苦於以下問題:Golang Serve函數的具體用法?Golang Serve怎麽用?Golang Serve使用的例子?那麽, 這裏精選的函數代碼示例或許可以為您提供幫助。


在下文中一共展示了Serve函數的15個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Golang代碼示例。

示例1: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProvisionerFunc: func() terraform.ResourceProvisioner {
			return new(chef.ResourceProvisioner)
		},
	})
}
開發者ID:joelmoss,項目名稱:terraform-provisioner-chef-policy,代碼行數:7,代碼來源:main.go

示例2: main

func main() {
	serveOpts := &plugin.ServeOpts{
		ProvisionerFunc: ResourceProvisionerBuilder,
	}

	plugin.Serve(serveOpts)
}
開發者ID:jonmorehouse,項目名稱:terraform-provisioner-ansible,代碼行數:7,代碼來源:main.go

示例3: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: func() terraform.ResourceProvider {
			return Provider()
		},
	})
}
開發者ID:hanazuki,項目名稱:terraform-provider-conoha,代碼行數:7,代碼來源:main.go

示例4: main

func main() {

	// return details on provider plugin
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: func() terraform.ResourceProvider {

			return &schema.Provider{

				// rage4 api only needs email login & api key
				Schema: map[string]*schema.Schema{
					"email": &schema.Schema{
						Type:        schema.TypeString,
						Required:    true,
						DefaultFunc: envDefaultFunc("RAGE4_EMAIL"),
						Description: "email address associated with Rage4 account",
					},
					"api_key": &schema.Schema{
						Type:        schema.TypeString,
						Required:    true,
						DefaultFunc: envDefaultFunc("RAGE4_API_AKEY"),
						Description: "Rage4 API Key",
					},
				},

				ResourcesMap: map[string]*schema.Resource{
					"rage4_record": resourceRage4Record(),
				},

				ConfigureFunc: providerConfigure,
			}

		},
	})

}
開發者ID:anuaimi,項目名稱:terraform-rage4,代碼行數:35,代碼來源:provider_rage4.go

示例5: Run

func (c *InternalPluginCommand) Run(args []string) int {
	if len(args) != 2 {
		log.Printf("Wrong number of args; expected: terraform internal-plugin pluginType pluginName")
		return 1
	}

	pluginType := args[0]
	pluginName := args[1]

	log.SetPrefix(fmt.Sprintf("%s-%s (internal) ", pluginName, pluginType))

	switch pluginType {
	case "provider":
		pluginFunc, found := InternalProviders[pluginName]
		if !found {
			log.Printf("[ERROR] Could not load provider: %s", pluginName)
			return 1
		}
		log.Printf("[INFO] Starting provider plugin %s", pluginName)
		plugin.Serve(&plugin.ServeOpts{
			ProviderFunc: pluginFunc,
		})
	case "provisioner":
		pluginFunc, found := InternalProvisioners[pluginName]
		if !found {
			log.Printf("[ERROR] Could not load provisioner: %s", pluginName)
			return 1
		}
		log.Printf("[INFO] Starting provisioner plugin %s", pluginName)
		plugin.Serve(&plugin.ServeOpts{
			ProvisionerFunc: pluginFunc,
		})
	default:
		log.Printf("[ERROR] Invalid plugin type %s", pluginType)
		return 1
	}

	return 0
}
開發者ID:RezaDKhan,項目名稱:terraform,代碼行數:39,代碼來源:internal_plugin.go

示例6: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: nsot.Provider,
	})
}
開發者ID:sarguru,項目名稱:terraform-provider-nsot,代碼行數:5,代碼來源:main.go

示例7: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: chronos.Provider,
	})
}
開發者ID:mcoffin,項目名稱:terraform-provider-chronos,代碼行數:5,代碼來源:main.go

示例8: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: mesoskafka.Provider,
	})
}
開發者ID:Banno,項目名稱:terraform-provider-mesoskafka,代碼行數:5,代碼來源:main.go

示例9: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: librato.Provider,
	})
}
開發者ID:Zordrak,項目名稱:terraform,代碼行數:5,代碼來源:main.go

示例10: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: cloudflare.Provider,
	})
}
開發者ID:AssertSelenium,項目名稱:terraform,代碼行數:5,代碼來源:main.go

示例11: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: bigip.Provider,
	})
}
開發者ID:DealerDotCom,項目名稱:terraform-provider-bigip,代碼行數:5,代碼來源:main.go

示例12: main

func main() {
	plugin.Serve(new(file.ResourceProvisioner))
}
開發者ID:GeorgeErickson,項目名稱:terraform-1,代碼行數:3,代碼來源:main.go

示例13: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: pagerduty.Provider,
	})
}
開發者ID:paultyng,項目名稱:terraform,代碼行數:5,代碼來源:main.go

示例14: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: pingdom.Provider,
	})
}
開發者ID:russellcardullo,項目名稱:terraform-provider-pingdom,代碼行數:5,代碼來源:main.go

示例15: main

func main() {
	plugin.Serve(&plugin.ServeOpts{
		ProviderFunc: beanstalk.Provider,
	})
}
開發者ID:saymedia,項目名稱:terraform-beanstalk,代碼行數:5,代碼來源:main.go


注:本文中的github.com/hashicorp/terraform/plugin.Serve函數示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。