Corda-1137 - Docker/docker-compose on Windows (#2726)

* Remove IRS Docker demo helpers

(cherry picked from commit 8992b2c)

* Add configuration variables info in README
Switch to corda fork of docker-compose-rule to include default Windows docker location

* Review fixes
This commit is contained in:
Maksymilian Pawlak 2018-03-05 16:41:18 +00:00 committed by Katelyn Baker
parent 87c5ad8b88
commit a042240f26
4 changed files with 9 additions and 8 deletions

View File

@ -66,7 +66,7 @@ buildscript {
ext.shiro_version = '1.4.0' ext.shiro_version = '1.4.0'
ext.artifactory_plugin_version = constants.getProperty('artifactoryPluginVersion') ext.artifactory_plugin_version = constants.getProperty('artifactoryPluginVersion')
ext.snake_yaml_version = constants.getProperty('snakeYamlVersion') ext.snake_yaml_version = constants.getProperty('snakeYamlVersion')
ext.docker_compose_rule_version = '0.33.0' ext.docker_compose_rule_version = '0.33.1'
ext.selenium_version = '3.8.1' ext.selenium_version = '3.8.1'
ext.ghostdriver_version = '2.1.0' ext.ghostdriver_version = '2.1.0'

View File

@ -41,6 +41,13 @@ oracle example here: https://github.com/corda/oracle-example.
The system test utilize docker. Amount of RAM required to run the IRS system test is around 2.5GB, it is important The system test utilize docker. Amount of RAM required to run the IRS system test is around 2.5GB, it is important
to allocated appropriate system resources (On MacOS/Windows this may require explicit changes to docker configuration) to allocated appropriate system resources (On MacOS/Windows this may require explicit changes to docker configuration)
### Docker and docker-compose location
By default, the test expect docker and docker-compose to be located in default Unix installation path ("/usr/local/bin/"
or "/usr/bin/"). If your ```docker``` or ```docker-compose``` executables are located elsewhere (for example, on Windows)
you can specify the full path (including full executable name) using ```DOCKER_COMPOSE_LOCATION``` and ```DOCKER_LOCATION```
system variables.
### Gradle ### Gradle
The system test is designed to exercise the entire stack, including Corda nodes and the web frontend. It uses [Docker](https://www.docker.com), [docker-compose](https://docs.docker.com/compose/), and The system test is designed to exercise the entire stack, including Corda nodes and the web frontend. It uses [Docker](https://www.docker.com), [docker-compose](https://docs.docker.com/compose/), and

View File

@ -73,7 +73,7 @@ dependencies {
testCompile "org.assertj:assertj-core:${assertj_version}" testCompile "org.assertj:assertj-core:${assertj_version}"
integrationTestCompile project(path: ":samples:irs-demo:web", configuration: "demoArtifacts") integrationTestCompile project(path: ":samples:irs-demo:web", configuration: "demoArtifacts")
testCompile "com.palantir.docker.compose:docker-compose-rule-junit4:$docker_compose_rule_version" testCompile "com.github.corda:docker-compose-rule:$docker_compose_rule_version"
testCompile "org.seleniumhq.selenium:selenium-java:$selenium_version" testCompile "org.seleniumhq.selenium:selenium-java:$selenium_version"
testCompile "com.github.detro:ghostdriver:$ghostdriver_version" testCompile "com.github.detro:ghostdriver:$ghostdriver_version"
} }

View File

@ -72,15 +72,9 @@ class IRSDemoDockerTest {
//Wait for deals to appear in a rows table //Wait for deals to appear in a rows table
val dealsList = driverWait.until<WebElement>({ val dealsList = driverWait.until<WebElement>({
makeScreenshot(driver, "second")
it?.findElement(By.cssSelector("table#deal-list tbody tr")) it?.findElement(By.cssSelector("table#deal-list tbody tr"))
}) })
assertNotNull(dealsList) assertNotNull(dealsList)
} }
private fun makeScreenshot(driver: PhantomJSDriver, name: String) {
val screenshotAs = driver.getScreenshotAs(OutputType.FILE)
Files.copy(screenshotAs.toPath(), Paths.get("/Users", "maksymilianpawlak", "phantomjs", name + System.currentTimeMillis() + ".png"), StandardCopyOption.REPLACE_EXISTING)
}
} }