Catalog PyPI
PACKAGE EXPLORERView in registry

aa-pipeline

PyPI

Structured Journey System for Alliance Auth — generalised onboarding, training, and certification flows.

allianceauthcertificationonboardingpipelinetrainingworkflows
Versions collected1
Direct dependencies3From release 0.1.30
Last observed20 Oct, 17:00 UTC

README

Version 0.1.30 documentation

aa-pipeline

A structured journey system for Alliance Auth — onboarding, training, certification, and vetting flows.

aa-pipeline provides fully configurable Flows made up of ordered Steps, with built-in support for Smart Filter checks, user acknowledgements, service account verification, and on-complete automation.


Features

  • Three step types
    • filter_check — automatically evaluated against configured Smart Filters
    • acknowledgement — user reads content and clicks Confirm
    • service_check — verifies an active service account (Discord, Mumble, TeamSpeak, etc.) via the runtime service registry
  • Flow lifecycle — draft → published → archived (with restore to draft)
  • Flow types — Onboarding, Training, Certification, Vetting, Industry, Other
  • Audience targeting — States, Groups, Corporations, Alliances, Factions, Characters
  • Auto-assignment — flows are assigned automatically when a user's profile, groups, or characters change
  • On-complete automation — add users to groups and fire a signed webhook when a flow is completed
  • In-app flow manager — create, edit, publish, archive, and reorder flows and steps without Django Admin
  • Smart Filter check editor — attach and reorder Smart Filter checks per step in-app
  • Signed webhooks — outgoing HTTP POST payloads include an X-Pipeline-Signature HMAC-SHA256 header for receiver verification
  • GDPR hook — integrates with aa-gdpr for data export and deletion
  • Alliance Auth theme compatible — Bootstrap 5, dark-mode support, mobile responsive

Requirements

  • Python >= 3.10
  • Alliance Auth >= 4.3.1, < 5

Installation

See the Alliance Auth plugin installation docs for general guidance.

  1. Install the package:

    pip install aa-pipeline[markdown]
    

    The [markdown] extra installs markdown and bleach to enable Markdown rendering in step body text. Without it, body text is displayed as plain text.

  2. Add "pipeline" to INSTALLED_APPS in your Alliance Auth settings file (e.g. local.py):

    INSTALLED_APPS += [
        "pipeline",
    ]
    
  3. Rebuild the image, run migrations, and collect static files:

    docker compose build
    docker compose exec allianceauth_gunicorn bash -c "auth migrate && auth collectstatic --noinput"
    docker compose up -d
    
  4. In Django Admin, assign the pipeline | Can access this app permission to the groups or states that should see the Pipeline menu item.


Updating

  1. Upgrade the package:

    pip install --upgrade aa-pipeline[markdown]
    
  2. Rebuild and apply any new migrations:

    docker compose build
    docker compose exec allianceauth_gunicorn bash -c "auth migrate && auth collectstatic --noinput"
    docker compose up -d
    

Configuration

No required settings.


Usage

Setting up a flow

  1. Click Manage Flows in the Pipeline menu (requires the pipeline | Can manage flows permission or superuser access).

  2. Create a flow and set its Status to Draft while building.

  3. Add and reorder steps using the step editor.

  4. For filter_check steps, add Smart Filter checks in the Smart Filter Checks card on the step form. If your Smart Filters were registered before Pipeline was installed, sync them first:

    docker compose exec allianceauth_gunicorn python manage.py pipeline_sync_filters
    
  5. Configure Audience & Visibility — the flow won't appear to users until at least one audience dimension is set.

  6. Change Status to Published.

Users matching the configured audience will see the flow on their Pipeline page and will be auto-assigned if Auto Assign is enabled.


Contributing

Issues and pull requests welcome at GitHub.


License

GPLv3 — see LICENSE.

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.1.3017 Jul 20263

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
thrainkrilleve/aa-pipeline

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 17:00 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:7090e43cddd8ef24f9e9b0283168cf653e7cd32296b46162eaf451ba6bf94afb