Skip to content

Commit 9020721

Browse files
committed
Resolved conflict by deleting the file as intended
Signed-off-by: ZihanKuang <zihan_kuang@outlook.com>
2 parents 6d7f053 + 207d4e2 commit 9020721

File tree

7 files changed

+155
-5
lines changed

7 files changed

+155
-5
lines changed

build/meshery-cloud.version

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
v0.8.393
1+
v0.8.394

charts/index.yaml

Lines changed: 25 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -47,6 +47,30 @@ entries:
4747
- charts/kratos-0.39.1.tgz
4848
version: 0.39.1
4949
layer5-cloud:
50+
- apiVersion: v2
51+
appVersion: v0.8.394
52+
created: "2025-08-21T04:32:05.354456246Z"
53+
dependencies:
54+
- condition: postgresql.enabled
55+
name: postgresql
56+
repository: file://charts/postgresql
57+
version: 14.0.1
58+
- condition: kratos.enabled
59+
name: kratos
60+
repository: '@ory'
61+
version: 0.39.1
62+
- condition: ory/hydra.enabled
63+
name: hydra
64+
repository: '@ory'
65+
version: 0.24.2
66+
description: Layer5 Cloud is a collection of services that can be deployed on-premises.
67+
digest: 7a514679533161a2306c9683a021637aeeeac395f2ebe8a99606ae418f82f726
68+
icon: data:image/svg+xml;base64,PHN2ZyBpZD0iTGF5ZXJfMSIgZGF0YS1uYW1lPSJMYXllciAxIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAxNDEuNzMgMTQxLjczIj48dGl0bGU+NS1saWdodC1iZzwvdGl0bGU+PHJlY3QgaWQ9Il9QYXRoXyIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIHg9Ijc5LjYzIiB5PSIyMy45NyIgd2lkdGg9IjM2LjkzIiBoZWlnaHQ9IjE3Ljc5IiBzdHlsZT0iZmlsbDojMDBiMzlmIi8+PHBhdGggaWQ9Il9QYXRoXzIiIGRhdGEtbmFtZT0iJmx0O1BhdGgmZ3Q7IiBkPSJNMTE5LjkyLDgzLjlWNzYuNTNjMC04LjQ5LTcuMTQtMTUuMzctMTUuOTQtMTUuMzdINDQuMzhWNTYuMzFIMjIuNTZ2MjFIOTguMVY4My45WiIgc3R5bGU9ImZpbGw6IzAwYjM5ZiIvPjxwb2x5Z29uIGlkPSJfUGF0aF8zIiBkYXRhLW5hbWU9IiZsdDtQYXRoJmd0OyIgcG9pbnRzPSI0NC4zOCA1MC41IDQ0LjM4IDQxLjc2IDczLjYgNDEuNzYgNzMuNiAyMy45NyAyMi41NiAyMy45NyAyMi41NiA1MC41IDQ0LjM4IDUwLjUiIHN0eWxlPSJmaWxsOiMwMGQzYTkiLz48cGF0aCBpZD0iX1BhdGhfNCIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIGQ9Ik05OC4xLDg5LjYyVjEwMEg2OC44OHYxNy43OWgzNmExNC43NywxNC43NywwLDAsMCwxNS0xNC40OVY4OS42MloiIHN0eWxlPSJmaWxsOiMwMGQzYTkiLz48cGF0aCBpZD0iX1BhdGhfNSIgZGF0YS1uYW1lPSImbHQ7UGF0aCZndDsiIGQ9Ik00Mi42Myw5MC41OFYxMDBINjIuODV2MTcuNzloLTI2YTE0Ljc3LDE0Ljc3LDAsMCwxLTE1LTE0LjQ5VjkwLjU4WiIgc3R5bGU9ImZpbGw6IzAwYjM5ZiIvPjwvc3ZnPg==
69+
name: layer5-cloud
70+
type: application
71+
urls:
72+
- https://docs.layer5.io/charts/layer5-cloud-v0.8.394.tgz
73+
version: v0.8.394
5074
- apiVersion: v2
5175
appVersion: v0.8.393
5276
created: "2025-08-19T16:51:26.198010564Z"
@@ -2439,4 +2463,4 @@ entries:
24392463
urls:
24402464
- https://docs.layer5.io/charts/layer5-cloud-v0.8.235.tgz
24412465
version: v0.8.235
2442-
generated: "2025-08-19T16:51:26.184496586Z"
2466+
generated: "2025-08-21T04:32:05.339893433Z"

