{"record":{"id":"207c1c61ab80516c","repo":"hashicorp/packer","slug":"the-builder-s-is-unknown-by-packer-and-is-likely","errorCode":null,"errorMessage":"The builder %s is unknown by Packer, and is likely part of a plugin that is not installed.\nYou may find the needed plugin along with installation instructions documented on the Packer integrations page.\n\nhttps://developer.hashicorp.com/packer/integrations?filter=%s","messagePattern":"The builder (.+?) is unknown by Packer, and is likely part of a plugin that is not installed\\.\nYou may find the needed plugin along with installation instructions documented on the Packer integrations page\\.\n\nhttps://developer\\.hashicorp\\.com/packer/integrations\\?filter=(.+?)","errorType":"validation","errorClass":null,"httpStatus":null,"severity":"error","filePath":"packer/core.go","lineNumber":459,"sourceCode":"\t\t\t}\n\t\t}\n\t}\n\treturn builds, diags\n}\n\n// Build returns the Build object for the given name.\nfunc (c *Core) Build(n string) (*CoreBuild, error) {\n\t// Setup the builder\n\tconfigBuilder, ok := c.builds[n]\n\tif !ok {\n\t\treturn nil, fmt.Errorf(\"no such build found: %s\", n)\n\t}\n\t// BuilderStore = config.Builders, gathered in loadConfig() in main.go\n\t// For reference, the builtin BuilderStore is generated in\n\t// packer/config.go in the Discover() func.\n\n\tif !c.components.PluginConfig.Builders.Has(configBuilder.Type) {\n\t\terr := fmt.Errorf(\n\t\t\t\"The builder %s is unknown by Packer, and is likely part of a plugin that is not installed.\\n\"+\n\t\t\t\t\"You may find the needed plugin along with installation instructions documented on the Packer integrations page.\\n\\n\"+\n\t\t\t\t\"https://developer.hashicorp.com/packer/integrations?filter=%s\",\n\t\t\tconfigBuilder.Type,\n\t\t\tstrings.Split(configBuilder.Type, \"-\")[0],\n\t\t)\n\n\t\tif sugg := didyoumean.NameSuggestion(configBuilder.Type, c.components.PluginConfig.Builders.List()); sugg != \"\" {\n\t\t\terr = fmt.Errorf(\"Did you mean to use %q?\", sugg)\n\t\t}\n\n\t\treturn nil, err\n\t}\n\n\t// the Start command launches the builder plugin of the given type without\n\t// calling Prepare() or passing any build-specific details.\n\tbuilder, err := c.components.PluginConfig.Builders.Start(configBuilder.Type)\n\tif err != nil {","sourceCodeStart":441,"sourceCodeEnd":477,"githubUrl":"https://github.com/hashicorp/packer/blob/eb36e3c3e48a036f3e8cc94087636ee72e1303c9/packer/core.go#L441-L477","documentation":"The build's underlying component type (e.g. 'amazon-ebs') is not present among the installed builder plugins, so Packer cannot start it. The message links to the integrations page, filtering by the plugin name portion of the type (text before the first '-').","triggerScenarios":"Core.Build: c.components.PluginConfig.Builders.Has(configBuilder.Type) is false — the template references a builder provided by a plugin that is not installed (or installed under a different version/path). Raised for any `packer build` on such a template.","commonSituations":"Fresh machine/CI container without `packer init` run; plugin removed or renamed between plugin versions; using a third-party builder without installing its binary; PACKER_PLUGIN_PATH pointing at the wrong directory.","solutions":["Run `packer init <template>` in the template directory to install required plugins per required_plugins.","Install the specific plugin: `packer plugins install <source>`.","Check `packer plugins installed` and PACKER_PLUGIN_PATH for correct discovery.","Pin a required_plugins version compatible with your Packer core version."],"exampleFix":"// before\n$ packer build .   # builder 'amazon-ebs' unknown\n// after: add to template and run packer init\npacker {\n  required_plugins {\n    amazon = { source = \"github.com/hashicorp/amazon\", version = \">= 1.0.0\" }\n  }\n}","handlingStrategy":"validation","validationCode":"// Ensure required plugins are installed before building:\nexec.Command(\"packer\", \"init\", templatePath).Run()   // installs required_plugins\n// or check programmatically:\nif !core.Components.PluginConfig.Builders.Has(builderType) {\n    return fmt.Errorf(\"builder %s missing; run packer plugins install\", builderType)\n}","typeGuard":null,"tryCatchPattern":null,"preventionTips":["Always declare required_plugins with pinned versions in the template.","Run `packer init` as the first CI step on every job/machine.","Cache the plugin directory in CI (PACKER_PLUGIN_PATH) with restore from cache.","Avoid renaming plugin binaries manually."],"tags":["builder","plugin","not-installed"],"backgroundTag":"missing-packager-plugin","analyzedSha":"eb36e3c3e48a036f3e8cc94087636ee72e1303c9","analyzedAt":"2026-09-05T13:20:43.127Z","contentChangedAt":"2026-09-05T13:20:43.127Z","schemaVersion":2},"datasetVersion":"2026-09-12T17:17:11.597Z"}