diff options
| -rw-r--r-- | config/database.yml | 33 | ||||
| -rw-r--r-- | config/database/jenkins.yml | 8 | ||||
| -rw-r--r-- | db/schema.rb | 2 | ||||
| -rw-r--r-- | lib/tasks/ci.rake | 26 |
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"] |
