Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: Enterprise licensing #3624

Open
wants to merge 46 commits into
base: main
Choose a base branch
from
Open

feat: Enterprise licensing #3624

wants to merge 46 commits into from

Conversation

matthewelwell
Copy link
Contributor

@matthewelwell matthewelwell commented Mar 15, 2024

Changes

This PR sets up licensing work to enable us to digitally sign licensing agreements and enable them to be evaluated towards the enterprise's limits.

A few management commands have been added to allow us to create signatures and to digitally sign licensing agreements.

To create a private key (which has been done for production already, stored in Bitwarden) run:

poetry run python manage.py create_licensing_private_key

To create a public key (which has been done for production already, added to the settings file) run:

poetry run python manage.py create_licensing_public_key

To create and sign a licence agreement run:

poetry run python manage.py create_signed_licence \
--organisation-name "Some Org" \
--plan-id "SomePlanID" \
--num-seats 20 \ 
--num-projects 10 \
--num-api-calls 2000000

Which will output the JSON file for the license and an cryptographic blob which is the licence signature.

To add a licence to a Flagsmith organisation upload via PUT the two files, one the license doc and the other the licence signature to the following URL path:

/api/v1/organisations/:organisation_id/licence

How did you test this code?

New tests were added as well as manually verifying that the management commands could work.

@matthewelwell matthewelwell changed the title feat: WIP: licensing feat: WIP - licensing Mar 15, 2024
Copy link

vercel bot commented Mar 15, 2024

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
flagsmith-frontend-preview ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 13, 2024 8:40pm
flagsmith-frontend-staging ✅ Ready (Inspect) Visit Preview 💬 Add feedback Nov 13, 2024 8:40pm
1 Skipped Deployment
Name Status Preview Comments Updated (UTC)
docs ⬜️ Ignored (Inspect) Visit Preview Nov 13, 2024 8:40pm

Copy link
Contributor

github-actions bot commented May 16, 2024

Uffizzi Ephemeral Environment deployment-57790

☁️ https://app.uffizzi.com/github.com/Flagsmith/flagsmith/pull/3624

📄 View Application Logs etc.

What is Uffizzi? Learn more!

@github-actions github-actions bot added the feature New feature or request label Oct 30, 2024
@github-actions github-actions bot added feature New feature or request and removed feature New feature or request labels Oct 30, 2024
@github-actions github-actions bot removed the feature New feature or request label Oct 31, 2024
@github-actions github-actions bot added feature New feature or request and removed feature New feature or request labels Nov 11, 2024
@github-actions github-actions bot added feature New feature or request and removed feature New feature or request labels Nov 11, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
api Issue related to the REST API feature New feature or request
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Enterprise Licence Management
2 participants