RedminePro App Installation

In order for this app to function properly, you'll need to ensure that the following steps are completed.

You are required to install a plugin into your Redmine instance in order for this app to work. Please see the plugin (freely available here) to see what is involved. It is a simple installation, but requires server access.

In order for the custom fields feature to work optimally, you should install the Better Custom Fields API plugin for Redmine into your Redmine implementation. It will work without it, but since the default Redmine implementation does not provide links between the custom fields and particular projects, the custom fields are shown for any Trackers that use them, even if the project does not. The installation of the plugin is quite simple. Go to our github page for more information. Or simply do the following to install:

	$ cd /path/to/redmine/plugins
	$ git clone https://github.com/smallcubed/redmine_better_custom_fields.git
	

then ensure that the rights for the directory are correct and restart Redmine.

In addition, your Redmine service must be accessible via SSL (i.e. using https). This is a requirement based on the fact that RedminePro uses the Zendesk proxy to access your instance to retrieve information and add tickets. In addition, the certificate should have a valid signing chain and should not be a self-signed certificate.

You must also ensure that the REST API is enabled in the administration pages: Administration => Settings => API and check the "Enable REST web service".

Be sure that the user you use for the API key is an administrative user to ensure that all data can be retrieved. We recommend creating a separate user for the Zendesk interactions.

Once that is installed, you'll need to fill in the app settings with values for the domain of your Zendesk app, the Redmine server, the Redmine API key and the id of a custom ticket field to store the issue IDs attached to a ticket. Optionally you can also configure the full path to your Redmine application, a custom popup field to use as a project mapping field, and a the id of a project checkbox field in Redmine to use to select projects to show. You will find full descriptions for these below.

For the best experience, you should also add the better custom fields plugin to your Redmine installation. To get it go to our github page.

  1. Redmine host name — Only the host of your Redmine server that supports the REST API — don't include protocol or path i.e., redmine.example.com or example.com.
  2. Redmine Full URL — If your Redmine server does not use https and/or has a path component — enter the full URL here (optional). For instance, http://redmine.example.com or https://example.com/redmine.
  3. Redmine API Key — The API key to access your Redmine implementation. You can find this by logging into Redmine (as the user you want all interactions to show up as - we recommend you create a specific user), click on the user icon in the top right and choose “My Account”. PLEASE NOTE: this value is a secure value and thus is not visible when coming back into the app settings. If you make a change to the settings, you *must* reenter the API key.
  4. Redmine Attachment Upload API Key — The API key for uploading attachments to your Redmine implementation. This API key would be used for file attachments to Redmine and WILL NOT BE hidden (agents could potentially see this by inspecting the javascript in the browser). We recommend that you create a separate user in Redmine with no explicit rights and get the API key from that user. Without setting this value, attachments will not be available.
  5. Redmine Issue Field ID — The field ID of the Zendesk custom ticket field (Text) to use to store Redmine issue list. Create this field for the plugin to work properly. This field will not be visible, but it will store the list of issues attached to a ticket.
  6. Project Field ID — The field ID of the Zendesk custom ticket field to use to match with a project (optional). If you have a custom field in Zendesk that you use to select the project, this can automatically select the Redmine project, assuming that the value of the custom field uses the Redmine project identifier.
  7. Supportable Project Field ID — The field ID of the Redmine custom project field used to determine if a project should be displayed (optional). If you add a custom checkbox in Redmine to indicate which projects should be displayed in Zendesk, only those projects will be displayed in the list, otherwise all projects will be displayed.
  8. Zendesk Ticket Link Field ID — The field ID of the Redmine custom issue test field used to store ticket ids linked to issues (optional). If you add a custom text field in Redmine to indicate where issues should store the ticket ids in Zendesk, the links will be stored there. This can allow you to use that information, for instance with the Zendesk Ticket updater plugin.
  9. Enable Redmine Custom Fields — If for some reason, you would not like to see the custom fields in the creation of a Redmine issue, uncheck this box.
  10. Use Latest Post as Default Description For Issue — If this is checked then the latest post will be used as the default text for new issues, instead of the first post.

Questions and issues should be reported to our Zendesk.

SmallCubed, Inc.