Skip to content

forgeplatform/forge-backend

Forge Backend

CI

Django REST API + Task Engine for the Forge platform.

Project History

Forge is a modernized fork of Ansible AWX, originally developed by Red Hat and the Ansible community under the Apache License 2.0. The fork was created in 2024 to refresh the runtime (Python 3.12, Django 4.2, modern frontend stack), rebrand all awx-* references to forge-*, and extend the platform with new features (dynamic surveys, drift detection, IaC scanning, multi-tenancy, OIDC+WebAuthn, OpenTelemetry observability, declarative Kubernetes operator).

Heritage attribution is preserved in NOTICE.

Tech Stack

  • Python 3.12
  • Django 4.2.17
  • Django REST Framework
  • Celery 5
  • PostgreSQL 15
  • Redis 7
  • Channels 4 (WebSocket)
  • Receptor (distributed execution)

Structure

forge/
├── api/          # REST API (DRF views, serializers, permissions)
├── main/         # Core models, signals, tasks, migrations
├── conf/         # Configuration and database-backed settings
├── sso/          # SSO integration (LDAP, SAML, Social Auth)
├── settings/     # Django settings (development, production)
├── playbooks/    # Ansible playbooks for job execution
├── locale/       # Internationalization
└── ui/           # Legacy UI (retained for AWX compatibility internals)

Development

# Vagrant VM (required for development)
vagrant up
vagrant ssh

# Run tests
pytest forge/main/tests/unit/ -v
pytest forge/main/tests/functional/ -v

# Lint
flake8

API

Base URL: /api/v2/

See docs/11-api-reference.md for the complete reference.

Documentation

Core

Features

Docker

docker build -t ghcr.io/forgeplatform/forge-backend:latest .

Related Repositories

License

Licensed under the Apache License, Version 2.0. See LICENSE and NOTICE.