Skip to content

Commit c6451f8

Browse files
committed
refresh enterprise docs
1 parent 4646e31 commit c6451f8

2 files changed

Lines changed: 406 additions & 80 deletions

File tree

content/enterprise/_index.md

Lines changed: 206 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -3,72 +3,235 @@ type: enterprise
33
draft: false
44
layout: single
55
title: "Enterprise Edition"
6-
description: "Unlock advanced features for your organization with DevOps Maturity Enterprise."
6+
description: "Deployment, governance, API, licensing, and pricing for DevOps Maturity Enterprise."
77
---
88

99
# DevOps Maturity Enterprise
1010

11-
Take your DevOps maturity assessment to the next level with the Enterprise Edition — designed for teams and organizations that need advanced controls, private deployment, and dedicated support.
11+
DevOps Maturity Assessment Enterprise (DMAE) is the commercial edition of the open-source DevOps Maturity project. It extends the core assessment workflow with multi-team governance, compliance features, enterprise reporting, and commercial license enforcement.
1212

13-
## OSS vs Enterprise
13+
## What Enterprise Adds
1414

15-
| Feature | Open Source | Enterprise |
16-
|---------|:-----------:|:----------:|
17-
| DevOps Maturity Specification |||
18-
| Web UI Assessment |||
19-
| CLI Assessment |||
20-
| Maturity Badges |||
21-
| Community Support |||
22-
| Custom Criteria / Extensions |||
23-
| Private / On-Premise Deployment |||
24-
| Single Sign-On (SSO / LDAP / SAML) |||
25-
| Role-Based Access Control (RBAC) |||
26-
| Team & Organization Management |||
27-
| Audit Logs |||
28-
| Advanced Analytics & Reporting |||
29-
| REST API Access |||
30-
| Custom Branding |||
31-
| Compliance Reporting (SOC 2, ISO 27001) |||
32-
| Dedicated Support & SLA |||
33-
34-
## Enterprise-Only Features
35-
36-
### 🔒 Private / On-Premise Deployment
15+
- Multi-tenancy for organizations, teams, and departments
16+
- Role-based access control (RBAC) for enterprise administration
17+
- JWT authentication, browser sessions, and API key access
18+
- Custom assessment criteria and industry-specific templates
19+
- Advanced reporting, trend analysis, benchmark comparison, and data export
20+
- Audit logging and outbound webhooks
21+
- SSO and LDAP/Active Directory integration skeletons
22+
- Vendor-issued license management with runtime policy enforcement
3723

38-
Run DevOps Maturity entirely within your own infrastructure. Keep sensitive assessment data on your own servers, comply with data residency requirements, and integrate with your internal network.
24+
## Feature Matrix
3925

