With both installed, we can now install the actual ruby version 2.7. You can check available ruby versions with `rbenv install --list`.
At the time of this writing, the latest stable version is `2.7.1`, which we also require.
At the time of this writing, the latest stable version is `2.7.2`, which we also require.
We suggest you install the version we require in the [Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile). Search for the `ruby '~> X.Y.Z'` line
and install that version.
```bash
# Install the required version as read from the Gemfile
rbenv install 2.7.1
rbenv install 2.7.2
```
This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version
```bash
rbenv global 2.7.1
rbenv global 2.7.2
```
You also need to install [bundler](https://github.com/bundler/bundler/), the ruby gem bundler.
@ -110,7 +110,7 @@ You should now have an active ruby and node installation. Verify that it works w
With both installed, we can now install the actual ruby version 2.7. You can check available ruby versions with `rbenv install --list`.
At the time of this writing, the latest stable version is `2.7.1`, which we also require.
At the time of this writing, the latest stable version is `2.7.2`, which we also require.
We suggest you install the version we require in the [Gemfile](https://github.com/opf/openproject/blob/dev/Gemfile). Search for the `ruby '~> X.Y.Z'` line
and install that version.
```bash
# Install the required version as read from the Gemfile
rbenv install 2.7.1
rbenv install 2.7.2
```
This might take a while depending on whether ruby is built from source. After it is complete, you need to tell rbenv to globally activate this version
```bash
rbenv global 2.7.1
rbenv global 2.7.2
rbenv rehash
```
@ -149,7 +149,7 @@ You should now have an active ruby and node installation. Verify that it works w
An existing OpenProject on-premises (self hosted) installation can easily be switched to the BIM Edition.
The BIM Edition extends the capabilities of a normal OpenProject installation with special features
for the construction industry.
An existing OpenProject on-premises (self hosted) installation can easily be switched to the BIM Edition. The BIM Edition extends the capabilities of a normal OpenProject installation with special features for the construction industry.
Switching to the BIM Edition will not affect your existing data. Your team will be able to continue
working just as before. By switching to the BIM edition additional features will become available
when you activate the "BCF" module a project's settings.
Switching to the BIM Edition will not affect your existing data. Your team will be able to continue working just as before. By switching to the BIM edition additional features will become available when you activate the "BCF" module in the [project's settings](../../user-guide/projects/project-settings/modules).
To choose the BIM edition during installation use [this instruction](../installation/packaged/#step-1-select-your-openproject-edition).
## Instructions
### Backup and upgrade
First, backup your data and update your installation to the latest OpenProject version as described in [Upgrading](../operation/upgrading).
Make sure that you not only install the new package but also run `sudo openproject configure` as described before proceeding.
@ -188,6 +189,21 @@ to the remote storage in an extra step.
**Note**: This only works for S3 right now. When using fog with another provider this configuration will be `false`. The same goes for when no fog storage is configured.
### fog download url expires in
*default: 21600*
Example:
fog_download_url_expires_in: 60
When using remote storage for attachments via fog - usually S3 (see [`attachments_storage`](#attachments-storage) option) -
each attachment download will generate a temporary URL.
This option determines how long these links will be valid.
The default is 21600 seconds, that is 6 hours, which is the maximum expiry time
allowed by S3 when using IAM roles for authentication.
### Overriding the help link
You can override the default help menu of OpenProject by specifying a `force_help_link` option to
@ -63,7 +63,7 @@ This will execute `certbot renew` every day at 1am. The command checks if the ce
## External SSL termination
If you terminate SSL externally before the request hits the OpenProject server, you need to let the OpenProject server know that the request being handled is https, even though SSL was terminated before. This is the most common source in problems in OpenProject when using an external server that terminates SSL.
If you terminate SSL externally<sup>1</sup> before the request hits the OpenProject server, you need to let the OpenProject server know that the request being handled is https, even though SSL was terminated before. This is the most common source in problems in OpenProject when using an external server that terminates SSL.
Please ensure that if you're proxying to the openproject server, you set the HOST header to the internal server. This ensures that the host name of the outer request gets forwarded to the internal server. Otherwise you might see redirects in your browser to the internal host that OpenProject is running on.
@ -83,3 +83,6 @@ If you're terminating SSL on the outer server, you need to set the `X-Forwarded-
Finally, to let OpenProject know that it should create links with 'https' when no request is available (for example, when sending emails), you need to set the Protocol setting of OpenProject to `https`. You will find this setting on your system settings or via the rails console with `Setting.protocol = 'https'`
_<sup>1</sup> In the packaged installation this means you selected "no" when asked for SSL in the configuration wizard but at the same time take care of SSL termination elsewhere. This can be a manual Apache setup on the same server (not recommended) or an external server, for instance._
- Fixed: S3 presigned URL cached for 7 days does not work with IAM roles and is a security issue \[[#35739](https://community.openproject.com/wp/35739)\]
- Fixed: Images directly uploaded to s3 are not displayed within new tab \[[#36018](https://community.openproject.com/wp/36018)\]
- Fixed: Selecting "Atom" in export menu throws cryptic error \[[#36052](https://community.openproject.com/wp/36052)\]
- Fixed: Creating new synchronized groups from filters raises error if group name too long \[[#36081](https://community.openproject.com/wp/36081)\]
#### Contributions
A big thanks to community members for reporting bugs and helping us identifying and providing fixes.
Special thanks for reporting and finding bugs go to
@ -16,6 +16,10 @@ In OpenProject EE, you can synchronize LDAP group memberships defined through th
- - have at least one group defined in OpenProject (See the “[Managing groups](../../../users-permissions/groups/)” guide for more information on how to create and edit groups),
- have set up your LDAP authentication source (See the “[Manage LDAP authentication](../../ldap-authentication/)” guide)
- have at least one LDAP entry with a *groupOfNames* object class and at least one *member* reference to an entry within your base DN of your LDAP authentication source. We use the inverse *memberOf* filter to determine the members of a group entry.
<divclass="alert alert-info"role="alert">
**Please note**: OpenProject does not support other attributes other than the `member` / `memberOf` property to define groups.
</div>
For the sake of simplicity, we assume that in this guide, your LDAP structure looks like the following:
| [User list](#user-list) | Manage all users in OpenProject. |
| [Lock users](#lock-users) | Block a user permanently in the system. |
| [Filter users](#filter-users) | Filter users in the list. |
| [Invite new users](#invite-new-users) | Add new users to your OpenProject and invite them via email. Resend and delete user invitations. |
| [Manage user settings](#manage-user-settings) | Manage user settings, e.g. language, projects, groups, global roles, rate history, avatar, two-factor authentication. |
| [Delete users](#delete-users) | Delete a user from the system. |
| [User list](#user-list) | Manage all users in OpenProject. |
| [Lock and unlock users](#lock-and-unlock-users) | Block a user permanently in the system orunlockauser. |
| [Filter users](#filter-users) | Filter users in the list. |
| [Invite new users](#invite-new-users) | Add new users to your OpenProject and invite them via email. Resend and delete user invitations. |
| [Manage user settings](#manage-user-settings) | Manage user settings, e.g. language, projects, groups, global roles, rate history, avatar, two-factor authentication. |
| [Delete users](#delete-users) | Delete a user from the system. |
## User list
@ -35,18 +35,21 @@ Also, you get the information when the user has been created, and when the user
![user list](image-20200211141841492.png)
## Lock users
## Lock and unlock users
If you want to **block users permanently** in the system, you can click the **Lock permanently** link next to a user.
If you are using the [OpenProject Cloud Edition](../../../cloud-edition-guide), you will then have a new user available to add to the system within your booked plan.
If you are using [Enterprise cloud](../../../cloud-edition-guide) or [Enterprise on-premises](../../../enterprise-edition-guide) you will then have a new user available to add to the system within your booked plan.
<divclass="alert alert-info"role="alert">
**Note**: The previous activities from this locked users will still be displayed in the system.
**Note**: The previous activities from these locked users will still be displayed in the system.
@ -35,18 +35,23 @@ You can create a comparison of two versions to see the changes made for specific
## Working with an SVN client
## Working with an SVN or Git client
The data contained in a project repository can be downloaded to your computer using one of several clients, for example [Tortoise SVN](https://tortoisesvn.net/).
The data contained in a project repository can be downloaded to your computer using one of several clients, for example [Tortoise SVN](https://tortoisesvn.net/) for Subversion, and the [git client](https://git-scm.com/) or [one of the recommended GUI clients](https://git-scm.com/downloads/guis) for Git.
The specifics of working of the selected version control client may vary. Please refer to the documentation of your version control software client for more information.
If you choose to use Tortoise SVN, you will find a good guide [here](http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug.html).
For Git, we recommend the [Pro Git guide](https://git-scm.com/book/en/v2).
The specifics of working of the selected version control client may vary. Please refer to the documentation of your version control software client for more information. If you choose to use Tortoise SVN, you will find a good guide [here](http://tortoisesvn.net/docs/release/TortoiseSVN_en/tsvn-dug.html).
## Referencing work packages
In the commit message you can reference a workpackge ID (e.g. #1234). In the repository settings (Administration -> System settings -> Repository) you can define keywords that change the status of the referenced work package (e.g. fixes #1234 or closes #1234).
In any textile field you can reference revisions by putting an "r" in front of the revision number (e.g. r123).
## Configure Repositories in OpenProject
Please see our system admin guide [how to configure repositories in OpenProject](../../system-admin-guide/system-settings/repositories/).
@ -55,4 +60,4 @@ Please see our system admin guide [how to configure repositories in OpenProject]
## Repository integration
See our Installation and operations guide how to [integrate repositories in Openproject](../../installation-and-operations/configuration/repositories/#repository-integration-in-openproject).
See our Installation and operations guide how to [integrate repositories in Openproject](../../installation-and-operations/configuration/repositories/#repository-integration-in-openproject).
@ -73,6 +73,10 @@ The results will be displayed accordingly in the work package list.
![filter-text](filter-text.png)
<divclass="alert alert-info"role="alert">
**Good to know**: Filtering a work packages list will temporarily change the default work package type and default status according to your filters to make newly created work packages visible in the list.