{"record":{"id":"ede27d6983b3d299","repo":"hashicorp/vagrant","slug":"vagrant-provisioners-ansible-ansible-host-pattern","errorCode":null,"errorMessage":"vagrant.provisioners.ansible.ansible_host_pattern_detected","messagePattern":"vagrant\\.provisioners\\.ansible\\.ansible_host_pattern_detected","errorType":"console","errorClass":null,"httpStatus":null,"severity":"error","filePath":"plugins/provisioners/ansible/provisioner/base.rb","lineNumber":285,"sourceCode":"\n          # This \"abstract\" step must create the inventory file and\n          # return its location path\n          # TODO: explain possible race conditions, etc.\n          @inventory_path = ship_generated_inventory(inventory)\n        end\n\n        # Write out groups information.\n        # All defined groups will be included, but only supported\n        # machines and defined child groups will be included.\n        def generate_inventory_groups\n          groups_of_groups = {}\n          defined_groups = []\n          group_vars = {}\n          inventory_groups = \"\"\n\n          # Verify if host range patterns exist and warn\n          if config.groups.any? { |gm| gm.to_s[RANGE_PATTERN] }\n            @machine.ui.warn(I18n.t(\"vagrant.provisioners.ansible.ansible_host_pattern_detected\"))\n          end\n\n          config.groups.each_pair do |gname, gmembers|\n            if gname.is_a?(Symbol)\n              gname = gname.to_s\n            end\n\n            if gmembers.is_a?(String)\n              gmembers = gmembers.split(/\\s+/)\n            elsif gmembers.is_a?(Hash)\n              gmembers = gmembers.each.collect{ |k, v| \"#{k}=#{v}\" }\n            elsif !gmembers.is_a?(Array)\n              gmembers = []\n            end\n\n            if gname.end_with?(\":children\")\n              groups_of_groups[gname] = gmembers\n              defined_groups << gname.sub(/:children$/, '')","sourceCodeStart":267,"sourceCodeEnd":303,"githubUrl":"https://github.com/hashicorp/vagrant/blob/35f3160f4ad6edc3a9f3aa9570adfc1a4d73aaa5/plugins/provisioners/ansible/provisioner/base.rb#L267-L303","documentation":"Error \"vagrant.provisioners.ansible.ansible_host_pattern_detected\" thrown in hashicorp/vagrant.","triggerScenarios":"Thrown at plugins/provisioners/ansible/provisioner/base.rb:285 when the library encounters an invalid state.","commonSituations":"See trigger scenarios.","solutions":[],"exampleFix":null,"handlingStrategy":null,"validationCode":null,"typeGuard":null,"tryCatchPattern":null,"preventionTips":[],"tags":[],"backgroundTag":null,"analyzedSha":"35f3160f4ad6edc3a9f3aa9570adfc1a4d73aaa5","analyzedAt":"2026-08-21T13:34:32.514Z","schemaVersion":2},"datasetVersion":"2026-08-21T18:17:14.833Z"}