Introduction
This page describes how Alexis Huxley installed OpenProject Community Edition.
VM prerequisites: 2GB RAM; 2 CPUs
Installation
This is as according to the official documentation.
- Run:
wget -qO - https://dl.packager.io/srv/opf/openproject/key | apt-key add - wget -qO - https://dl.packager.io/srv/opf/openproject/stable/10/installer/debian/10.repo > /etc/apt/sources.list.d/openproject.list apt-get update apt-get install -y openproject
Proxying connections to the OpenProject server
- See Configuring web services (revision 2). (For my first installation I did not get an SSL certificate for the front-end Apache server.)
Configuration
Note that we run an SSL front-end webserver with a non-SSL back-end server. But many of the back-end application’s settings are for the front-end (e.g. enable SSL).
- Run:
openproject configure
and answer as follows:
- Do you want to use this wizard to help setup your PostgreSQL database: install
- Do you want to use this wizard to help setup your web server: install
- Your fully qualified domain name: <front-end-fully-qualified-hostname>
- Server path prefix: <none>
- Do you want to enable SSL for your web server: yes (note that using https on the front-end but http on the backend results in log in attempts, including for the admin account, being blocked with the error message:
- Path to your SSL certificate: /etc/ssl/certs/ssl-cert-snakeoil.pem
Path to your private SSL key: /etc/ssl/private/ssl-cert-snakeoil.key
- Path to the CA bundle: <none>
- Do you want to use this wizard to setup Subversion repositories support for openproject: skip
- Do you want to use this wizard to setup Git repositories support for openproject: skip
- What do you want to use to send emails from openproject: sendmail
- Administrator email: <your-email> (this will also be used for password recovery for the admin account, so be sure it is valid!)
- Do you want to install a memcached server: install
- Be sure to enable/disable SSL according to the *front-end* webserver, not the backend one! Otherwise later on you will get this when attempting to log in:port regarding this can be found here, but it looks to me as if this is impossible to correct post-installation (since you need to log in in order to fix it).
Configuration
- Go to the OpenProject web interface and log with the default credentials (admin/admin).\
- When prompted. change the admin password.
- When prompted, set the preferred language.
- Take the tour.
- Go to OA –> Adminstration –> Email –> Email Notifications.
- Set the emission address, disable BCCing.
- Go to OA –> Adminstration –> Users –> Settings.
- Set user accounts deletable by admins.
- Go to OA –> Adminstration –> Authentication –> Settings.
- Temporarily set Authentication required.
- Set self-registration to disabled.
- I would delete unwanted work packages (i.e. change request types) but that would probably be premature. I’ll come back to this once I am more familiar with OpenProject.
- In Jira. my project is ‘Released Software; its workflow is:
and its issue types are ‘Bug’ and ‘New feature. In addition it has custom field listing the following modules:
Recreate this in OpenProject as follows:
- Go to Select a project –> View all projects.
- Delete all projects.
- Go to OA –> Adminstration –> Work packages –> Types.
- Delete all work package types (i.e. issue types).
- Go to OA –> Adminstration –> Work packages –> Status.
- Delete all statuses except ‘New’ (it’s not possible to delete this until we add another status that will become the default status).
- Add status ‘to do’, make it the default. set its colour to ‘Gray (dark)’.
- Delete status ‘New’.
- Add statuses ‘in analysis’, ‘in devel, testing & release’, ‘suspended’ (there is a limit to name lengths), ‘in cool off’ with suitable colours.
- Add statuses ‘completed’, ‘rejected’ and ‘suspended’ with ‘work package closed’ enabled and with suitable colours.
- Go to OA –> Adminstration –> Work packages –> Types.
- Add types ‘bug’ and ‘new feature’ with ‘Activated for new projects by default’ enabled.
- Go to OA –> Adminstration –> Work packages –> Workflow.
- For the combination member/bug click edit and allow:
- to do –> in analysis
- in analysis –> in dev testing & release, rejected, suspended
- in dev, testing & release –> in analysis, in cool off
- in cool off –> in analysis, completed
- suspended –> in analysis
- completed –> <none>
- rejected –> <none>
- For the combination member/new feature the member/bug workflow can be cloned by clicking ‘Copy’.
- Go to OA –> Adminstration –> Custom fields –> Work packages.
- Add custom field ‘modules’ of format list, multi-select is not required (nor possible without a license), mark it required, used as a filter and searchable.
- Go to Select a project –> + Project.
- Add a new project called ‘release software’ with identifier ‘soft’, public.
- Go to Select a project –> release software –> Project settings –> Modules.
- Disable wiki, time tracking, meetings, news.
- Go to OA –> Adminstration –>System settings –> General.
- Disable the Welcome block.
- Go to OA –> Adminstration –> Users and Permissions –> Users and Permissions.
- Add users.
- Set up short cuts to project bug pages (here is a page containing such a link) then edit /etc/apache2/sites-enabled/openproject.conf and add a stanza line this one:
# The following paragraph added by Alexis. The short URLs are mentioned # at pasta.freemyip.com/computing/software/ and the long URLs are the # WPs with suitable filters. # First stop the ProxyPass directive at the end from proxying the stuff # we're about to redirect. ProxyPass /bugs/ ! # Then redirect - module by module. Redirect /bugs/ade/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%221%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/bs/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%222%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/fad/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%223%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/js/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%225%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/paa/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%227%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/rocon/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%2210%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D Redirect /bugs/wra/ /projects/software/work_packages?query_props=%7B%22c%22%3A%5B%22id%22%2C%22type%22%2C%22subject%22%2C%22status%22%5D%2C%22tv%22%3Afalse%2C%22hl%22%3A%22none%22%2C%22hi%22%3Atrue%2C%22g%22%3A%22%22%2C%22t%22%3A%22id%3Aasc%22%2C%22f%22%3A%5B%7B%22n%22%3A%22customField1%22%2C%22o%22%3A%22%3D%22%2C%22v%22%3A%5B%2212%22%5D%7D%2C%7B%22n%22%3A%22status%22%2C%22o%22%3A%22o%22%2C%22v%22%3A%5B%5D%7D%5D%2C%22pa%22%3A1%2C%22pp%22%3A20%7D
(The URLs can be determined by just filtering the bug reports (‘WPs’) in OpenProject.)
Upgrading from OpenProject 10 to OpenProject 11
This section is based on the official documentation.
- Backup the machine (I cloned the VM’s disk image).
- Edit /etc/apt/sources.list.d/openproject.list and change:
deb https://dl.packager.io/srv/deb/opf/openproject/stable/11/debian 10 main
(The second ’10’ refers to the Debian version, so don’t change that.)
- Run:
apt-get update apt-get install --only-upgrade openproject openproject configure
- To ensure that OpenProject is now in a state where it will come up cleanly, reboot and then wait five minutes (it can be slow to become ready).