From f7ba5546588cb98227e58259b4b41c68f951ffef Mon Sep 17 00:00:00 2001 From: James Allen Date: Mon, 28 Nov 2016 16:51:43 +0000 Subject: [PATCH 1/3] set up acceptance tests to run via docker --- services/docstore/Gruntfile.coffee | 7 ++++++ .../docstore/config/settings.defaults.coffee | 14 ++++++----- .../test/acceptance/scripts/full-test.sh | 23 +++++++++++++++++++ 3 files changed, 38 insertions(+), 6 deletions(-) create mode 100755 services/docstore/test/acceptance/scripts/full-test.sh diff --git a/services/docstore/Gruntfile.coffee b/services/docstore/Gruntfile.coffee index 05e00c5a42..9e5af27034 100644 --- a/services/docstore/Gruntfile.coffee +++ b/services/docstore/Gruntfile.coffee @@ -6,6 +6,7 @@ module.exports = (grunt) -> app: options: index: "app.js" + coffee: app_src: expand: true, @@ -67,6 +68,10 @@ module.exports = (grunt) -> reporter: grunt.option('reporter') or 'spec' timeout: 10000 src: ["test/smoke/js/**/*.js"] + + shell: + dockerTests: + command: 'docker run -v "$(pwd):/app" -e AWS_ACCESS_KEY_ID="$AWS_ACCESS_KEY_ID" -e AWS_SECRET_ACCESS_KEY="$AWS_SECRET_ACCESS_KEY" -e AWS_BUCKET="$AWS_BUCKET" --rm sl-acceptance-test-runner' grunt.loadNpmTasks 'grunt-contrib-coffee' grunt.loadNpmTasks 'grunt-contrib-clean' @@ -89,6 +94,8 @@ module.exports = (grunt) -> grunt.registerTask 'test:smoke', ['compile:smoke_tests', 'mochaTest:smoke'] grunt.registerTask 'install', 'compile:app' + + grunt.registerTask 'test:acceptance:docker', ['compile:acceptance_tests', 'shell:dockerTests'] grunt.registerTask 'default', ['run'] diff --git a/services/docstore/config/settings.defaults.coffee b/services/docstore/config/settings.defaults.coffee index e474aea7b9..e74334d2ad 100644 --- a/services/docstore/config/settings.defaults.coffee +++ b/services/docstore/config/settings.defaults.coffee @@ -1,7 +1,7 @@ http = require('http') http.globalAgent.maxSockets = 300 -module.exports = +module.exports = Settings = internal: docstore: port: 3016 @@ -12,10 +12,12 @@ module.exports = docstore: healthCheck: - project_id: "5620bece05509b0a7a3cbc61" - # s3: - # key: "" - # secret: "" - # bucket: "something" + project_id: "" max_doc_length: 2 * 1024 * 1024 # 2mb + +if process.env['AWS_ACCESS_KEY_ID']? and process.env['AWS_SECRET_ACCESS_KEY']? and process.env['AWS_BUCKET']? + Settings.docstore.s3 = + key: process.env['AWS_ACCESS_KEY_ID'] + secret: process.env['AWS_SECRET_ACCESS_KEY'] + bucket: process.env['AWS_BUCKET'] \ No newline at end of file diff --git a/services/docstore/test/acceptance/scripts/full-test.sh b/services/docstore/test/acceptance/scripts/full-test.sh new file mode 100755 index 0000000000..a7a8eeca51 --- /dev/null +++ b/services/docstore/test/acceptance/scripts/full-test.sh @@ -0,0 +1,23 @@ +#! /usr/bin/env bash + +echo $AWS_BUCKET + +echo ">> Starting server..." + +grunt forever:app:start + +echo ">> Server started" + +sleep 5 + +echo ">> Running acceptance tests..." +grunt mochaTest:acceptance +_test_exit_code=$? + +echo ">> Killing server" + +grunt forever:app:stop + +echo ">> Done" + +exit $_test_exit_code From 7204c08fb24d307bb0100a837b4a8258b5868b48 Mon Sep 17 00:00:00 2001 From: James Allen Date: Tue, 29 Nov 2016 14:29:51 +0000 Subject: [PATCH 2/3] Rebuild npm modules as part of acceptance test docker run --- services/docstore/test/acceptance/scripts/full-test.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/services/docstore/test/acceptance/scripts/full-test.sh b/services/docstore/test/acceptance/scripts/full-test.sh index a7a8eeca51..f68ebbd3be 100755 --- a/services/docstore/test/acceptance/scripts/full-test.sh +++ b/services/docstore/test/acceptance/scripts/full-test.sh @@ -1,6 +1,6 @@ #! /usr/bin/env bash -echo $AWS_BUCKET +npm rebuild echo ">> Starting server..." From 10008fa9c46aca451f808cfb98aea0854dfef127 Mon Sep 17 00:00:00 2001 From: James Allen Date: Tue, 29 Nov 2016 14:41:12 +0000 Subject: [PATCH 3/3] Don't add colours in automated test script --- services/docstore/test/acceptance/scripts/full-test.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/services/docstore/test/acceptance/scripts/full-test.sh b/services/docstore/test/acceptance/scripts/full-test.sh index f68ebbd3be..9f6167e667 100755 --- a/services/docstore/test/acceptance/scripts/full-test.sh +++ b/services/docstore/test/acceptance/scripts/full-test.sh @@ -4,19 +4,19 @@ npm rebuild echo ">> Starting server..." -grunt forever:app:start +grunt --no-color forever:app:start echo ">> Server started" sleep 5 echo ">> Running acceptance tests..." -grunt mochaTest:acceptance +grunt --no-color mochaTest:acceptance _test_exit_code=$? echo ">> Killing server" -grunt forever:app:stop +grunt --no-color forever:app:stop echo ">> Done"