aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAlban Peignier2018-03-09 15:28:35 +0100
committerAlban Peignier2018-03-09 15:28:39 +0100
commit665727fc7392de55bb19b8f9ccac90b068e86ba5 (patch)
treecec88605d422c59566c0e808f968c2329941c4d4
parent523d3e418539cfe6af98bdcbae82d1f7d3fdd3c0 (diff)
downloadchouette-core-665727fc7392de55bb19b8f9ccac90b068e86ba5.tar.bz2
Create ci:build, ci:docker and ci:docker:clean. Rename config/database/jenkins.yml in ci.yml. Refs #6047
-rw-r--r--config/database.yml33
-rw-r--r--config/database/jenkins.yml8
-rw-r--r--db/schema.rb2
-rw-r--r--lib/tasks/ci.rake26
4 files changed, 32 insertions, 37 deletions
diff --git a/config/database.yml b/config/database.yml
index 60f1d032f..25a46be1b 100644
--- a/config/database.yml
+++ b/config/database.yml
@@ -1,28 +1,11 @@
-default: &default
- adapter: postgis
+test:
+ adapter: <%= ENV.fetch 'RAILS_DB_ADAPTER', 'postgis' %>
encoding: unicode
- port: 5432
- host: localhost
+ pool: <%= ENV.fetch 'RAILS_DB_POOLSIZE', '5' %>
+ host: <%= ENV.fetch 'RAILS_DB_HOST', 'localhost' %>
+ port: <%= ENV.fetch 'RAILS_DB_PORT', '5432' %>
schema_search_path: 'public,shared_extensions'
- username: chouette
- password: chouette
postgis_schema: 'shared_extensions'
-
-development:
- <<: *default
- database: chouette2
-
-# Warning: The database defined as "test" will be erased and
-# re-generated from your development database when you run "rake".
-# Do not set this db to the same as development or production.
-test: &test
- <<: *default
- database: chouette_test
-
-production:
- <<: *default
- adapter: <%= ENV.fetch 'RAILS_DB_ADAPTER', 'postgis' %>
- database: chouette2
-
-cucumber:
- <<: *test
+ database: <%= ENV.fetch 'RAILS_DB_NAME', 'stif_boiv_test' %>
+ username: <%= ENV['RAILS_DB_USER'] || ENV['POSTGRESQL_ENV_POSTGRES_USER'] || 'jenkins' %>
+ password: <%= ENV.fetch 'RAILS_DB_PASSWORD' || ENV['POSTGRESQL_ENV_POSTGRES_PASSWORD'] %>
diff --git a/config/database/jenkins.yml b/config/database/jenkins.yml
deleted file mode 100644
index 8b7a8ef2f..000000000
--- a/config/database/jenkins.yml
+++ /dev/null
@@ -1,8 +0,0 @@
-test:
- adapter: postgis
- encoding: unicode
- schema_search_path: 'public,shared_extensions'
- postgis_schema: 'shared_extensions'
- username: <%= ENV['POSTGRESQL_ENV_POSTGRES_USER'] || 'jenkins' %>
- password: <%= ENV['POSTGRESQL_ENV_POSTGRES_PASSWORD'] %>
- database: stif_boiv_test
diff --git a/db/schema.rb b/db/schema.rb
index 27e38e1b7..e29d076e0 100644
--- a/db/schema.rb
+++ b/db/schema.rb
@@ -421,9 +421,9 @@ ActiveRecord::Schema.define(version: 20180301142531) do
t.string "type"
t.integer "parent_id", limit: 8
t.string "parent_type"
+ t.datetime "notified_parent_at"
t.integer "current_step", default: 0
t.integer "total_steps", default: 0
- t.datetime "notified_parent_at"
t.string "creator"
end
diff --git a/lib/tasks/ci.rake b/lib/tasks/ci.rake
index 89f9aa9c8..5b2c8ae3c 100644
--- a/lib/tasks/ci.rake
+++ b/lib/tasks/ci.rake
@@ -1,9 +1,18 @@
namespace :ci do
+
+ def database_name
+ @database_name ||=
+ begin
+ config = YAML.load(ERB.new(File.read('config/database.yml')).result)
+ config["test"]["database"]
+ end
+ end
+
desc "Prepare CI build"
task :setup do
- cp "config/database/jenkins.yml", "config/database.yml"
+ cp "config/database/ci.yml", "config/database.yml"
+ puts "Use #{database_name} database"
sh "RAILS_ENV=test rake db:drop db:create db:migrate"
- sh "yarn --no-progress install"
end
def git_branch
@@ -59,7 +68,18 @@ namespace :ci do
sh "rm -rf log/test.log"
sh "RAILS_ENV=test bundle exec rake assets:clobber"
end
+
+ task :build => ["ci:setup", "ci:assets", "ci:i18n_js_export", "spec", "ci:jest", "cucumber", "ci:check_security"]
+
+ namespace :docker do
+ task :clean do
+ puts "Drop #{database_name} database"
+ sh "RAILS_ENV=test rake db:drop"
+ end
+ end
+
+ task :docker => ["ci:build"]
end
desc "Run continuous integration tasks (spec, ...)"
-task :ci => ["ci:setup", "ci:assets", "ci:i18n_js_export", "spec", "ci:jest", "cucumber", "ci:check_security", "ci:deploy", "ci:clean"]
+task :ci => ["ci:build", "ci:deploy", "ci:clean"]