diff --git a/website/docs/how-to/how-to-create-and-assign-custom-project-roles.md b/website/docs/how-to/how-to-create-and-assign-custom-project-roles.md
index fe7f6d2f64..70a9f0ebe7 100644
--- a/website/docs/how-to/how-to-create-and-assign-custom-project-roles.md
+++ b/website/docs/how-to/how-to-create-and-assign-custom-project-roles.md
@@ -1,18 +1,24 @@
---
title: How to create and assign custom project roles
---
+import VideoContent from '@site/src/components/VideoContent.jsx'
+
:::info availability
Custom project roles were introduced in **Unleash 4.6** and are only available in Unleash Enterprise.
:::
-This guide takes you through [how to create](#creating-custom-project-roles "how to create custom project roles") and [assign](#assigning-custom-project-roles "how to assign custom project roles") [custom project roles](../user_guide/rbac.md#custom-project-roles).
+
+This guide takes you through [how to create](#creating-custom-project-roles "how to create custom project roles") and [assign](#assigning-custom-project-roles "how to assign custom project roles") [custom project roles](../user_guide/rbac.md#custom-project-roles). Custom project roles allow you to fine-tune access rights and permissions within your projects.
+
+
+
+The guides on this page are also available in video format! Does a minute or two of watching someone walk through the steps sound better to you than following steps with static screenshots? If so, check out these video walkthroughs instead 🍿
+
+
## Creating custom project roles
-
-It takes about three steps to create custom project roles. You can either follow the steps in writing below or watch [the accompanying video](#video-create).
-
-To create custom project roles:
+It takes about three steps to create custom project roles:
1. Navigate to the custom project roles page by using the admin menu (the gear symbol) and navigating to users.
![A visual representation of the current step: the Unleash Admin UI with the steps highlighted.](/img/create-cpr-step-1.png)
@@ -23,17 +29,9 @@ To create custom project roles:
4. Give the role a name, an optional description, and the set of permissions you'd like it to have. For a full overview of all the options, consult the [custom project roles reference documentation](../user_guide/rbac.md#custom-project-roles).
![The project role creation form filled in with details for a "developer" role. To the left is the equivalent cURL command you could run if you wanted to use the API instead of the form.](/img/create-cpr-step-4.png)
-### How to create custom project roles (video) {#video-create}
-
-Here's a video recording with accompanying explanations of how to create custom project roles:
-
-
-
-
-
## Assigning custom project roles
-Custom project role creation is a pretty straightforward process and requires around three steps, outlined below. There's also a [video version](#video-assign) available.
+Custom project role creation is a pretty straightforward process and requires around three steps, outlined below.
To assign a custom project role to a user:
1. Navigate to the project you want to assign the user a role in.
@@ -45,9 +43,3 @@ To assign a custom project role to a user:
![A list of users with access to the current project. To the right of each user is a dropdown input labeled role.](/img/assign-cpr-step-3a.png)
- If the user _hasn't_ been added to the project, add them via the 'add user' form. Select the role you want to give them from the role field.
![Adding a user to a project. The add user form is filled out with data for an "Alexis". The Role input is open and the custom "Developer" role is highlighted.](/img/assign-cpr-step-3b.png)
-
-### How to assign custom project roles (video) {#video-assign}
-
-Here's a video recording with accompanying explanations of how to assign custom project roles:
-
-
diff --git a/website/docusaurus.config.js b/website/docusaurus.config.js
index b177081d1d..148539ac49 100644
--- a/website/docusaurus.config.js
+++ b/website/docusaurus.config.js
@@ -44,7 +44,14 @@ module.exports = {
],
},
prism: {
- additionalLanguages: ['java', 'swift', 'ruby', 'csharp', 'kotlin', 'php'],
+ additionalLanguages: [
+ 'java',
+ 'swift',
+ 'ruby',
+ 'csharp',
+ 'kotlin',
+ 'php',
+ ],
},
footer: {
style: 'dark',
@@ -71,13 +78,11 @@ module.exports = {
items: [
{
label: 'Stack Overflow',
- href:
- 'https://stackoverflow.com/questions/tagged/unleash',
+ href: 'https://stackoverflow.com/questions/tagged/unleash',
},
{
label: 'Slack',
- href:
- 'https://join.slack.com/t/unleash-community/shared_invite/zt-8b6l1uut-LL67kLpIXm9bcN3~6RVaRQ',
+ href: 'https://join.slack.com/t/unleash-community/shared_invite/zt-8b6l1uut-LL67kLpIXm9bcN3~6RVaRQ',
},
{
label: 'Twitter',
@@ -105,8 +110,11 @@ module.exports = {
'https://github.com/Unleash/unleash/edit/main/website/',
routeBasePath: '/',
remarkPlugins: [
- [require('@docusaurus/remark-plugin-npm2yarn'), {sync: true}]
- ]
+ [
+ require('@docusaurus/remark-plugin-npm2yarn'),
+ { sync: true },
+ ],
+ ],
},
theme: {
customCss: require.resolve('./src/css/custom.css'),
@@ -153,7 +161,7 @@ module.exports = {
from: '/user_guide/control_rollout',
},
],
- createRedirects: function(toPath) {
+ createRedirects: function (toPath) {
if (
toPath.indexOf('/docs/') === -1 &&
toPath.indexOf('index.html') === -1
diff --git a/website/src/components/VideoContent.jsx b/website/src/components/VideoContent.jsx
new file mode 100644
index 0000000000..fa79262296
--- /dev/null
+++ b/website/src/components/VideoContent.jsx
@@ -0,0 +1,52 @@
+import React from 'react';
+import Admonition from '@theme/Admonition';
+
+const icons = {
+ tip: (
+
+ ),
+};
+
+const Component = ({ title = 'video content', videoUrls, children }) => {
+ return (
+
+
+ {children}
+
+
+
+ {videoUrls ? (
+ videoUrls.map((url) => (
+
+ ))
+ ) : (
+
+ You need to provide YouTube video URLs for this
+ component to work properly.
+
+ )}
+