INNER CODE UNIT · Go
initProvider
dikhan/terraform-provider-openapi · main.go:82
func initProvider(binaryName string) (*schema.Provider, error) {
providerName, err := getProviderName(binaryName)
if err != nil {
return nil, fmt.Errorf("error getting the provider's name from the binary '%s': %s", binaryName, err)
}
log.Printf("[INFO] Initializing '%s' provider", providerName)
p := openapi.ProviderOpenAPI{ProviderName: providerName}
provider, err := p.CreateSchemaProvider()
if err != nil {
return nil, fmt.Errorf("error initialising the terraform provider: %s", err)
}
return provider, nil
}
func getProviderName(binaryName string) (string, error) {
r, err := regexp.Compile("\\bterraform-provider-([a-zA-Z0-9]+)(?:_v[\\d]+\\.[\\d]+\\.[\\d]+)?\\b$")
if err != nil {
return "", err