Skip to content

Commit

Permalink
Release OpenProject 10.4.0
Browse files Browse the repository at this point in the history
  • Loading branch information
oliverguenther committed Feb 20, 2020
2 parents 07c077f + 0dc5d6a commit 0a11bdd
Show file tree
Hide file tree
Showing 6,837 changed files with 234,643 additions and 47,740 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
Binary file added .DS_Store
Binary file not shown.
19 changes: 19 additions & 0 deletions .dockerignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,25 @@
.git
.dockerignore
.bundle
.env*
.buildpacks
.*.yml
*.swp
.*ignore
*.md
*.log
Vagrantfile
Dockerfile
Guardfile
docker-compose.*
browserslist
docs
extra
features
help
log/*.log
spec
spec_legacy
tmp
frontend/node_modules
# travis
Expand Down
6 changes: 3 additions & 3 deletions .env.sample
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#-- copyright
# OpenProject is a project management system.
# Copyright (C) 2012-2015 the OpenProject Foundation (OPF)
# OpenProject is an open source project management software.
# Copyright (C) 2012-2020 the OpenProject GmbH
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
Expand All @@ -23,7 +23,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# See doc/COPYRIGHT.rdoc for more details.
# See docs/COPYRIGHT.rdoc for more details.
#++

# If you place a .env file into the root directory of OpenProject
Expand Down
4 changes: 2 additions & 2 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#-- copyright
# OpenProject is a project management system.
# Copyright (C) 2012-2018 the OpenProject Foundation (OPF)
# OpenProject is an open source project management software.
# Copyright (C) 2012-2020 the OpenProject GmbH
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
Expand Down
3 changes: 3 additions & 0 deletions .pkgr.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,6 +17,9 @@ targets:
<<: *debian9
ubuntu-18.04:
<<: *debian9
centos-8:
dependencies:
- epel-release
centos-7:
dependencies:
- epel-release
Expand Down
9 changes: 5 additions & 4 deletions .travis.yml
Original file line number Diff line number Diff line change
@@ -1,12 +1,12 @@
#-- copyright
# OpenProject is a project management system.
# Copyright (C) 2012-2018 the OpenProject Foundation (OPF)
# OpenProject is an open source project management software.
# Copyright (C) 2012-2020 the OpenProject GmbH
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
#
# OpenProject is a fork of ChiliProject, which is a fork of Redmine. The copyright follows:
# Copyright (C) 2006-2018 Jean-Philippe Lang
# Copyright (C) 2006-2017 Jean-Philippe Lang
# Copyright (C) 2010-2013 the ChiliProject Team
#
# This program is free software; you can redistribute it and/or
Expand All @@ -23,7 +23,7 @@
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# See doc/COPYRIGHT.rdoc for more details.
# See docs/COPYRIGHT.rdoc for more details.
#++

language: ruby
Expand All @@ -45,6 +45,7 @@ branches:
only:
- master
- dev
- bim-dev
- /^(stable|release)\/.*$/

env:
Expand Down
47 changes: 24 additions & 23 deletions Dockerfile
Original file line number Diff line number Diff line change
@@ -1,8 +1,14 @@
FROM ruby:2.6-stretch AS pgloader
RUN apt-get update -qq && apt-get install -y libsqlite3-dev make curl gawk freetds-dev libzip-dev
COPY docker/mysql-to-postgres/bin/build /tmp/build-pgloader
RUN /tmp/build-pgloader && rm /tmp/build-pgloader

FROM ruby:2.6-stretch
MAINTAINER [email protected]

ENV NODE_VERSION "10.15.0"
ENV BUNDLER_VERSION "2.0.2"
ENV BUNDLE_PATH__SYSTEM=false
ENV APP_USER app
ENV APP_PATH /app
ENV APP_DATA_PATH /var/openproject/assets
Expand All @@ -17,39 +23,28 @@ ENV RAILS_CACHE_STORE memcache
ENV OPENPROJECT_INSTALLATION__TYPE docker
ENV NEW_RELIC_AGENT_ENABLED false
ENV ATTACHMENTS_STORAGE_PATH $APP_DATA_PATH/files
ENV BUNDLE_PATH__SYSTEM=false

ENV PGLOADER_DEPENDENCIES "libsqlite3-dev make curl gawk freetds-dev libzip-dev"

# Set a default key base, ensure to provide a secure value in production environments!
ENV SECRET_KEY_BASE OVERWRITE_ME

COPY --from=pgloader /usr/local/bin/pgloader-ccl /usr/local/bin/

# install node + npm
RUN curl https://nodejs.org/dist/v${NODE_VERSION}/node-v${NODE_VERSION}-linux-x64.tar.gz | tar xzf - -C /usr/local --strip-components=1

RUN apt-get update -qq && \
DEBIAN_FRONTEND=noninteractive apt-get install -y \
postgresql-client \
mysql-client \
poppler-utils \
unrtf \
tesseract-ocr \
catdoc \
memcached \
postfix \
postgresql \
$PGLOADER_DEPENDENCIES \
apache2 \
supervisor && \
apt-get clean && rm -rf /var/lib/apt/lists/*

# pgloader
ENV CCL_DEFAULT_DIRECTORY /opt/ccl
COPY docker/mysql-to-postgres/bin/build /tmp/build-pgloader
RUN /tmp/build-pgloader && rm /tmp/build-pgloader
# Add MySQL-to-Postgres migration script to path (used in entrypoint.sh)
COPY docker/mysql-to-postgres/bin/migrate-mysql-to-postgres /usr/local/bin/

# Set up pg defaults
RUN echo "host all all 0.0.0.0/0 md5" >> /etc/postgresql/9.6/main/pg_hba.conf
RUN echo "listen_addresses='*'" >> /etc/postgresql/9.6/main/postgresql.conf
Expand All @@ -70,27 +65,33 @@ 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/
RUN bundle install --deployment --path vendor/bundle --with="docker opf_plugins" --without="test development" --jobs=8 --retry=3
RUN bundle install --deployment --path vendor/bundle --no-cache \
--with="docker opf_plugins" --without="test development" --jobs=8 --retry=3 && \
rm -rf vendor/bundle/ruby/*/cache && rm -rf vendor/bundle/ruby/*/gems/*/spec && rm -rf vendor/bundle/ruby/*/gems/*/test

