Browse Source

SONAR-12037 Run cluster ITs on Cirrus

tags/7.8
Duarte Meneses 5 years ago
parent
commit
c4840639eb

+ 1
- 0
.cirrus.yml View File

QA_CATEGORY: License QA_CATEGORY: License
QA_CATEGORY: Branch QA_CATEGORY: Branch
QA_CATEGORY: Upgrade QA_CATEGORY: Upgrade
QA_CATEGORY: HA
gradle_cache: gradle_cache:
folder: ~/.gradle/caches folder: ~/.gradle/caches
script: script:

+ 1
- 0
build.gradle View File

dependency 'junit:junit:4.12' dependency 'junit:junit:4.12'
dependency 'mysql:mysql-connector-java:5.1.46' dependency 'mysql:mysql-connector-java:5.1.46'
dependency 'net.jpountz.lz4:lz4:1.3.0' dependency 'net.jpountz.lz4:lz4:1.3.0'
dependency 'org.awaitility:awaitility:3.1.6'
dependency 'org.apache.commons:commons-csv:1.4' dependency 'org.apache.commons:commons-csv:1.4'
dependency 'org.apache.commons:commons-email:1.5' dependency 'org.apache.commons:commons-email:1.5'
dependency 'org.apache.commons:commons-dbcp2:2.5.0' dependency 'org.apache.commons:commons-dbcp2:2.5.0'

+ 6
- 0
server/sonar-main/src/main/java/org/sonar/application/es/EsSettings.java View File

private static final Logger LOGGER = LoggerFactory.getLogger(EsSettings.class); private static final Logger LOGGER = LoggerFactory.getLogger(EsSettings.class);
private static final String STANDALONE_NODE_NAME = "sonarqube"; private static final String STANDALONE_NODE_NAME = "sonarqube";
private static final String SECCOMP_PROPERTY = "bootstrap.system_call_filter"; private static final String SECCOMP_PROPERTY = "bootstrap.system_call_filter";
private static final String ALLOW_MMAP = "node.store.allow_mmapfs";


private final Props props; private final Props props;
private final EsInstallation fileSystem; private final EsInstallation fileSystem;
if (props.value("sonar.search.javaAdditionalOpts", "").contains("-D" + SECCOMP_PROPERTY + "=false")) { if (props.value("sonar.search.javaAdditionalOpts", "").contains("-D" + SECCOMP_PROPERTY + "=false")) {
builder.put(SECCOMP_PROPERTY, "false"); builder.put(SECCOMP_PROPERTY, "false");
} }

// to be used with HA QA, where we can't easily set mmap size when running with docker.
if (props.value("sonar.search.javaAdditionalOpts", "").contains("-D" + ALLOW_MMAP + "=false")) {
builder.put(ALLOW_MMAP, "false");
}
} }
} }

+ 9
- 0
server/sonar-main/src/test/java/org/sonar/application/es/EsSettingsTest.java View File

assertThat(settings.get("bootstrap.system_call_filter")).isEqualTo("false"); assertThat(settings.get("bootstrap.system_call_filter")).isEqualTo("false");
} }


@Test
public void disable_mmap_if_configured_in_search_additional_props() throws Exception {
Props props = minProps(CLUSTER_DISABLED);
props.set("sonar.search.javaAdditionalOpts", "-Dnode.store.allow_mmapfs=false");
Map<String, String> settings = new EsSettings(props, new EsInstallation(props), System2.INSTANCE).build();

assertThat(settings.get("node.store.allow_mmapfs")).isEqualTo("false");
}

private Props minProps(boolean cluster) throws IOException { private Props minProps(boolean cluster) throws IOException {
File homeDir = temp.newFolder(); File homeDir = temp.newFolder();
Props props = new Props(new Properties()); Props props = new Props(new Properties());

Loading…
Cancel
Save