diff --git a/Dockerfile b/Dockerfile index b106be55f1..b3c0ad8fa2 100644 --- a/Dockerfile +++ b/Dockerfile @@ -32,13 +32,11 @@ WORKDIR $APP_PATH COPY Gemfile ./Gemfile COPY Gemfile.* ./ - +COPY modules ./modules # OpenProject::Version is required by module versions in gemspecs RUN mkdir -p lib/open_project COPY lib/open_project/version.rb ./lib/open_project/ - -COPY modules ./modules -RUN bundle install --jobs 8 --retry 3 --with docker +RUN bundle install --deployment --with="docker opf_plugins" --without="test development" --jobs=8 --retry=3 # Then, npm install node modules COPY package.json /tmp/npm/package.json @@ -57,7 +55,7 @@ COPY packaging/conf/database.yml ./config/database.yml RUN DATABASE_URL=sqlite3:///tmp/db.sqlite3 SECRET_TOKEN=foobar RAILS_ENV=production bundle exec rake assets:precompile # Include pandoc -RUN RAILS_ENV=production bundle exec rails runner "puts ::OpenProject::TextFormatting::Formats::Markdown::PandocDownloader.check_or_download!" +RUN DATABASE_URL=sqlite3:///tmp/db.sqlite3 RAILS_ENV=production bundle exec rails runner "puts ::OpenProject::TextFormatting::Formats::Markdown::PandocDownloader.check_or_download!" CMD ["./docker/web"] ENTRYPOINT ["./docker/entrypoint.sh"] diff --git a/Gemfile.lock b/Gemfile.lock index f6829f39bc..9862bff9e0 100644 --- a/Gemfile.lock +++ b/Gemfile.lock @@ -6,6 +6,24 @@ GIT rubytree (0.9.7) json (~> 1.8) +GIT + remote: https://github.com/finnlabs/omniauth-openid-connect.git + revision: 42c4bd27aaab986e0d8723da50314135691a0955 + ref: 42c4bd27aaab986e0d8723da50314135691a0955 + specs: + omniauth-openid-connect (0.3.0) + addressable (~> 2.5) + omniauth (~> 1.6.1) + openid_connect (~> 1.1.6) + +GIT + remote: https://github.com/finnlabs/omniauth-openid_connect-providers.git + revision: b8b9d4be88fb48a1fa4f4afd9fd226dac54430f8 + ref: b8b9d4be88fb48a1fa4f4afd9fd226dac54430f8 + specs: + omniauth-openid_connect-providers (0.1.0) + omniauth-openid-connect (>= 0.2.1) + GIT remote: https://github.com/finnlabs/rspec-example_disabler.git revision: deb9c38e3f4e3688724583ac1ff58e1ae8aba409 @@ -57,9 +75,117 @@ GIT activesupport (>= 3.0) rspec-mocks (>= 2.99, < 4.0) +PATH + remote: modules/auth_plugins + specs: + openproject-auth_plugins (8.2.0) + omniauth (~> 1.0) + rails (~> 5.0) + +PATH + remote: modules/avatars + specs: + openproject-avatars (8.2.0) + fastimage (~> 2.1.0) + gravatar_image_tag (~> 1.2.0) + rails (~> 5.0) + +PATH + remote: modules/backlogs + specs: + openproject-backlogs (8.2.0) + acts_as_silent_list (~> 3.0.0) + openproject-pdf_export (= 8.2.0) + +PATH + remote: modules/costs + specs: + openproject-costs (8.2.0) + +PATH + remote: modules/documents + specs: + openproject-documents (8.2.0) + +PATH + remote: modules/github_integration + specs: + openproject-github_integration (8.2.0) + openproject-webhooks + rails (~> 5.0) + +PATH + remote: modules/global_roles + specs: + openproject-global_roles (8.2.0) + +PATH + remote: modules/meeting + specs: + openproject-meeting (8.2.0) + icalendar (~> 2.3.0) + +PATH + remote: modules/my_project_page + specs: + openproject-my_project_page (8.2.0) + +PATH + remote: modules/openid_connect + specs: + openproject-openid_connect (8.2.0) + lobby_boy (~> 0.1.3) + omniauth-openid_connect-providers (~> 0.1) + openproject-auth_plugins (~> 8.0) + rails (~> 5.0) + +PATH + remote: modules/pdf_export + specs: + openproject-pdf_export (8.2.0) + pdf-inspector (~> 1.3.0) + prawn (~> 2.2) + +PATH + remote: modules/reporting_engine + specs: + reporting_engine (8.2.0) + json + rails (~> 5.1.0) + +PATH + remote: modules/reporting + specs: + openproject-reporting (8.2.0) + jquery-tablesorter (~> 1.25.5) + openproject-costs (= 8.2.0) + reporting_engine (>= 1.1.0) + +PATH + remote: modules/two_factor_authentication + specs: + openproject-two_factor_authentication (8.2.0) + aws-sdk-sns (~> 1.1.0) + messagebird-rest (~> 1.3.2) + rails (~> 5) + rotp (~> 3.3) + +PATH + remote: modules/webhooks + specs: + openproject-webhooks (8.2.0) + rails (~> 5.0) + +PATH + remote: modules/xls_export + specs: + openproject-xls_export (8.2.0) + spreadsheet (~> 0.8.9) + GEM remote: https://rubygems.org/ specs: + Ascii85 (1.0.3) actioncable (5.1.6.1) actionpack (= 5.1.6.1) nio4r (~> 2.0) @@ -114,10 +240,13 @@ GEM tzinfo (~> 1.1) acts_as_list (0.9.11) activerecord (>= 3.0) + acts_as_silent_list (3.0.0) acts_as_tree (2.7.1) activerecord (>= 3.0.0) addressable (2.5.2) public_suffix (>= 2.0.2, < 4.0) + aes_key_wrap (1.0.1) + afm (0.2.2) airbrake (5.1.0) airbrake-ruby (~> 1.1) airbrake-ruby (1.5.0) @@ -125,6 +254,7 @@ GEM io-like (~> 0.3.0) arel (8.0.0) ast (2.4.0) + attr_required (1.0.1) autoprefixer-rails (7.1.5) execjs awesome_nested_set (3.1.3) @@ -141,6 +271,9 @@ GEM aws-sdk-core (~> 3) aws-sdk-kms (~> 1) aws-sigv4 (~> 1.0) + aws-sdk-sns (1.1.0) + aws-sdk-core (~> 3) + aws-sigv4 (~> 1.0) aws-sigv4 (1.0.2) axiom-types (0.1.1) descendants_tracker (~> 0.0.4) @@ -148,6 +281,7 @@ GEM thread_safe (~> 0.3, >= 0.3.1) backports (3.11.3) bcrypt (3.1.11) + bindata (2.4.4) binding_of_caller (0.7.2) debug_inspector (>= 0.0.1) bootsnap (1.1.5) @@ -263,6 +397,7 @@ GEM railties (>= 3.0.0) faker (1.8.4) i18n (~> 0.5) + fastimage (2.1.4) ffi (1.9.25) fog-aws (0.11.0) fog-core (~> 1.38) @@ -300,7 +435,9 @@ GEM rack (>= 1.3.0) rack-accept virtus (>= 1.0.0) + gravatar_image_tag (1.2.0) hashdiff (0.3.7) + hashery (2.1.2) hashie (3.5.6) health_check (2.6.0) rails (>= 4.0) @@ -310,17 +447,25 @@ GEM htmldiff (0.0.1) http-cookie (1.0.3) domain_name (~> 0.5) + httpclient (2.8.3) i18n (0.9.5) concurrent-ruby (~> 1.0) i18n-js (3.0.5) i18n (>= 0.6.6, < 2) + icalendar (2.3.0) ice_nine (0.11.2) interception (0.5) io-like (0.3.0) ipaddress (0.8.3) iso8601 (0.9.1) jmespath (1.4.0) + jquery-tablesorter (1.25.5) + railties (>= 3.2, < 6) json (1.8.6) + json-jwt (1.9.4) + activesupport + aes_key_wrap + bindata json_spec (1.1.5) multi_json (~> 1.0) rspec (>= 2.0, < 4.0) @@ -335,11 +480,16 @@ GEM sass thor tilt + lobby_boy (0.1.3) + omniauth (~> 1.1) + omniauth-openid-connect (>= 0.2.1) + rails (>= 3.2.21) loofah (2.2.3) crass (~> 1.0.2) nokogiri (>= 1.5.9) mail (2.7.1) mini_mime (>= 0.1.1) + messagebird-rest (1.3.3) meta-tags (2.6.0) actionpack (>= 3.2.0, < 5.3) method_source (0.9.2) @@ -368,6 +518,19 @@ GEM nokogiri oj (3.5.0) okcomputer (1.16.0) + omniauth-saml (1.7.0) + omniauth (~> 1.3) + ruby-saml (~> 1.4) + openid_connect (1.1.6) + activemodel + attr_required (>= 1.0.0) + json-jwt (>= 1.5.0) + rack-oauth2 (>= 1.6.1) + swd (>= 1.0.0) + tzinfo + validate_email + validate_url + webfinger (>= 1.0.1) openproject-token (1.0.1) activemodel (~> 5.0) parallel (1.12.1) @@ -379,6 +542,14 @@ GEM rack rake (>= 0.8.1) pdf-core (0.7.0) + pdf-inspector (1.3.0) + pdf-reader (>= 1.0, < 3.0.a) + pdf-reader (2.1.0) + Ascii85 (~> 1.0.0) + afm (~> 0.2.1) + hashery (~> 2.0) + ruby-rc4 + ttfunk pg (1.0.0) plaintext (0.1.0) activesupport (> 2.2.1) @@ -414,6 +585,12 @@ GEM rack (>= 0.4) rack-attack (5.2.0) rack + rack-oauth2 (1.9.3) + activesupport + attr_required + httpclient + json-jwt (>= 1.9.0) + rack rack-protection (2.0.1) rack rack-test (1.0.0) @@ -485,6 +662,7 @@ GEM rinku (2.0.4) roar (1.1.0) representable (~> 3.0.0) + rotp (3.3.1) rouge (3.1.1) rspec (3.7.0) rspec-core (~> 3.7.0) @@ -524,8 +702,12 @@ GEM iso8601 ruby-enum (0.7.2) i18n + ruby-ole (1.2.12.1) ruby-prof (0.17.0) ruby-progressbar (1.9.0) + ruby-rc4 (0.1.5) + ruby-saml (1.9.0) + nokogiri (>= 1.5.10) rubyzip (1.2.2) safe_yaml (1.0.4) sanitize (4.6.4) @@ -557,6 +739,8 @@ GEM json (>= 1.8, < 3) simplecov-html (~> 0.10.0) simplecov-html (0.10.2) + spreadsheet (0.8.9) + ruby-ole (>= 1.0) sprockets (3.7.2) concurrent-ruby (~> 1.0) rack (> 1, < 3) @@ -567,6 +751,10 @@ GEM sqlite3 (1.3.13) stringex (2.7.1) svg-graph (2.1.3) + swd (1.1.2) + activesupport (>= 3) + attr_required (>= 0.0.5) + httpclient (>= 2.4) sys-filesystem (1.1.9) ffi test-prof (0.7.3) @@ -597,6 +785,12 @@ GEM get_process_mem (~> 0) unicorn (>= 4, < 6) useragent (0.16.10) + validate_email (0.1.6) + activemodel (>= 3.0) + mail (>= 2.2.5) + validate_url (1.0.2) + activemodel (>= 3.0.0) + addressable virtus (1.0.5) axiom-types (~> 0.1) coercible (~> 1.0) @@ -606,6 +800,9 @@ GEM rack (>= 1.0) warden-basic_auth (0.2.1) warden (~> 1.2) + webfinger (1.1.0) + activesupport + httpclient (>= 2.4) webmock (3.1.0) addressable (>= 2.3.6) crack (>= 0.3.2) @@ -678,8 +875,26 @@ DEPENDENCIES oj (~> 3.5.0) okcomputer (~> 1.16.0) omniauth! + omniauth-openid-connect! + omniauth-openid_connect-providers! + omniauth-saml (~> 1.7.0) + openproject-auth_plugins! + openproject-avatars! + openproject-backlogs! + openproject-costs! + openproject-documents! + openproject-github_integration! + openproject-global_roles! + openproject-meeting! + openproject-my_project_page! + openproject-openid_connect! + openproject-pdf_export! + openproject-reporting! openproject-token (~> 1.0.1) openproject-translations! + openproject-two_factor_authentication! + openproject-webhooks! + openproject-xls_export! parallel_tests (~> 2.21.3) passenger (~> 5.3.3) pg (~> 1.0.0) @@ -703,6 +918,7 @@ DEPENDENCIES rdoc (>= 2.4.2) reform (~> 2.2.0) reform-rails (~> 0.1.7) + reporting_engine! request_store (~> 1.4.1) responders (~> 2.4) rest-client (~> 2.0)