1
0
mirror of https://github.com/Unleash/unleash.git synced 2024-12-22 19:07:54 +01:00
Commit Graph

689 Commits

Author SHA1 Message Date
Christopher Kolstad
1bba76413f
feat: make all internal rate limits configurable (#5095)
### What
This PR makes the rate limit for user creation and simple login (our
password based login) configurable in the same way you can do
metricsRateLimiting.

### Worth noting
In addition this PR adds a `rate_limit{endpoint, method}` prometheus
gauge, which gets the data from the UnleashConfig.
2023-10-26 09:20:29 +02:00
Mark Fulton
34395d3ef9
docs/academy-learning-path-graphic (#5117)
Added learning path visualization graphic to Academy landing page
2023-10-20 13:51:48 -05:00
Mark Fulton
cb9b6f468b
Docs - Formatting fix academy-advanced-for-devs.md (#5116)
Minor formatting fix for embedded play info box not displaying correctly
2023-10-20 09:59:55 -04:00
Pranshu Khanna
b5dd8f132f docs: Added Flutter and Next.js Tutorials 2023-10-19 17:40:00 +02:00
Christopher Kolstad
b06613d1b0
feat: Adds rate limiting to metric POST endpoints (#5075)
### What
The heaviest requests we serve are the register and metrics POSTs from
our SDKs/clients.
This PR adds ratelimiting to /api/client/register, /api/client/metrics,
/api/frontend/register and /api/frontend/metrics with a default set to
6000 requests per minute (or 100 rps) for each of the endpoints.

It will be overrideable by the environment variables documented.

### Points of discussion
@kwasniew already suggested using featuretoggles with variants to
control the rate per clientId. I struggled to see if we could
dynamically update the middleware after initialisation, so this attempt
will need a restart of the pod to update the request limit.
2023-10-18 13:00:44 +02:00
Mateusz Kwasniewski
4dd01c1765
docs: dependent features (#5058) 2023-10-18 08:57:04 +02:00
Drew Gorton
34038ca1de
Update how-to-create-and-assign-custom-project-roles.md (#5060)
Separate videos - put them with the same written content
2023-10-17 09:05:06 -05:00
Mark Fulton
2754c26f2e
docs/video embed, academy video embed fixes (#5005)
PR contains the following:

1) New video embeds for the following docs:

- website/docs/reference/deploy/environment-import-export.mdx
- website/docs/reference/playground.mdx
- website/docs/reference/strategy-constraints.md
- website/docs/topics/a-b-testing.md

2) Improvements to the Academy course playlist embedding for the three
Academy courses. Tested the standard method of embedding video, and it
seems this works well for playlists too.
Switching to the native Docusaurus embed solves the issue with dynamic
resizing. Rather than a static embed size the video will now scale to
the browser window size.
2023-10-11 14:20:16 -05:00
Mark Fulton
7ea7c08654
Docs/academy video player (#5002)
Added explanative text to three courses on embedded playlist video
player usage
2023-10-11 13:22:56 +00:00
Mark Fulton
a3b4e9db5f
docs: updated sidebars and added missing doc ID (#4993)
Updated `sidebars.js` to incorporate `Getting Started` as top level doc,
with Unleash Academy in child structure (order as discussed with
@dgorton ). See screenshot.

Also added missing `id` to `getting-started.md`


![image](https://github.com/Unleash/unleash/assets/128738155/52881918-a38b-4e6a-b6c8-bbeb1cd0a232)
2023-10-10 16:18:59 -05:00
Mark Fulton
053a4637e1
initial docs for Unleash Academy (#4992)
Set of four docs for Unleash Academy, with overview page and three
course pages. Navigation to be updated separately.
2023-10-10 15:05:13 -05:00
Sebastian Bury
9a62f6a64f
create getting-started and remove quickstart (#4991)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Co-authored-by: Drew Gorton <dgorton@users.noreply.github.com>
Co-authored-by: Mark Fulton <128738155+markunl@users.noreply.github.com>
2023-10-10 15:03:17 -05:00
Nuno Góis
b0eba109d3
docs: add feature availability troubleshooting guide (#4989)
Adds a small troubleshooting guide for Unleash features availability.
This is not specific to features that have a visual component in the
admin UI, but that's the most common scenario.
2023-10-10 11:17:06 -05:00
Thomas Heartman
fa4d6b211a
docs: make videos bigger (#4980)
This PR changes the `VideoContent` component to:
- remove the extra text; keeps only videos
- makes videos take up the full article width
- multiple videos stack vertically (this may or may not be the best way
to handle it, but we don't have any instances of using multiple videos
as of right now, so we shouldn't touch this until we do).

By chance, it also removes a lot of trailing whitespace in files. I
suggest checking out the diff with whitespace hidden.

Before (single video):

![image](https://github.com/Unleash/unleash/assets/17786332/e47e8827-93e9-4dbc-bdfb-cdb1665fae98)


Before (if there were multiple videos): 

![image](https://github.com/Unleash/unleash/assets/17786332/f41ab11f-649f-4369-96fe-70a5d66ced40)


After (single video):

![image](https://github.com/Unleash/unleash/assets/17786332/0df9d3fd-3935-4567-93d0-470682fe4bb3)


After (if there are multiple videos): 

![image](https://github.com/Unleash/unleash/assets/17786332/98b4a590-c03c-40a1-880f-93ad05090c5e)
2023-10-10 11:42:25 +02:00
Jonas Strømsodd
80c4a8277c
feat: allow defining initial admin user as env variable (#4927)
Closes #4560
2023-10-06 09:07:06 +02:00
Drew Gorton
ab51a495aa
Update more instances of "toggle" with "flag" (#4821)
Landing page + sidebar nav + main 'How to create flags' page

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-10-02 12:37:53 -05:00
Nuno Góis
521cc24a22
feat: add more events in integrations (#4815)
https://linear.app/unleash/issue/2-1253/add-support-for-more-events-in-the-slack-app-integration

Adds support for a lot more events in our integrations. Here is how the
full list looks like:

- ADDON_CONFIG_CREATED
- ADDON_CONFIG_DELETED
- ADDON_CONFIG_UPDATED
- API_TOKEN_CREATED
- API_TOKEN_DELETED
- CHANGE_ADDED
- CHANGE_DISCARDED
- CHANGE_EDITED
- CHANGE_REQUEST_APPLIED
- CHANGE_REQUEST_APPROVAL_ADDED
- CHANGE_REQUEST_APPROVED
- CHANGE_REQUEST_CANCELLED
- CHANGE_REQUEST_CREATED
- CHANGE_REQUEST_DISCARDED
- CHANGE_REQUEST_REJECTED
- CHANGE_REQUEST_SENT_TO_REVIEW
- CONTEXT_FIELD_CREATED
- CONTEXT_FIELD_DELETED
- CONTEXT_FIELD_UPDATED
- FEATURE_ARCHIVED
- FEATURE_CREATED
- FEATURE_DELETED
- FEATURE_ENVIRONMENT_DISABLED
- FEATURE_ENVIRONMENT_ENABLED
- FEATURE_ENVIRONMENT_VARIANTS_UPDATED
- FEATURE_METADATA_UPDATED
- FEATURE_POTENTIALLY_STALE_ON
- FEATURE_PROJECT_CHANGE
- FEATURE_REVIVED
- FEATURE_STALE_OFF
- FEATURE_STALE_ON
- FEATURE_STRATEGY_ADD
- FEATURE_STRATEGY_REMOVE
- FEATURE_STRATEGY_UPDATE
- FEATURE_TAGGED
- FEATURE_UNTAGGED
- GROUP_CREATED
- GROUP_DELETED
- GROUP_UPDATED
- PROJECT_CREATED
- PROJECT_DELETED
- SEGMENT_CREATED
- SEGMENT_DELETED
- SEGMENT_UPDATED
- SERVICE_ACCOUNT_CREATED
- SERVICE_ACCOUNT_DELETED
- SERVICE_ACCOUNT_UPDATED
- USER_CREATED
- USER_DELETED
- USER_UPDATED

I added the events that I thought were relevant based on my own
discretion. Know of any event we should add? Let me know and I'll add it
🙂

For now I only added these events to the new Slack App integration, but
we can add them to the other integrations as well since they are now
supported.

The event formatter was refactored and changed quite a bit in order to
make it easier to maintain and add new events in the future. As a
result, events are now posted with different text. Do we consider this a
breaking change? If so, I can keep the old event formatter around,
create a new one and only use it for the new Slack App integration.

I noticed we don't have good 404 behaviors in the UI for things that are
deleted in the meantime, that's why I avoided some links to specific
resources (like feature strategies, integration configurations, etc),
but we could add them later if we improve this.

This PR also tries to add some consistency to the the way we log events.
2023-09-29 16:11:59 +01:00
Mark Fulton
d0e9e33573
docs: add video to SDK overview reference (#4855)
Added video embed into the SDK overview reference doc:
https://docs.getunleash.io/reference/sdks
2023-09-27 14:06:41 -05:00
Mark Fulton
a7040a29c4
doc: Strategy variants video update (#4854)
Added video embed for Strategy Variants reference
2023-09-27 13:50:57 -05:00
David Leek
0938b2e545
docs: improve datadog integration docs (#4802)
## About the changes

Improvement to the description of the datadog integration. Adds 2
missing event types, removes an event type that is deprecated and about
to be completely removed, adds missing description of extra json headers
and source type name, and adds description for the new configuration
option for JSON body support

---------

Co-authored-by: Nuno Góis <github@nunogois.com>
Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-26 11:15:22 +01:00
Nuno Góis
b9946ee35c
docs: Unleash Slack App integration (#4801)
https://linear.app/unleash/issue/2-1235/docs-slack-app-integration-documentation

This adds a new reference doc for the new Unleash Slack App integration
and marks the previous Slack integration as deprecated.

As a side-effect this PR also fixes an issue where we wouldn't be able
to delete tags with special characters.

---------

Co-authored-by: David Leek <david@getunleash.io>
Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-22 23:19:17 +01:00
Michael Ferranti
e197934fa4
docs:Add Feature Flag Migration guide to docs (#4792)
I'm adding a Feature Flag Migration tutorial written by Customer Success
to the docs.

The content should live in the Topic Guide section

Topic Guides

Feature Flags Migration Best Practices index page with subpages for 
* Define scope
* Make business case 
* Planning 
* Execution
* Onboarding users

---------

Co-authored-by: Thomas Heartman <thomasheartman+github@gmail.com>
Co-authored-by: Gastón Fournier <gastonfournier@gmail.com>
Co-authored-by: Gastón Fournier <gaston@getunleash.io>
Co-authored-by: Mark Fulton <128738155+markunl@users.noreply.github.com>
Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-22 16:41:11 +02:00
Michael Ferranti
4f5f1f347c
docs: Create feature-flag-best-practices.md (#4804)
<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
<!-- Describe the changes introduced. What are they and why are they
being introduced? Feel free to also add screenshots or steps to view the
changes if they're visual. -->

<!-- Does it close an issue? Multiple? -->
Closes #

<!-- (For internal contributors): Does it relate to an issue on public
roadmap? -->
<!--
Relates to [roadmap](https://github.com/orgs/Unleash/projects/10) item:
#
-->

### Important files
<!-- PRs can contain a lot of changes, but not all changes are equally
important. Where should a reviewer start looking to get an overview of
the changes? Are any files particularly important? -->


## Discussion points
<!-- Anything about the PR you'd like to discuss before it gets merged?
Got any questions or doubts? -->

---------

Co-authored-by: Ivar Conradi Østhus <ivar@getunleash.io>
2023-09-22 14:09:41 +02:00
Bolaji Ayodeji
d28e7e5a69
docs: update the bulleted list case in about-the-docs.md (#4811)
## About the changes

While exploring the [About the docs](https://docs.getunleash.io) page
for the first time, I observed the first bulleted list started with
lowercase, which isn't consistent with other sections of the page. This
minor PR capitalizes the first letter of the bullet lists in the
"Documentation structure" section. This ensures the list follows the
existing style across the page and the stable rule of written language
([reference](https://www.purchase.edu/editorial-style-guide/general-style-preferences/punctuation/bulleted-and-numbered-lists/#C)).
2023-09-22 11:06:41 +02:00
Ivar Conradi Østhus
013efac46b
feat: open-source segments 🚀 (#4690)
We love all open-source Unleash users. in 2022 we built the [segment
capability](https://docs.getunleash.io/reference/segments) (v4.13) as an
enterprise feature, simplify life for our customers.

Now it is time to contribute it to the world 🌏

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.io>
2023-09-19 11:24:26 +00:00
Thomas Heartman
53c40372dd
Update webhook.md (#4739)
fix a couple typos
2023-09-15 11:15:50 +02:00
Thomas Heartman
1539d1955f
docs(1-1262): Change addons -> integrations (#4523)
This PR replaces references to _addons_ in the docs with references to
_integrations_.

In doing so, I have also:
- moved `/reference/addons` documents into `/reference/integrations`
- combined the previous "Addons" and "Integrations" categories into a
new "Integrations" category
- added redirects from all the old addons pages to their new locations

I have updated the wording, but have not changed things such as API
paths, event names, etc, because these will not change at the moment
(maybe a breaking change to schedule for v6?).

---------

Co-authored-by: Tymoteusz Czech <2625371+Tymek@users.noreply.github.com>
2023-09-14 15:27:51 +02:00
Tymoteusz Czech
e8d5f0cf56
fix: integrations text review (#4706)
## About the changes
Update copy

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-14 12:01:29 +00:00
Tymoteusz Czech
66c790fbf1
fix: Integrations quality updates (#4677)
Fix issues uncovered when reviewing integrations list and form.

- YouTube CSP
- Text content and formatting
- Margins
- Update old integration icons
- Fix headers in dark theme
2023-09-14 10:17:33 +02:00
Thomas Heartman
85f03ba567
Update webhook.md (#4684)
fix a typo
2023-09-14 08:09:39 +02:00
Thomas Heartman
44db4fb0c3
1-1360: explain implicit ^ and $ in docs (#4668)
Update docs to explain that ^ and $ are implicit in the regexes used.
2023-09-12 14:23:19 +02:00
Nuno Góis
c6af38b12b
docs: add mention of multiple project roles (#4648)
https://linear.app/unleash/issue/2-1130/documentation-about-multiple-project-roles

- Adds a section for the feature in the "Role-based Access control"
reference doc;
- Removes the mention that "Groups that *do* have a root role can't be
assigned to a project." which is no longer true;
- Adds a reference to multiple project roles in the "How to create and
assign custom project roles" guide;
- Fixes a wrong sentence in the "Assigning custom project roles" section
of the aforementioned guide;

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-11 14:41:47 +01:00
Thomas Heartman
4de3ff3d2f
docs: feature flag naming patterns (#4632)
This PR adds a reference doc and a how-to doc for feature flag naming
patterns.

Extra thanks to @sebastian-bury for the draft from the offsite 👏🏼
2023-09-11 15:28:10 +02:00
Simon Hornby
2b210a85fd
docs: update compatibility matrix with strategy variants (#4626) 2023-09-08 10:34:04 +02:00
Nuno Góis
1ae700a027
feat: add request logger env variable (#4614)
Adds a new env variable for request logger.

---------

Co-authored-by: Gastón Fournier <gaston@getunleash.io>
2023-09-05 15:32:20 +01:00
Gastón Fournier
ea00ea9d56
docs: troubleshooting guides (#4592)
## About the changes
Adds troubleshooting guides for some common problems under the how-to
area (following the [diataxis framework](https://diataxis.fr/)).

This is part of Unleash 2023 offsite challenge

---------

Co-authored-by: Drew Gorton <drew.gorton@getunleash.io>
Co-authored-by: Diego Susa <diego@getunleash.io>
Co-authored-by: Michael Vittiglio <michael.vittiglio@getunleash.io>
Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-09-01 15:39:23 +02:00
Mateusz Kwasniewski
3ebeea4d64
docs: strategy variants ruby and dotnet sdk versions (#4570) 2023-08-25 08:28:47 +02:00
Drew Gorton
da7829daca
Update quickstart.md (#4474)
Introduce 'Feature Flag' language and replace most instances of 'Feature
Toggle'

<!-- Thanks for creating a PR! To make it easier for reviewers and
everyone else to understand what your changes relate to, please add some
relevant content to the headings below. Feel free to ignore or delete
sections that you don't think are relevant. Thank you! ❤️ -->

## About the changes
Introduce 'Feature Flag' language and replace most instances of 'toggle'
with 'flag' on Quickstart

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-08-16 15:57:02 +02:00
Mateusz Kwasniewski
a2bd7d42a1
feat: change request reject docs and step update (#4493) 2023-08-16 09:46:05 +02:00
Mateusz Kwasniewski
90f5af6b61
docs: change requests for segments (#4476) 2023-08-11 09:48:37 +02:00
Nuno Góis
95f4f641b5
docs: custom root roles (#4451)
https://linear.app/unleash/issue/2-1136/custom-root-roles-documentation

- [Adds documentation referencing custom root
roles](https://unleash-docs-git-docs-custom-root-roles-unleash-team.vercel.app/reference/rbac);
- [Adds a "How to create and assign custom root roles" how-to
guide](https://unleash-docs-git-docs-custom-root-roles-unleash-team.vercel.app/how-to/how-to-create-and-assign-custom-root-roles);
 - Standardizes "global" roles to "root" roles;
- Standardizes "standard" roles to "predefined" roles to better reflect
their behavior and what is shown in our UI;
 - Updates predefined role descriptions and makes them consistent;
 - Updates the side panel description of the user form;
- Includes some boy scouting with some tiny fixes of things identified
along the way (e.g. the role form was persisting old data when closed
and re-opened);
 
 Questions:

- Is it worth expanding the "Assigning custom root roles" section in the
"How to create and assign custom root roles" guide to include the steps
for assigning a root role for each entity (user, service account,
group)?
- Should this PR include an update to the existing "How to create and
assign custom project roles" guide? We've since updated the UI;

---------

Co-authored-by: Thomas Heartman <thomas@getunleash.ai>
2023-08-10 08:21:58 +01:00
Mateusz Kwasniewski
c549280e31
fix: Performance improvements for demo and docs update (#4454) 2023-08-09 12:58:03 +02:00
Mateusz Kwasniewski
f889eba6e9
docs: update strategy variants sdks and add sidebar link (#4436) 2023-08-07 14:53:13 +02:00
Mark Fulton
187ed8a39a
docs: Edge updates for docs/proxy-hosting (#4275)
docs: document edge/proxy hosting options and strategies
2023-08-02 14:32:12 +02:00
Mateusz Kwasniewski
20b1559329
docs: strategy variants in 5.4 (#4372) 2023-08-02 12:27:24 +02:00
Thomas Heartman
b8ab43543f
remove trailing periods (#4378)
remove trailing periods in markdown.
2023-08-01 15:20:10 +02:00
Mateusz Kwasniewski
55148eb549
docs: strategy variants (#4289) 2023-07-25 15:35:29 +02:00
Thomas Heartman
60b9431b67
docs: document feature potentially stale on events (#4278)
Document new "feature-potentially-stale-on" events.

Relates to #4205
2023-07-19 15:20:01 +02:00
Thomas Heartman
6ac430ff2d
docs(#4205): update feature toggle types doc to add lifetime info (#4273)
This change updates the existing feature toggle types document to add
a new `expected lifetime` section. This section explains better what
lifetimes are, where they come from, and that admins can (soon) change
the expected lifetimes for feature toggles.
2023-07-19 11:27:02 +02:00
Thomas Heartman
ea5b26c7a3
Chore: move event types into a separate reference doc. (#4268)
Remove the list from the events API page and instead point to the new
doc.

The new page is listed as "event types" under "unleash concepts"
2023-07-19 11:25:27 +02:00