40-
### 🔑 Single Sign-On (SSO)
26+
| Feature | Open Source | Enterprise |
27+
| --- | :---: | :---: |
28+
| DevOps maturity assessment |||
29+
| Score levels (WIP -> GOLD) |||
30+
| Social OAuth (Google / GitHub) |||
31+
| Multi-tenancy (organizations) |||
32+
| Team / department management |||
33+
| Role-based access control (RBAC) |||
34+
| JWT authentication + API keys |||
35+
| Custom assessment criteria |||
36+
| Industry templates |||
37+
| Advanced reporting & trend analysis |||
38+
| Team benchmark comparison |||
39+
| Data export |||
40+
| Audit logging |||
41+
| Outbound webhooks |||
42+
| SSO (SAML / OIDC) skeleton |||
43+
| LDAP / Active Directory sync skeleton |||
44+
| License management |||
45+
46+
## Quick Start
47+
48+
### 1. Install dependencies
49+
50+
```bash
51+
pip install -e ".[dev]"
52+
```
53+
54+
### 2. Create a signing keypair
55+
56+
This is a vendor-side step. Keep the private key offline.
57+
58+
```bash
59+
dmae-enterprise generate-license-keypair \
60+
--private-key-out ./secrets/vendor-license-private.pem \
61+
--public-key-out ./secrets/license-public.pem
62+
```
63+
64+
### 3. Issue a trial or paid license
65+
66+
```bash
67+
dmae-enterprise issue-license \
68+
--private-key-file ./secrets/vendor-license-private.pem \
69+
--org acme-corp \
70+
--tier trial \
71+
--expires 2026-05-09
72+
```
73+
74+
### 4. Configure the environment
75+
76+
```env
77+
JWT_SECRET_KEY=change-me-before-production
78+
DATABASE_URL=sqlite:///./enterprise.db
79+
LICENSE_KEY=<vendor-issued-license>
80+
LICENSE_PUBLIC_KEY_FILE=./secrets/license-public.pem
81+
LICENSE_ENFORCEMENT_MODE=strict
82+
DMAE_RUNTIME_CONFIG_FILE=./.dmae/runtime-config.json
83+
PUBLIC_APP_URL=http://localhost:8000
84+
EMAIL_DELIVERY_MODE=log
85+
EMAIL_BRAND_NAME=DMAE Enterprise
86+
EMAIL_SUPPORT_ADDRESS=support@dmae.local
87+
```
88+
89+
### 5. Start the server
90+
91+
```bash
92+
dmae-enterprise server
93+
```
94+
95+
First-run setup from the browser will:
96+
97+
- accept the signed license key
98+
- create the first `SUPER_ADMIN`
99+
- create the first organization
100+
- persist runtime license overrides for self-hosted restarts
101+
102+
### 6. Optional CLI bootstrap
103+
104+
```bash
105+
dmae-enterprise bootstrap-admin \
106+
--username platform-admin \
107+
--email admin@example.com \
108+
--org-name "Acme Corp" \
109+
--org-slug acme
110+
```
111+
112+
## UI Endpoints
113+
114+
- Setup UI: `http://localhost:8000/`
115+
- Login UI: `http://localhost:8000/login`
116+
- Invite accept UI: `http://localhost:8000/welcome?token=...`
117+
- Password reset UI: `http://localhost:8000/reset-password?token=...`
118+
- App landing page: `http://localhost:8000/app`
119+
- Swagger UI: `http://localhost:8000/enterprise/docs`
120+
- ReDoc: `http://localhost:8000/enterprise/redoc`
121+
- Health check: `http://localhost:8000/health`
122+
123+
The browser workspace at `/app` includes:
124+
125+
- organization overview and effective limits
126+
- license tier and feature visibility
127+
- user listing, email invitation, password reset links, and account activation controls
128+
- team listing and creation
129+
- recent audit activity
130+
131+
## Runtime Enforcement
132+
133+
The server enforces commercial policy at runtime:
134+
135+
- `strict` mode refuses startup without a valid, unexpired license
136+
- license tiers gate premium features such as webhooks, advanced reporting, export, and benchmark reporting
137+
- user, team, and monthly assessment quotas are enforced at request time
138+
- trial, starter, and enterprise tiers can each carry custom overrides for users, teams, and assessments
139+
140+
## Authentication And API Access
41141

42-
Integrate with your organization's identity provider via SAML 2.0, LDAP, or OIDC. Streamline access management and enforce centralized authentication policies.
142+
Login with email and password:
43143

44-
### 👥 Team & Organization Management
144+
```bash
145+
curl -X POST http://localhost:8000/enterprise/auth/login \
146+
-H "Content-Type: application/json" \
147+
-d '{"email":"admin@example.com","password":"secret"}'
148+
```
45149

46-
Organize assessments by team, project, or business unit. Assign roles and permissions with fine-grained Role-Based Access Control (RBAC) to ensure the right people have the right access.
150+
Use the returned bearer token:
151+
152+
```bash
153+
curl http://localhost:8000/enterprise/organizations \
154+
-H "Authorization: Bearer <access_token>"
155+
```
156+
157+
Or use an API key when the current license includes `api_access`:
158+
159+
```bash
160+
curl http://localhost:8000/enterprise/organizations \
161+
-H "X-API-Key: dmae_<your_api_key>"
162+
```
163+
164+
Browser sessions use `HttpOnly` cookies. Invite acceptance and password reset flows issue one-time links that land on `/welcome` and `/reset-password`.
165+
166+
For local development, keep `EMAIL_DELIVERY_MODE=log` and the admin UI will show link previews after sending an invite or reset, plus recent delivery history in the Email Delivery panel. For production, switch to `EMAIL_DELIVERY_MODE=smtp`, configure SMTP settings, and set `EMAIL_BRAND_NAME` and `EMAIL_SUPPORT_ADDRESS` to match customer-facing emails.
167+
168+
## Key API Endpoints
169+
170+
| Endpoint | Description |
171+
| --- | --- |
172+
| `POST /enterprise/auth/login` | Authenticate and receive JWT tokens |
173+
| `POST /enterprise/auth/session/login` | Authenticate and establish browser session cookies |
174+
| `POST /enterprise/auth/refresh` | Refresh an access token |
175+
| `GET /enterprise/email/settings` | Inspect effective email delivery configuration |
176+
| `POST /enterprise/email/test` | Send a test email with the current delivery settings |
177+
| `GET /enterprise/auth/action-link` | Inspect an invite or password reset link |
178+
| `POST /enterprise/auth/action-link/consume` | Complete an invite or password reset |
179+
| `POST /enterprise/organizations` | Create an organization |
180+
| `POST /enterprise/organizations/{id}/teams` | Create a team |
181+
| `POST /enterprise/organizations/{id}/users` | Create a user and send invite link |
182+
| `POST /enterprise/organizations/{id}/users/{user_id}/invite-link` | Reissue an invite link |
183+
| `POST /enterprise/organizations/{id}/users/{user_id}/reset-password` | Send a password reset link |
184+
| `GET /enterprise/organizations/{id}/email-deliveries` | View invite/reset delivery outcomes |
185+
| `POST /enterprise/organizations/{id}/email-deliveries/{delivery_id}/retry` | Retry a failed or previewed invite/reset email |
186+
| `POST /enterprise/organizations/{id}/assessments` | Submit an assessment |
187+
| `GET /enterprise/organizations/{id}/reports/summary` | Summary dashboard |
188+
| `GET /enterprise/organizations/{id}/reports/trends` | Score trend over time |
189+
| `GET /enterprise/organizations/{id}/reports/benchmark` | Team comparison |
190+
| `GET /enterprise/organizations/{id}/reports/export` | Export assessments |
191+
| `GET /enterprise/organizations/{id}/audit-logs` | View audit trail |
192+
| `POST /enterprise/organizations/{id}/api-keys` | Generate API key |
193+
| `POST /enterprise/organizations/{id}/webhooks` | Register webhook |
47194

