private static String contentServices(int nodes, NodeResources resources) {
        String resourcesStr = resources == null ?
                              "" :
                              String.format("        <resources vcpu='%.0f' memory='%.0fG' disk='%.0fG'/>",
                                            resources.vcpu(), resources.memoryGiB(), resources.diskGb());
        return "<services version='1.0'>" +
               "  <content id='default' version='1.0'>" +
               "    <redundancy>1</redundancy>" +
               "    <engine>" +
               "    <proton/>" +
               "    </engine>" +
               "    <documents>" +
               "      <document type='music' mode='index'/>" +
               "    </documents>" +
               "    <nodes count='" + nodes + "'>" +
               resourcesStr +
               "    </nodes>" +
               "   </content>" +
               "</services>";
    }
Emulate a self-hosted setup in only the sense that it does not set node resources on the provisioned hosts.
config-model/src/test/java/com/yahoo/vespa/model/application/validation/change/ResourcesReductionValidatorTest.java