in plugins/cli/shellcheck/src/integrationTest/java/co/elastic/gradle/cli/shellcheck/ShellcheckPluginIT.java [34:75]
void runShellcheck() {
helper.writeFile("src/sample.sh", """
#!/bin/bash
echo $A
if [[ $$(uname) == "Linux" ]]
then
echo "Using Linux"
fi
""");
helper.buildScript("""
plugins {
id("co.elastic.lifecycle")
id("co.elastic.vault")
id("co.elastic.cli.shellcheck")
}
vault {
address.set("https://vault-ci-prod.elastic.dev")
auth {
ghTokenFile()
ghTokenEnv()
tokenEnv()
roleAndSecretEnv()
}
}
cli {
shellcheck {
val credentials = vault.readAndCacheSecret("secret/ci/elastic-gradle-plugins/artifactory_creds").get()
username.set(credentials["username"])
password.set(credentials["plaintext"])
}
}
"""
);
final BuildResult result = gradleRunner
.withArguments("--warning-mode", "fail", "-s", "check")
.buildAndFail();
System.out.println(result.getOutput());
assertPathExists(helper.projectDir().resolve(".gradle/bin/shellcheck"));
assertEquals(TaskOutcome.FAILED, Objects.requireNonNull(result.task(":shellcheck")).getOutcome());
}