Skip to main content

Provision django instances with usergroups and permissions

Project description

https://img.shields.io/badge/code%20style-black-000000.svg https://travis-ci.org/labd/django-perms-provisioner.svg?branch=master http://codecov.io/github/labd/django-perms-provisioner/coverage.svg?branch=master https://img.shields.io/pypi/v/django-perms-provisioner.svg

This package works like the standard Django loaddata / dumpdata commands only it’s used for creating auth.Group objects with their provided permissions.

Requirements

  • Python >= 3.6
  • Django >= 1.11

Installation

pip install django_perms_provisioner

Then the only thing left before you can start using the Django Permissions Provisioner is adding it to you installed apps.

INSTALLED_APPS = [
    "django_perms_provisioner",
]

Configuration

Configuration can either be done via providing a YAML or JSON file. Your file needs to have one of the following extensions: .json, .yaml, .yml, and their approriate contents of course.

Examples:

---
groups:
  - name: Group Name
    permissions:
      sites:
         - site.add_site
         - site.change_site
       wagtailadmin:
         - admin.access_admin
{
  "groups" [{
    "name": "Group Name",
    "permissions": {
      "sites": ["site.add_site", "site.change_site"],
      "wagtailadmin": ["admin.access_admin"]
    }
  }]
}

It is also possible to only create groups this can be done by just leaving out the permissions.

Example:

---
groups:
  - name: Group Name
  - name: Next Group Name

Usage

To load permissions from a configuration file

./manage.py loadperms permissions.yaml

Or to dump permissions to a configuration file

./manage.py dumpperms > permissions.yaml

Project details


Download files

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

Files for django-perms-provisioner, version 0.0.4
Filename, size File type Python version Upload date Hashes
Filename, size django_perms_provisioner-0.0.4-py2.py3-none-any.whl (7.6 kB) File type Wheel Python version py2.py3 Upload date Hashes View
Filename, size django-perms-provisioner-0.0.4.tar.gz (5.6 kB) File type Source Python version None Upload date Hashes View

Supported by

Pingdom Pingdom Monitoring Google Google Object Storage and Download Analytics Sentry Sentry Error logging AWS AWS Cloud computing DataDog DataDog Monitoring Fastly Fastly CDN DigiCert DigiCert EV certificate StatusPage StatusPage Status page