From 1486cdab52bb43780c8ff84b5b8acdb2214f1f86 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ivar=20Conradi=20=C3=98sthus?= Date: Fri, 5 Feb 2021 14:19:04 +0100 Subject: [PATCH] fix: add docs for addons --- docs/activation-strategies.md | 8 +++---- docs/addons.md | 8 ------- docs/addons/addons.md | 16 +++++++++++++ docs/addons/jira-comment.md | 21 ---------------- docs/addons/jira-commenter.md | 38 +++++++++++++++++++++++++++++ docs/addons/slack.md | 38 +++++++++++++++++++++++++++++ docs/addons/webhook.md | 40 +++++++++++++++++++++++++++++-- docs/assets/jira_addon_tags.png | Bin 0 -> 33538 bytes docs/assets/slack_addon_tags.png | Bin 0 -> 44109 bytes website/i18n/en.json | 13 +++++++--- website/sidebars.json | 7 +++++- 11 files changed, 150 insertions(+), 39 deletions(-) delete mode 100644 docs/addons.md create mode 100644 docs/addons/addons.md delete mode 100644 docs/addons/jira-comment.md create mode 100644 docs/addons/jira-commenter.md create mode 100644 docs/addons/slack.md create mode 100644 docs/assets/jira_addon_tags.png create mode 100644 docs/assets/slack_addon_tags.png diff --git a/docs/activation-strategies.md b/docs/activation-strategies.md index d2b28aa58c..8e034ac756 100644 --- a/docs/activation-strategies.md +++ b/docs/activation-strategies.md @@ -29,15 +29,15 @@ A flexible rollout strategy which combines all gradual rollout strategies in to - **stickiness** is used to define how we guarantee consistency for gradual rollout. The same userId and the same rollout percentage should give predictable results. Configuration that should be supported: - **default** - Unleash chooses the first value present on the context in defined order userId, sessionId, random. - - **userId** - guaranteed to be sticky on userId. If userId not present the behaviour would be false - - **sessionId** - guaranteed to be sticky on sessionId. If sessionId not present the behaviour would be false. + - **userId** - guaranteed to be sticky on userId. If userId not present the behavior would be false + - **sessionId** - guaranteed to be sticky on sessionId. If sessionId not present the behavior would be false. - **random** - no stickiness guaranteed. For every isEnabled call it will yield a random true/false based on the selected rollout percentage. -- **groupId** is used to ensure that different toggles will **hash differently** for the same user. The groupId defaults to _feature toggle name_, but is overridable by the user to _correlate rollout_ of multiple feature toggles. +- **groupId** is used to ensure that different toggles will **hash differently** for the same user. The groupId defaults to _feature toggle name_, but the use can override it to _correlate rollout_ of multiple feature toggles. - **rollout** The percentage (0-100) you want to enable the feature toggle for. ## gradualRolloutUserId -The `gradualRolloutUserId` strategy gradually activates a feature toggle for logged in users. Stickiness is based on the user ID. The strategy guarantees that the same user gets the same experience every time across devices. It also assures that a user which is among the first 10% will also be among the first 20% of the users. That way, we ensure the users get the same experience, even if we gradually increase the number of users exposed to a particular feature. To achieve this, we hash the user ID and normalise the hash value to a number between 1 and 100 with a simple modulo operator. +The `gradualRolloutUserId` strategy gradually activates a feature toggle for logged in users. Stickiness is based on the user ID. The strategy guarantees that the same user gets the same experience every time across devices. It also assures that a user which is among the first 10% will also be among the first 20% of the users. That way, we ensure the users get the same experience, even if we gradually increase the number of users exposed to a particular feature. To achieve this, we hash the user ID and normalize the hash value to a number between 1 and 100 with a simple modulo operator. ![hash_and_normalise](assets/hash_and_normalise.png) diff --git a/docs/addons.md b/docs/addons.md deleted file mode 100644 index 5170593c87..0000000000 --- a/docs/addons.md +++ /dev/null @@ -1,8 +0,0 @@ ---- -id: addons -title: Unleash Addons ---- - -> This feature was introduced in _Unleash v3.11.0_. - -Unleash Addons allows you to extend Unleash with new functionality diff --git a/docs/addons/addons.md b/docs/addons/addons.md new file mode 100644 index 0000000000..67e6285708 --- /dev/null +++ b/docs/addons/addons.md @@ -0,0 +1,16 @@ +--- +id: index +title: Addons Introduction +--- + +> This feature was introduced in _Unleash v3.11.0_. + +Unleash Addons allows you to extend Unleash with new functionality. Currently addons allow you to listen to changes in Unleash and trigger updates in other systems, typical via a WebHook. + +Currently Unleash support the following Addons out of the box: + +- [Webhook](./webhook) - A generic way to post messages from Unleash to third party services. +- [Slack](./slack) - Allows Unleash to post updates to Slack. +- [Jira Commenter](./jira-commenter) - Allows Unleash to post comments to jira issues (beta). + +In future releases we plan to support community built addons. diff --git a/docs/addons/jira-comment.md b/docs/addons/jira-comment.md deleted file mode 100644 index 21c0787265..0000000000 --- a/docs/addons/jira-comment.md +++ /dev/null @@ -1,21 +0,0 @@ ---- -id: jira-comment -title: Unleash Jira commenter addon ---- - -> This feature was introduced in _Unleash v3.11.0_. - -Enables commenting on issues from unleash when toggles are updated/revived/archived/created. - -## Configuration - -- When configuring an instance of the Jira commenter plugin you'll need the following - - - JIRA base url - e.g. https://mycompany.atlassian.net. - - JIRA username - the username of the user the plugin should comment as. - - JIRA api token - an api token for the user the plugin should comment as. - - If you're running Atlassian cloud - it can be added by visiting: https://id.atlassian.com/manage-profile/security/api-tokens when logged in as the user the plugin should comment as. - -- After the instance is configured, you can now tag your feature toggles with tags of type `jira`. -- The value of the tag should be in normal JIRA issue format (PROJECTKEY-ISSUENUMBER). -- Once a toggle has been tagged with a jira tag, all updates to the toggle will be added as a comment on the issue stored in the tag. diff --git a/docs/addons/jira-commenter.md b/docs/addons/jira-commenter.md new file mode 100644 index 0000000000..6641a1ad10 --- /dev/null +++ b/docs/addons/jira-commenter.md @@ -0,0 +1,38 @@ +--- +id: jira-commenter +title: Jira commenter +--- + +> This feature was introduced in _Unleash v3.11.0_. + +Enables commenting on issues from unleash when toggles are updated/revived/archived/created. + +## Configuration + +#### Events + +You can choose to trigger updates for the following events (we might add more event types in the future): + +- feature-created +- feature-updated +- feature-archived +- feature-revived + +#### Parameters + +Unleash Jira Commenter addons takes the following parameters. + +- **JIRA base url** - e.g. https://mycompany.atlassian.net. +- **JIRA username** - the username of the user the plugin should comment as. +- **JIRA api token** - an api token for the user the plugin should comment as. + +An api token can be configured using https://id.atlassian.com/manage-profile/security/api-tokens when logged in as the users you'd like the plugin to make the comment as. + +#### Tags + +- The Jira commenter addon also defined the Tag Type "jira". You may use this tag to tell the plugin which issue Unleash should post updates to. +- The value of the tag should be in normal JIRA issue format (PROJECTKEY-ISSUENUMBER). + +![Jira tags](../assets/jira_addon_tags.png) + +In the picture you can see we have defined one Jira tag for the `demo` toggle. In this example, the issue **UC-1** would receive updates then something happens to this toggle diff --git a/docs/addons/slack.md b/docs/addons/slack.md new file mode 100644 index 0000000000..4d5ba1ef92 --- /dev/null +++ b/docs/addons/slack.md @@ -0,0 +1,38 @@ +--- +id: slack +title: Slack +--- + +> This feature was introduced in _Unleash v3.11.0_. + +The Slack addon allows Unleash to post Updates when a feature toggle is updated. To set up Slack, you need to configure an incoming Slack webhook URL. You can follow [Sending messages using Incoming Webhooks](https://api.slack.com/incoming-webhooks) on how to do that. You can also choose to [create a slack app for Unleash](https://api.slack.com/apps), which will provide you with additional functionality to control how Unleash communicates messages on your Slack workspace. + +The Slack addon will perform a single retry if the HTTP POST against the Slack Webhook URL fails (either a 50x or network error). Duplicate events may happen,m and you should never assume events always comes in order. + +## Configuration + +#### Events + +You can choose to trigger updates for the following events (we might add more event types in the future): + +- feature-created +- feature-updated +- feature-archived +- feature-revived + +#### Parameters + +Unleash Slack addon takes the following parameters. + +- **Slack Webhook URL** - This is the only required property. If you are using a Slack Application you must also make sure your application is allowed to post to the channel you want to post to. +- **Username** - Used to override the username used to post the update to a slack channel. +- **Emoji Icon** - Used to override the emoji icon used to post the update to a slack channel. +- Default channel - Where to post the message if the feature toggles has not overriden the channel via the slack tags. + +#### Tags + +The Slack addon also defined the Tag type "slack". You may use this tag to override which slack channel Unleash should post updates to for this feature toggle. + +![Slack Tags](../assets/slack_addon_tags.png) + +In the picture you can see we have defined two slack tags for the "Demo" toggle. In this example Unleash will post updates to the **#notifications** and **#random** channel. diff --git a/docs/addons/webhook.md b/docs/addons/webhook.md index 8f600876bd..b939b3c438 100644 --- a/docs/addons/webhook.md +++ b/docs/addons/webhook.md @@ -1,8 +1,44 @@ --- id: webhook -title: Unleash Webhook addon +title: Webhook --- > This feature was introduced in _Unleash v3.11.0_. -Unleash Addons allows you to extend Unleash with new functionality +The Webhook Addon introduces a generic way to post messages from Unleash to third party services. Unleash allows you to define a webhook which listens changes in Unleash and post them to a third party services. + +The webhook will perform a single retry if the HTTP POST call fails (either a 50x or network error). Duplicate events may happen,m and you should never assume events always comes in order. + +## Configuration + +#### Events + +You can choose to trigger updates for the following events (we might add more event types in the future): + +- feature-created +- feature-updated +- feature-archived +- feature-revived + +#### Parameters + +Unleash Webhook addon takes the following parameters. + +**Webhook URL** This is the only required property. If you are using a Slack Application you must also make sure your application is allowed to post the channel you want to post to. + +**Content-Type** Used to set the content-type header used when unleash performs a HTTP POST to the defined endpoint. + +**Body template** Used to override the body template used by Unleash when performing the HTTP POST. You may format you message using a [Mustache template](https://mustache.github.io). You will have the [Unleash event format](/docs/api/admin/events) available in the rendering context. + +Example: + +```mustache +{ + "event": "{{event.type}}", + "createdBy": "{{event.createdBy}}", + "featureToggle": "{{event.data.name}}", + "timestamp": "{{event.data.createdAt}}" +} +``` + +If you don't specify anything Unleash will use the [Unleash event format](/docs/api/admin/events). diff --git a/docs/assets/jira_addon_tags.png b/docs/assets/jira_addon_tags.png new file mode 100644 index 0000000000000000000000000000000000000000..b0e85ad08b357225a6e9bcb05c8e1c4c46e331f3 GIT binary patch literal 33538 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 literal 0 HcmV?d00001 diff --git a/docs/assets/slack_addon_tags.png b/docs/assets/slack_addon_tags.png new file mode 100644 index 0000000000000000000000000000000000000000..101a095b23cf2d8cdf0f153ca44c1d10a81f9b4b GIT binary patch literal 44109 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 literal 0 HcmV?d00001 diff --git a/website/i18n/en.json b/website/i18n/en.json index f08436b43a..d2bac9eb47 100644 --- a/website/i18n/en.json +++ b/website/i18n/en.json @@ -8,11 +8,17 @@ "activation_strategy": { "title": "Activation Strategies" }, - "addons": { - "title": "Unleash Addons" + "addons/index": { + "title": "Addons Introduction" + }, + "addons/jira-commenter": { + "title": "Jira commenter" + }, + "addons/slack": { + "title": "Slack" }, "addons/webhook": { - "title": "Unleash Webhook addon" + "title": "Webhook" }, "api/admin/addons": { "title": "/api/admin/addons" @@ -121,6 +127,7 @@ }, "categories": { "User Documentation": "User Documentation", + "Addons": "Addons", "Developer Guide": "Developer Guide", "Guides": "Guides", "Client": "Client", diff --git a/website/sidebars.json b/website/sidebars.json index 93ee1e6b6a..181695243d 100644 --- a/website/sidebars.json +++ b/website/sidebars.json @@ -9,10 +9,15 @@ "securing_unleash", "unleash_context", "activation_strategy", - "addons", "client_specification", "migration_guide" ], + "Addons": [ + "addons/index", + "addons/webhook", + "addons/slack", + "addons/jira-commenter" + ], "Developer Guide": [ "developer_guide", "database_schema",