charts/layer5-cloud-v0.8.394.tgz

179 KB
Binary file not shown.
Lines changed: 101 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,101 @@
1+
---
2+
title: User Invitations
3+
description: >
4+
Learn how to create custom, secure, and flexible invitations for new members.
5+
weight: 3
6+
categories: [Identity]
7+
tags: [users]
8+
---
9+
10+
The new invitation system gives you precise control over how members join your organization, allowing you to streamline onboarding and enhance security.
11+
12+
You can create highly customized invitations for any scenario, from onboarding specific individuals to launching large-scale community challenges. Each invitation can be configured with expiration dates, usage quotas, and pre-assigned roles, ensuring new members get the right access from the moment they join.
13+
14+
### Key capabilities
15+
16+
The invitation system provides three main areas of control to help you manage access effectively.
17+
18+
#### Create custom invitations for any audience
19+
Tailor each invitation to your specific needs with three flexible modes:
20+
- Precise invitation: Target a single user by specifying their full email address.
21+
- Domain-wide invitation: Onboard an entire organization at once by allowing any email from a specific domain (e.g., `*@layer5.io`).
22+
- Public invitation: Leave the email field blank to create an open link for public events (e.g., Academy Challenge invitations).
23+
24+
{{< alert type="warning" title="Use domain wildcards carefully" >}}
25+
Patterns like `*@company.com` allow anyone with that domain. Verify ownership and pair with roles and teams that grant only necessary access.
26+
{{< /alert >}}
27+
28+
#### Control the invitation lifecycle
29+
Manage access with settings that put you in control:
30+
- Expiration date: Set a specific date and time for an invitation to automatically become invalid.
31+
- Usage quota: Limit the number of times an invitation can be used.
32+
33+
{{< alert type="info" title="Blank means unlimited" >}}
34+
If `expiresAt` is not set, the invitation never expires. If `quota` is not set, the invitation has unlimited uses.
35+
{{< /alert >}}
36+
37+
#### Manage invitations dynamically
38+
Instantly revoke access by switching an invitation's status between enabled and disabled at any time.
39+
40+
<!-- ### How to create an invitation -->
41+
42+
<!-- ### Managing existing invitations -->
43+
44+
### Invitation properties explained
45+
46+
| Property | Description |
47+
| :--- | :--- |
48+
| `name` | A name used to identify the invitation. |
49+
| `description` | Additional information about the invitation's purpose. |
50+
| `emails` | List of email addresses or domain patterns allowed to use the invitation. If empty, the invitation is public. |
51+
| `expiresAt` | Date when the invitation becomes invalid. If not set, it never expires. |
52+
| `quota` | Number that limits how many users can accept the invitation. If not set, there's no usage limit. |
53+
| `roles` | List of roles automatically assigned to new members upon accepting the invitation. |
54+
| `teams` | List of teams new members are automatically added to upon accepting the invitation. |
55+
56+
### Use cases and examples
57+
58+
The invitation system offers flexible configurations to fit a variety of use cases.
59+
60+
#### Scenario 1: Inviting a single team member
61+
62+
- Goal: Provide a new employee with a secure, single-use invitation that grants the correct initial permissions.
63+
- Configuration:
64+
- Email: Set to the new member's specific email.
65+
- Roles: Assign their specific role (e.g., `Developer`).
66+
- Teams: Add them directly to their project team (e.g., `Frontend-Team`).
67+
- Quota: Set to `1` to ensure the link is only used once.
68+
69+
#### Scenario 2: Opening registration for an entire organization
70+
71+
- Goal: Allow all employees from your company to join using their corporate email without individual invitations.
72+
- Configuration:
73+
- Email: Use a domain pattern to cover all employees.
74+
- Roles: Assign a default role for all new members.
75+
76+
#### Scenario 3: Launching a community challenge
77+
78+
- Goal: Create a public signup link for a limited-time community event with a maximum number of participants.
79+
- Configuration:
80+
- Email: Leave blank for public access.
81+
- Name: Give it a clear name like "Layer5 Challenge 2025".
82+
- Expiration date: Set to the date and time the challenge registration closes.
83+
- Quota: Set to the maximum number of participants (e.g., `100`).
84+
- Roles: Assign a temporary role like `Learner`.
85+
86+
{{< alert type="info" title="Managing learner costs" >}}
87+
The available seats for learners are determined by your organization's subscription plan. Please be mindful of your subscription to manage costs effectively.
88+
{{< /alert >}}
89+
90+
#### Scenario 4: Granting temporary partner access
91+
92+
- Goal: Give an external partner secure access to specific resources only for the duration of a project.
93+
- Configuration:
94+
- Email: Use the partner's domain (e.g., `*@partner.com`).
95+
- Teams: Add them only to a shared project team (e.g., `Project-X-Shared`).
96+
- Expiration date: Set to the project's end date to revoke access.
97+
- Description: Add a note for internal reference, such as "Temporary access for Project X contractors".
98+
99+
{{< alert type="warning" title="Public invitations" >}}
100+
Public links can be forwarded broadly. Always set an expiration date and a quota.
101+
{{< /alert >}}
Lines changed: 25 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,25 @@
1+
---
2+
title: v0.8.394
3+
date: 2025-08-21T04:31:22Z
4+
tag: v0.8.394
5+
prerelease: false
6+
toc_hide: true
7+
---
8+
9+
## 🖥 Cloud UI
10+
11+
- Add fine grained invitations @aabidsofi19 (#3983)
12+
13+
## 💻 Server
14+
15+
- Add fine grained invitations @aabidsofi19 (#3983)
16+
17+
## 🦴 Infrastructure
18+
19+
- Add fine grained invitations @aabidsofi19 (#3983)
20+
21+
### 👨🏽‍💻 Contributors
22+
23+
Thank you to our contributors for making this release possible:
24+
@aabidsofi19 and @l5io
25+

data/feature_data.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -628,7 +628,7 @@
628628
"categoryOrder": "add-on",
629629
"category": "Academy",
630630
"functionOrder": "",
631-
"function": "Academy Theoretical Learner",
631+
"function": "Academy Theoretical Learning",
632632
"feature": "A comprehensive learning management system for creators and instructors on how to build, manage, and extend educational content like learning paths, challenges, and certifications.",
633633
"subscriptionTier": "Enterprise",
634634
"comparisonTiers": {
@@ -644,7 +644,7 @@
644644
"categoryOrder": "add-on",
645645
"category": "Academy",
646646
"functionOrder": "",
647-
"function": "Academy Hands-on Learner",
647+
"function": "Academy Practical Learning",
648648
"feature": "An inclusive, collaborative, hands-on learning environment for students.",
649649
"subscriptionTier": "Enterprise",
650650
"comparisonTiers": {

static/data/csv/pricing-list.csv

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
<!DOCTYPE html><html lang="en"><head><meta name="description" content="Web word processing, presentations and spreadsheets"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0"><link rel="shortcut icon" href="//docs.google.com/favicon.ico"><title>Page Not Found</title><meta name="referrer" content="origin"><link href="//fonts.googleapis.com/css?family=Product+Sans" rel="stylesheet" type="text/css" nonce="4NECZP6Nq9hGSgu-BPiPRw"><style nonce="4NECZP6Nq9hGSgu-BPiPRw">.goog-inline-block{position:relative;display:-moz-inline-box;display:inline-block}* html .goog-inline-block{display:inline}*:first-child+html .goog-inline-block{display:inline}#drive-logo{margin:18px 0;position:absolute;white-space:nowrap}.docs-drivelogo-img{background-image:url(//ssl.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_116x41dp.png);-webkit-background-size:116px 41px;background-size:116px 41px;display:inline-block;height:41px;vertical-align:bottom;width:116px}.docs-drivelogo-text{color:#000;display:inline-block;opacity:.54;text-decoration:none;font-family:"Product Sans",Arial,Helvetica,sans-serif;font-size:32px;text-rendering:optimizeLegibility;position:relative;top:-6px;left:-7px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (-webkit-min-device-pixel-ratio:1.5),(min-resolution:144dpi){.docs-drivelogo-img{background-image:url(//ssl.gstatic.com/images/branding/googlelogo/2x/googlelogo_color_116x41dp.png)}}sentinel{}</style><style type="text/css" nonce="4NECZP6Nq9hGSgu-BPiPRw">body {background-color: #fff; font-family: Arial,sans-serif; font-size: 13px; margin: 0; padding: 0;}a, a:link, a:visited {color: #112ABB;}</style><style type="text/css" nonce="4NECZP6Nq9hGSgu-BPiPRw">.errorMessage {font-size: 12pt; font-weight: bold; line-height: 150%;}</style></head><body><div id="outerContainer"><div id="innerContainer"><div style="position: absolute; top: -80px;"><div style="margin: 18px 0; position: absolute; white-space: nowrap;"><a href="//support.google.com/docs/"><img height="35px" src="//ssl.gstatic.com/docs/common/product/spreadsheets_lockup2.png" alt="Google logo"/></a></div></div><div align="center"><p class="errorMessage" style="padding-top: 50px">Sorry, unable to open the file at this time.</p><p> Please check the address and try again. </p><div style="background: #F0F6FF; border: 1px solid black; margin-top: 35px; padding: 10px 125px; width: 300px;"><p><strong>Get stuff done with Google Drive</strong></p><p>Apps in Google Drive make it easy to create, store and share online documents, spreadsheets, presentations and more.</p><p>Learn more at <a href="https://drive.google.com/start/apps">drive.google.com/start/apps</a>.</p></div></div></div></div></body><style nonce="4NECZP6Nq9hGSgu-BPiPRw">html {height: 100%; overflow: auto;}body {height: 100%; overflow: auto;}#outerContainer {margin: auto; max-width: 750px;}#innerContainer {margin-bottom: 20px; margin-left: 40px; margin-right: 40px; margin-top: 80px; position: relative;}</style></html>
1+
<!DOCTYPE html><html lang="en"><head><meta name="description" content="Web word processing, presentations and spreadsheets"><meta name="viewport" content="width=device-width, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0, user-scalable=0"><link rel="shortcut icon" href="//docs.google.com/favicon.ico"><title>Page Not Found</title><meta name="referrer" content="origin"><link href="//fonts.googleapis.com/css?family=Product+Sans" rel="stylesheet" type="text/css" nonce="MgxW3y_twGKhU7lMwf7ImA"><style nonce="MgxW3y_twGKhU7lMwf7ImA">.goog-inline-block{position:relative;display:-moz-inline-box;display:inline-block}* html .goog-inline-block{display:inline}*:first-child+html .goog-inline-block{display:inline}#drive-logo{margin:18px 0;position:absolute;white-space:nowrap}.docs-drivelogo-img{background-image:url(//ssl.gstatic.com/images/branding/googlelogo/1x/googlelogo_color_116x41dp.png);-webkit-background-size:116px 41px;background-size:116px 41px;display:inline-block;height:41px;vertical-align:bottom;width:116px}.docs-drivelogo-text{color:#000;display:inline-block;opacity:.54;text-decoration:none;font-family:"Product Sans",Arial,Helvetica,sans-serif;font-size:32px;text-rendering:optimizeLegibility;position:relative;top:-6px;left:-7px;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}@media (-webkit-min-device-pixel-ratio:1.5),(min-resolution:144dpi){.docs-drivelogo-img{background-image:url(//ssl.gstatic.com/images/branding/googlelogo/2x/googlelogo_color_116x41dp.png)}}sentinel{}</style><style type="text/css" nonce="MgxW3y_twGKhU7lMwf7ImA">body {background-color: #fff; font-family: Arial,sans-serif; font-size: 13px; margin: 0; padding: 0;}a, a:link, a:visited {color: #112ABB;}</style><style type="text/css" nonce="MgxW3y_twGKhU7lMwf7ImA">.errorMessage {font-size: 12pt; font-weight: bold; line-height: 150%;}</style></head><body><div id="outerContainer"><div id="innerContainer"><div style="position: absolute; top: -80px;"><div style="margin: 18px 0; position: absolute; white-space: nowrap;"><a href="//support.google.com/docs/"><img height="35px" src="//ssl.gstatic.com/docs/common/product/spreadsheets_lockup2.png" alt="Google logo"/></a></div></div><div align="center"><p class="errorMessage" style="padding-top: 50px">Sorry, unable to open the file at this time.</p><p> Please check the address and try again. </p><div style="background: #F0F6FF; border: 1px solid black; margin-top: 35px; padding: 10px 125px; width: 300px;"><p><strong>Get stuff done with Google Drive</strong></p><p>Apps in Google Drive make it easy to create, store and share online documents, spreadsheets, presentations and more.</p><p>Learn more at <a href="https://drive.google.com/start/apps">drive.google.com/start/apps</a>.</p></div></div></div></div></body><style nonce="MgxW3y_twGKhU7lMwf7ImA">html {height: 100%; overflow: auto;}body {height: 100%; overflow: auto;}#outerContainer {margin: auto; max-width: 750px;}#innerContainer {margin-bottom: 20px; margin-left: 40px; margin-right: 40px; margin-top: 80px; position: relative;}</style></html>

0 commit comments

Comments
 (0)