48-
### 📊 Advanced Analytics & Reporting
195+
## Licensing And Pricing
49196

50-
Gain deeper insights with cross-team trend analysis, historical score tracking, and exportable compliance reports. Map your DevOps controls to frameworks like SLSA, NIST, and ISO 20243.
197+
The current commercial baseline is a simple B2B annual subscription model sold per organization, with seat bands instead of pure per-seat billing.
51198

52-
### 🔌 REST API Access
199+
| Tier | Recommended packaging | Suggested starting price |
200+
| --- | --- | --- |
201+
| `trial` | 14-30 days, 10 users, 3 teams, 50 assessments/month | Free |
202+
| `starter` | Up to 100 users, 20 teams, 500 assessments/month | USD 6,000/year |
203+
| `enterprise` | Up to 500 users included, SSO/export/benchmark/priority support | From USD 18,000/year |
204+
205+
Recommended overage policy:
53206

54-
Integrate DevOps Maturity assessments into your existing DevOps toolchain via a fully documented REST API. Automate score collection and reporting within your CI/CD pipelines.
207+
- Additional 100 users: +USD 2,000/year
208+
- Additional 1000 assessments/month: +USD 1,500/year
209+
- Premium onboarding or private support channel: quoted separately
55210

56-
### 🛡️ Audit Logs
211+
Operational license policy:
57212

58-
Maintain a complete, tamper-resistant record of all assessment activities, configuration changes, and user actions for compliance and security auditing purposes.
213+
- default enforcement mode is `strict`
214+
- trial customers receive a signed `trial` license with an expiry date
215+
- paying customers receive a signed `starter` or `enterprise` license
216+
- renewals are handled by issuing a fresh key before expiry
217+
- upgrades are handled by issuing a new key with a higher tier or larger limits
59218

60-
### 🎨 Custom Branding
219+
The runtime verifies licenses with an Ed25519 public key. Keep the private key offline and only distribute the public key to deployed environments.
61220

62-
White-label the interface with your organization's logo, colors, and domain to deliver a seamless internal user experience.
221+
## Customer Lifecycle
63222

64-
### 🤝 Dedicated Support & SLA
223+
1. Generate a signing keypair once and store the private key offline.
224+
2. Send the public key with the deployment package or bake it into the hosted environment.
225+
3. Issue a `trial` key for evaluation.
226+
4. When the customer converts, issue a `starter` or `enterprise` key with the agreed expiry and limits.
227+
5. Before expiry, issue a renewal key and rotate `LICENSE_KEY`.
65228

66-
Get priority support from the DevOps Maturity team, guaranteed response times, and access to a dedicated customer success manager.
229+
## Default Criteria Fallback
67230

68-
---
231+
If the open-source submodule is not checked out, the enterprise service falls back to a built-in assessment criteria set so scoring still works in a standalone deployment.
69232

70-
## Get Started with Enterprise
233+
## Get Started With Enterprise
71234

72-
Ready to take DevOps Maturity to the enterprise level? Contact us to learn more or request a demo.
235+
Use Enterprise when you need centralized governance, private deployment, compliance-oriented reporting, and licensed commercial support around the DevOps Maturity workflow.
73236

74237
{{< enterprise-cta >}}

0 commit comments

Comments
 (0)