spec: separate selenium config into selenium.yml
most builds do not need selenium container so move the selenium config into it's own yml and only add to env variable when needed. Removed docker-compose-build.sh, add docker-compose build code into the build scripts. closes: CORE-3253 Change-Id: I5698019c69dd8940624589928b8a7d4b65f940a5 Reviewed-on: https://gerrit.instructure.com/206247 Tested-by: Jenkins Reviewed-by: Robert Lamb <rlamb@instructure.com> QA-Review: James Butters <jbutters@instructure.com> Product-Review: James Butters <jbutters@instructure.com>
This commit is contained in:
parent
62c92a2264
commit
355b92601b
|
@ -50,11 +50,11 @@ pipeline {
|
|||
|
||||
options {
|
||||
ansiColor('xterm')
|
||||
parallelsAlwaysFailFast()
|
||||
}
|
||||
|
||||
environment {
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml'
|
||||
// include selenium while smoke is running locally
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml:docker-compose.new-jenkins-selenium.yml'
|
||||
GERRIT_PORT = '29418'
|
||||
GERRIT_URL = "$GERRIT_HOST:$GERRIT_PORT"
|
||||
|
||||
|
@ -154,7 +154,8 @@ pipeline {
|
|||
stage('Smoke Test') {
|
||||
steps {
|
||||
timeout(time: 10) {
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
sh 'build/new-jenkins/smoke-test.sh'
|
||||
}
|
||||
}
|
||||
|
|
|
@ -36,7 +36,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
// todo create contract tests script
|
||||
// sh 'build/new-jenkins/.sh'
|
||||
}
|
||||
|
|
|
@ -36,7 +36,6 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
// Todo: create linters-js script
|
||||
// sh 'build/new-jenkins/.sh'
|
||||
}
|
||||
|
|
|
@ -36,7 +36,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
// Todo: create script for rspec tests
|
||||
// sh 'build/new-jenkins/rspec-tests.sh'
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ pipeline {
|
|||
}
|
||||
|
||||
environment {
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml'
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml:docker-compose.new-jenkins-selenium.yml'
|
||||
// 'refs/changes/63/181863/8' -> '63.181863.8'
|
||||
NAME = "${env.GERRIT_REFSPEC}".minus('refs/changes/').replaceAll('/','.')
|
||||
}
|
||||
|
@ -38,7 +38,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
// Todo: create script for selenium tests
|
||||
sh 'build/new-jenkins/smoke-test.sh'
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ pipeline {
|
|||
}
|
||||
|
||||
environment {
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml'
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml:docker-compose.new-jenkins-selenium.yml'
|
||||
// 'refs/changes/63/181863/8' -> '63.181863.8'
|
||||
NAME = "${env.GERRIT_REFSPEC}".minus('refs/changes/').replaceAll('/','.')
|
||||
}
|
||||
|
@ -36,7 +36,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
// Todo: create selenium performance chrome script
|
||||
// sh 'build/new-jenkins/.sh'
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ pipeline {
|
|||
}
|
||||
|
||||
environment {
|
||||
COMPOSE_FILE = 'docker-compose.new-vendored-gems.yml'
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml'
|
||||
// 'refs/changes/63/181863/8' -> '63.181863.8'
|
||||
NAME = "${env.GERRIT_REFSPEC}".minus('refs/changes/').replaceAll('/','.')
|
||||
}
|
||||
|
@ -35,6 +35,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-database.sh'
|
||||
sh 'build/new-jenkins/test-gems.sh'
|
||||
}
|
||||
}
|
||||
|
|
|
@ -25,7 +25,7 @@ pipeline {
|
|||
}
|
||||
|
||||
environment {
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml'
|
||||
COMPOSE_FILE = 'docker-compose.new-jenkins.yml:docker-compose.new-jenkins-selenium.yml'
|
||||
// 'refs/changes/63/181863/8' -> '63.181863.8'
|
||||
NAME = "${env.GERRIT_REFSPEC}".minus('refs/changes/').replaceAll('/','.')
|
||||
}
|
||||
|
@ -36,7 +36,8 @@ pipeline {
|
|||
steps {
|
||||
timeout(time: 60) {
|
||||
sh 'printenv | sort'
|
||||
sh 'build/new-jenkins/docker-compose-build.sh'
|
||||
sh 'build/new-jenkins/docker-compose-build-up.sh'
|
||||
sh 'build/new-jenkins/docker-compose-create-migrate-database.sh'
|
||||
sh 'build/new-jenkins/xbrowser-test.sh'
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,4 @@
|
|||
#!/bin/bash
|
||||
|
||||
docker-compose build
|
||||
docker-compose up -d
|
|
@ -1,7 +0,0 @@
|
|||
#!/bin/bash
|
||||
|
||||
export COMPOSE_FILE=docker-compose.new-jenkins.yml
|
||||
|
||||
docker-compose build
|
||||
docker-compose up -d
|
||||
docker-compose run web bundle exec rails db:create db:migrate
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
docker-compose exec -T web bundle exec rails db:create
|
|
@ -0,0 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
docker-compose exec -T web bundle exec rails db:create db:migrate
|
|
@ -1,9 +1,7 @@
|
|||
#!/bin/bash
|
||||
|
||||
export COMPOSE_FILE=docker-compose.new-jenkins.yml
|
||||
|
||||
# Todo: build the spec list similar to how it currently is in rspect
|
||||
# spec_files=`find spec {gems,vendor}/plugins/*/spec_canvas -type f -name '*_spec.rb'|grep -v '/selenium/'|tr '\n' ' '`
|
||||
|
||||
# Todo: run the specs in spec_files
|
||||
# docker-compose run web bundle exec rspec -f doc --format html --out results.html spec_files
|
||||
# docker-compose exec -T web bundle exec rspec -f doc --format html --out results.html spec_files
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
export COMPOSE_FILE=docker-compose.new-jenkins.yml
|
||||
|
||||
docker-compose run --rm web bundle exec rspec spec/selenium/login_logout_spec.rb -f doc --format html --out results.html
|
||||
docker-compose exec -T web bundle exec rspec spec/selenium/login_logout_spec.rb -f doc --format html --out results.html
|
||||
|
|
|
@ -1,7 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
docker-compose build
|
||||
docker-compose up -d
|
||||
docker-compose run web bundle exec rails db:create
|
||||
|
||||
docker-compose run -T web ./gems/test-all-gems-new-jenkins.sh
|
||||
docker-compose exec -T web ./gems/test-all-gems-new-jenkins.sh
|
||||
|
|
|
@ -1,5 +1,3 @@
|
|||
#!/bin/bash
|
||||
|
||||
export COMPOSE_FILE=docker-compose.new-jenkins.yml
|
||||
|
||||
docker-compose run --rm web bundle exec rspec -f doc --format html --out results.html --tag xbrowser spec/selenium/
|
||||
docker-compose exec -T web bundle exec rspec -f doc --format html --out results.html --tag xbrowser spec/selenium/
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
# it is intended that this be used exclusive of all other docker-compose.*yml files in CI
|
||||
version: "2.1"
|
||||
services:
|
||||
web:
|
||||
links:
|
||||
- selenium-chrome
|
||||
environment:
|
||||
remote_url: http://selenium-chrome:4444/wd/hub
|
||||
browser: chrome
|
||||
|
||||
selenium-chrome:
|
||||
build: ./docker-compose/selenium-chrome
|
|
@ -7,18 +7,13 @@ services:
|
|||
links:
|
||||
- postgres
|
||||
- redis
|
||||
- selenium-chrome
|
||||
environment:
|
||||
ENCRYPTION_KEY: 598f25a47a708a96be4bd398cc512c71df1b24114e5af4f8f9c4d2ed777c9906519a07f9452e369a6fa27f8b31e8f768da1422fa47bbf9d8fbd46620dc863002
|
||||
RAILS_ENV: test
|
||||
RAILS_DB_NAME_TEST: 'canvas_test'
|
||||
RAILS_DB_HOST: postgres
|
||||
RAILS_DB_PASSWORD: ''
|
||||
remote_url: http://selenium-chrome:4444/wd/hub
|
||||
browser: chrome
|
||||
|
||||
selenium-chrome:
|
||||
build: ./docker-compose/selenium-chrome
|
||||
DATABASE_URL: "postgres://postgres@postgres:5432/canvas_test"
|
||||
|
||||
redis:
|
||||
image: redis:alpine
|
||||
|
|
|
@ -1,22 +0,0 @@
|
|||
# it is intended that this be used exclusive of all other docker-compose.*yml files in CI
|
||||
version: "2.1"
|
||||
services:
|
||||
web:
|
||||
# use master if NAME is unavailable
|
||||
image: "starlord.inscloudgate.net/jenkins/canvas-lms:${NAME:-master}"
|
||||
links:
|
||||
- postgres
|
||||
- redis
|
||||
environment:
|
||||
ENCRYPTION_KEY: 598f25a47a708a96be4bd398cc512c71df1b24114e5af4f8f9c4d2ed777c9906519a07f9452e369a6fa27f8b31e8f768da1422fa47bbf9d8fbd46620dc863002
|
||||
RAILS_ENV: test
|
||||
RAILS_DB_NAME_TEST: 'canvas_test'
|
||||
RAILS_DB_HOST: postgres
|
||||
RAILS_DB_PASSWORD: ''
|
||||
DATABASE_URL: "postgres://postgres@postgres:5432/canvas_test"
|
||||
|
||||
redis:
|
||||
image: redis:alpine
|
||||
|
||||
postgres:
|
||||
build: ./build/docker-compose/postgres/9.5
|
Loading…
Reference in New Issue