# Finally, copy over the whole thing
COPY . $APP_PATH
COPY . .

# Re-use packager database.yml
RUN cp ./packaging/conf/database.yml ./config/database.yml
# Add MySQL-to-Postgres migration script to path (used in entrypoint.sh)
RUN cp ./docker/mysql-to-postgres/bin/migrate-mysql-to-postgres /usr/local/bin/
# Ensure OpenProject starts with the docker group of gems
RUN sed -i "s|Rails.groups(:opf_plugins)|Rails.groups(:opf_plugins, :docker)|" config/application.rb

# Ensure we can write in /tmp/op_uploaded_files (cf. #29112)
RUN mkdir -p /tmp/op_uploaded_files/ && chown -R $APP_USER:$APP_USER /tmp/op_uploaded_files/

# Re-use packager database.yml
COPY packaging/conf/database.yml ./config/database.yml

# Run the npm postinstall manually after it was copied
# Then, npm install node modules
# Handle the assets precompilation
RUN bash docker/precompile-assets.sh

# ports
# Expose ports for apache and postgres
EXPOSE 80 5432

# volumes to export
# Expose the postgres data directory and OpenProject data directory as volumes
VOLUME ["$PGDATA", "$APP_DATA_PATH"]

# Set a custom entrypoint to allow for privilege dropping and one-off commands
ENTRYPOINT ["./docker/entrypoint.sh"]

# Set default command to launch the all-in-one configuration supervised by supervisord
CMD ["./docker/supervisord"]
18 changes: 10 additions & 8 deletions Gemfile
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
#-- copyright
# OpenProject is a project management system.
# Copyright (C) 2012-2018 the OpenProject Foundation (OPF)
# OpenProject is an open source project management software.
# Copyright (C) 2012-2020 the OpenProject GmbH
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 3.
Expand Down Expand Up @@ -34,7 +34,7 @@ gem 'actionpack-xml_parser', '~> 2.0.0'
gem 'activemodel-serializers-xml', '~> 1.0.1'
gem 'activerecord-import', '~> 1.0.2'
gem 'activerecord-session_store', '~> 1.1.0'
gem 'rails', '~> 6.0.1'
gem 'rails', '~> 6.0.2'
gem 'responders', '~> 3.0'

gem 'rdoc', '>= 2.4.2'
Expand Down Expand Up @@ -119,13 +119,13 @@ gem 'rack-protection', '~> 2.0.0'
gem 'rack-attack', '~> 6.1.0'

# CSP headers
gem 'secure_headers', '~> 6.1.1'
gem 'secure_headers', '~> 6.3.0'

# Browser detection for incompatibility checks
gem 'browser', '~> 2.6.1'

# Providing health checks
gem 'okcomputer', '~> 1.17.3'
gem 'okcomputer', '~> 1.18.1'

gem 'gon', '~> 6.2.1'

Expand All @@ -137,7 +137,7 @@ gem 'lograge', '~> 0.10.0'
gem 'airbrake', '~> 9.4.3', require: false

gem 'prawn', '~> 2.2'
gem 'prawn-table', '~> 0.2.2'
gem 'prawn-markup', '~> 0.2.1'

gem 'cells-erb', '~> 0.1.0'
gem 'cells-rails', '~> 0.0.9'
Expand Down Expand Up @@ -215,7 +215,7 @@ group :test do
gem 'capybara', '~> 3.29.0'
gem 'capybara-screenshot', '~> 1.0.17'
gem 'capybara-select2', git: 'https://github.com/goodwill/capybara-select2', ref: '585192e'
gem 'webdrivers', '~> 4.1.2', require: false
gem 'webdrivers', '~> 4.2.0', require: false
gem 'selenium-webdriver', '~> 3.14'

gem 'fuubar', '~> 2.3.2'
Expand All @@ -234,6 +234,8 @@ group :ldap do
end

group :development do
gem 'listen', '~> 3.2.1' # Use for event-based reloaders

gem 'faker'
gem 'letter_opener'
gem 'livingstyleguide', '~> 2.1.0'
Expand Down Expand Up @@ -274,7 +276,7 @@ end
gem 'bootsnap', '~> 1.4.5', require: false

# API gems
gem 'grape', '~> 1.2.3'
gem 'grape', '~> 1.3.0'

gem 'reform', '~> 2.2.0'
gem 'reform-rails', '~> 0.1.7'
Expand Down
Loading

0 comments on commit 0a11bdd

Please sign in to comment.