Skip to main content

Simple Multi Project plugin for managing several projects with one Trac instance.

Project description

Simple Multi Project Plugin

SimpleMultiProjectPlugin lets you easily manage multiple user projects with one Trac instance. This is not a meta project in front of several other Trac projects. It implements the idea of a SingleEnvironment.

Key features

  • Milestones, versions and components can be assigned to all or certain projects
  • Milestones and versions are displayed on the Roadmap page and can be grouped by project
  • On the roadmap page and timeline page it is possible to apply filters to show only projects that meet certain criteria.
  • New Ticket will just offer the associated milestones, versions and components of the chosen project. This requires a new custom-ticket field project.
  • Restrict access to certain milestones, versions and tickets by defining members or non-members of a project.

Integration with other plugins

MultiProjectBacklogPlugin integrates with this plugin allowing you to maintain project specific backlogs in your agile process.

Source

You can check out SimpleMultiProjectPlugin from here using Subversion, or browse the source with Trac.

Download the zipped source from the Homepage or Pypi.

Installation

Note: The plugin doesn't use Genshi for Trac 1.4+.

  • Add a custom ticket field 'project' to your trac.ini file to give tickets the information to which project they belong. Milestones selection depends on that as well.

    [ticket-custom]
    project = select
    project.label = Project
    project.value =
    
  • Give permissions to certain users. Available permissions are:

    • PROJECT_SETTINGS_VIEW - you can see the list of projects with their description and their component mapping on the admin panel
    • PROJECT_ADMIN - full admin access, you can also create and delete projects, and map to milestones, versions and components
  • Add the new policy SmpPermissionPolicy to the front of your permission policy provider list to enable project permission checks for users.

    [trac]
    permission_policies = SmpPermissionPolicy, ... any other ...
    

Configuration

The plugin comes with sane default values, but if you have specific requirements you may change some configuration options using the Trac admin web interface.

Set project permissions for users

A new permission system is implemented by a new permission policy SmpPermissionPolicy and additional request filtering. The latter is necessary because TracFineGrainedPermissions are limited to some resources, notably excluding versions and components.

For permission checking and proper filtering the permission policy plugin must be activated and configured in trac.ini:

[trac]
permission_policies = SmpPermissionPolicy, ... any other ...

Make sure the new policy is the first in the list of available policies.

You may mark a project as restricted on the project admin page which has the following effects.

  • Tickets linked with a restricted project can't be accessed by users without permissions.

    This works for individual ticket pages, ticket queries, the timeline page and everywhere else a ticket is shown.

  • Milestones belonging to restricted projects can't be accessed without permissions.

    This affects ticket queries, the roadmap and timeline pages and individual ticket pages.

  • Components and versions of restricted projects are not available for queries or when creating/modifying ticket pages.

Projects without restrictions and their linked resources can be accessed by any user. Normal Trac permission settings apply.

Project permissions are assigned using the Trac permission admin panel. Each project has a unique ID which is not changing over the lifetime of a project, even if you change the project name. To give a user access to a project you have to give the permission PROJECT_<id>_MEMBER where <id> is the unique project id. For finer control over individual resources the normal Trac permissions are available.

This means a project permission is a coarse filter to only prevent global project resources access. You can't have individual fine grained resource access for different projects (like TICKET_VIEW) because normal Trac permissions are defined for all projects. Use TracFineGrainedPermissions if you need such control.

Authors

Christopher Paredes, falkb, Cinc-th, Ryan J Ollos

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

TracSimpleMultiProject-0.7.4.tar.gz (68.1 kB view details)

Uploaded Source

Built Distributions

TracSimpleMultiProject-0.7.4-py2.7.egg (71.1 kB view details)

Uploaded Source

TracSimpleMultiProject-0.7.4-py2-none-any.whl (73.8 kB view details)

Uploaded Python 2

File details

Details for the file TracSimpleMultiProject-0.7.4.tar.gz.

File metadata

  • Download URL: TracSimpleMultiProject-0.7.4.tar.gz
  • Upload date:
  • Size: 68.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/2.7.18

File hashes

Hashes for TracSimpleMultiProject-0.7.4.tar.gz
Algorithm Hash digest
SHA256 59863d2bc027d6701e95f18b183aeca9fa1c993f9970a93692af38b18d36ff99
MD5 756327e15d2139a4e939ff8cd8b7df24
BLAKE2b-256 d5e4321cdd2d487e27b632e0f060ed42db9096586ab4073a385ce634c9a3d11d

See more details on using hashes here.

File details

Details for the file TracSimpleMultiProject-0.7.4-py2.7.egg.

File metadata

  • Download URL: TracSimpleMultiProject-0.7.4-py2.7.egg
  • Upload date:
  • Size: 71.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/2.7.18

File hashes

Hashes for TracSimpleMultiProject-0.7.4-py2.7.egg
Algorithm Hash digest
SHA256 4e66add8b99a5a558b2331ff27d72b5ffc1439a0e26f37248f845e353dc6429e
MD5 077e080a618ff2e3ef7d2be3bdb35735
BLAKE2b-256 8b948ecc03405a38403fae066821a81719464504f9d6511c4974630e1bd93af0

See more details on using hashes here.

File details

Details for the file TracSimpleMultiProject-0.7.4-py2-none-any.whl.

File metadata

  • Download URL: TracSimpleMultiProject-0.7.4-py2-none-any.whl
  • Upload date:
  • Size: 73.8 kB
  • Tags: Python 2
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.15.0 pkginfo/1.7.0 requests/2.25.1 setuptools/44.1.1 requests-toolbelt/0.9.1 tqdm/4.60.0 CPython/2.7.18

File hashes

Hashes for TracSimpleMultiProject-0.7.4-py2-none-any.whl
Algorithm Hash digest
SHA256 6bac159d74b5c26ff8d74a0ec5031558cfc02791ee50fda654404d90bdece5bd
MD5 26d836cbba760c5ef0add8bb6577c6e3
BLAKE2b-256 d7fbd49821ea0917a43e775fa0475d7b5fb9ba6bce153d50616580777453bc9a

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page