theforeman/foreman · error · RuntimeError

Unknown Network ID: #{interface['network']}

Error message

Unknown Network ID: #{interface['network']}

What it means

Error "Unknown Network ID: #{interface['network']}" thrown in theforeman/foreman.

Source

Thrown at app/models/compute_resources/foreman/model/vmware.rb:501

      firmware_type = args.delete(:firmware_type).to_s
      args.merge!(process_firmware_attributes(args[:firmware], firmware_type, args[:provision_method]))
      args[:virtual_tpm] = validate_tpm_compatibility(args[:virtual_tpm], args[:firmware])

      args.reject! { |k, v| v.nil? }
      args
    end

    # Change network IDs for names only at the point of creation, as IDs are
    # used in the UI for select boxes etc.
    def parse_networks(args)
      args = args.deep_dup
      dc_networks = networks
      args["interfaces_attributes"]&.each do |key, interface|
        # Consolidate network to network id
        net = dc_networks.detect { |n| n.id == interface['network'] }
        net ||= dc_networks.detect { |n| n.name == interface['network'] }
        raise "Unknown Network ID: #{interface['network']}" if net.nil?
        interface["network"] = net.id
        interface["virtualswitch"] = net.virtualswitch
      end
      args
    end

    def create_vm(args = { })
      vm = nil
      test_connection
      return unless errors.empty?

      args = parse_networks(args)
      args = args.with_indifferent_access
      if args[:provision_method] == 'image'
        clone_vm(args)
      else
        vm = new_vm(args)
        raise ArgumentError, errors.full_messages.join(';') if errors.any?

View on GitHub (pinned to 6b05625475)

When it happens

Trigger: Thrown at app/models/compute_resources/foreman/model/vmware.rb:501 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of theforeman/foreman@6b05625475 (2026-08-23). Data as JSON: /api/errors/a6797f70dee00a20. Report an issue: GitHub.