Skip to content

Instantly share code, notes, and snippets.

@markasoftware
Last active May 23, 2025 18:29
Show Gist options
  • Save markasoftware/f5b2e55a2c2e3abb1f9eefcdf0bfff45 to your computer and use it in GitHub Desktop.
Save markasoftware/f5b2e55a2c2e3abb1f9eefcdf0bfff45 to your computer and use it in GitHub Desktop.
OpenProject Enterprise mode for free
############ If you are using DOCKER all-in-one image, create Dockerfile like: ################
############ FROM openproject/openproject:16 ################
############ COPY ./enterprise_token.rb app/models/enterprise_token.rb ################
############ If you are runing a manual installation: ################
############ REPLACE app/models/enterprise_token.rb in the source code with this file! ################
############ also be sure to RESTART OpenProject after replacing the file. ################
############ If using some other set up (eg docker-compose), read the comments on ################
############ https://gist.github.com/markasoftware/f5b2e55a2c2e3abb1f9eefcdf0bfff45 ################
# OpenProject is an open source project management software.
# Copyright (C) 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-2013 Jean-Philippe Lang
# Copyright (C) 2010-2013 the ChiliProject Team
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version 2
# of the License, or (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
#
# See COPYRIGHT and LICENSE files for more details.
#++
class EnterpriseToken < ApplicationRecord
class << self
def current
self.new
end
def allows_to?(feature)
true
end
def active?
true
end
def hide_banners?
true
end
def show_banners?
false
end
def banner_type_for(feature:)
nil
end
end
def token_object
Class.new do
def has_feature?(feature)
true
end
def will_expire?
false
end
def mail
"[email protected]"
end
def subscriber
"markasoftware-free-enterprise-mode"
end
def company
"markasoftware"
end
def domain
"markasoftware.com"
end
def issued_at
Time.zone.today - 1
end
def starts_at
Time.zone.today - 1
end
def expires_at
Time.zone.today + 1
end
def reprieve_days
nil
end
def reprieve_days_left
69
end
def restrictions
nil
end
def available_features
[]
end
def plan
"markasoftware_free_enterprise_mode"
end
def features
[]
end
def version
69
end
end.new
end
def will_expire?
false
end
def mail
"[email protected]"
end
def subscriber
"markasoftware-free-enterprise-mode"
end
def company
"markasoftware"
end
def domain
"markasoftware.com"
end
def issued_at
Time.zone.today - 1
end
def starts_at
Time.zone.today - 1
end
def expires_at
Time.zone.today + 1
end
def reprieve_days
nil
end
def reprieve_days_left
69
end
def restrictions
nil
end
def available_features
[]
end
def plan
"markasoftware_free_enterprise_mode"
end
def features
[]
end
def version
69
end
def allows_to?(action)
true
end
def expired?(reprieve: true)
false
end
def invalid_domain?
false
end
end
@CC1119
Copy link

CC1119 commented May 23, 2025

Did someone manage to upgrade the Postgresql Database from 13 to 17 as recommended when upgrading to 16.0? I tried their Guide but it aborts with Current and new postgres version are identical. Aborting.

What version does psql --version return on your end?
Also after upgrading, I had to force-refresh the info page in OP (/admin/info). It was still showing the old version until I did that.

@supaeasy
Copy link

I am running this in docker. So as far as I understand the procedure

docker run --rm -it \
  -v /var/lib/openproject/pgdata:/var/openproject/pgdata \
  -v /var/lib/openproject/pgdata-next:/var/openproject/pgdata-next \
  openproject/openproject:15 root ./docker/prod/postgres-db-upgrade

The docker image openproject/openproject:15 should simply take the v13 Stuff in pgdata, and convert it to v17. Am I wrong?

I also tried to use pg_update but this messed up the database because I couldn't use the username I am using for my openproject database (or didnt know how to) so that didnt work either. Any recommendations?

@supaeasy
Copy link

I just learned I am not alone: https://community.openproject.org/topics/19208

@3115fcfc-2c0b-4076-927f-ae6531c76061

Did someone manage to upgrade the Postgresql Database from 13 to 17 as recommended when upgrading to 16.0? I tried their Guide but it aborts with Current and new postgres version are identical. Aborting.

@supaeasy @CC1119 The link sends you to the old version stable/15. The person from this post (https://community.openproject.org/topics/19208) mentioned: "This message comes from the "postgres-db-upgrade" script." If it is this resource "https://github.com/opf/openproject/blob/dev/docker/prod/postgres-db-upgrade" than it shouldn't work because there it is still set to NEW_PGVERSION="13".

Same shouldn't work for the docker-compose because there and the Docker Hub images 16.0.0 and 16.0.0-slim are still ENV PGVERSION=13 and ENV NEXT_PGVERSION=15.
Change the values manually and try it again.

@supaeasy
Copy link

Thank you for pointing this out! I created a pull request.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment