Skip to content

Commit 974d1ce

Browse files
committed
Merge branch 'main' into remove-jira-integration
2 parents 2e2388c + c77281e commit 974d1ce

File tree

96 files changed

+13917
-465
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

96 files changed

+13917
-465
lines changed

api/helm-app/applist.pb.go

+407-387
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

api/helm-app/applist.proto

+2
Original file line numberDiff line numberDiff line change
@@ -128,6 +128,8 @@ message ResourceNode {
128128
repeated InfoItem info = 13;
129129
string createdAt = 14;
130130
repeated int64 port = 15;
131+
bool isHook = 16;
132+
string hookType = 17;
131133
}
132134

133135
message InfoItem {

docs/SUMMARY.md

+10-2
Original file line numberDiff line numberDiff line change
@@ -25,14 +25,22 @@
2525
* [Container/OCI Registry](user-guide/global-configurations/container-registries.md)
2626
* [Chart Repositories](user-guide/global-configurations/chart-repo.md)
2727
* [Custom Charts](user-guide/global-configurations/custom-charts.md)
28-
* [SSO Login Services](user-guide/global-configurations/sso-login.md)
29-
* [Example - Okta SSO](user-guide/global-configurations/okta.md)
3028
* [Authorization](user-guide/global-configurations/authorization/README.md)
29+
* [SSO Login Services](user-guide/global-configurations/sso-login.md)
30+
* [Google](user-guide/global-configurations/authorization/sso/google.md)
31+
* [GitHub](user-guide/global-configurations/authorization/sso/github.md)
32+
* [GitLab](user-guide/global-configurations/authorization/sso/gitlab.md)
33+
* [Microsoft](user-guide/global-configurations/authorization/sso/microsoft.md)
34+
* [LDAP](user-guide/global-configurations/authorization/sso/ldap.md)
35+
* [OIDC](user-guide/global-configurations/authorization/sso/oidc.md)
36+
* [OpenShift](user-guide/global-configurations/authorization/sso/openshift.md)
37+
* [Example - Okta SSO](user-guide/global-configurations/okta.md)
3138
* [User Permissions](user-guide/global-configurations/authorization/user-access.md)
3239
* [Permission Groups](user-guide/global-configurations/authorization/permission-groups.md)
3340
* [API Tokens](user-guide/global-configurations/authorization/api-tokens.md)
3441
* [Notifications](user-guide/global-configurations/manage-notification.md)
3542
* [External Links](user-guide/global-configurations/external-links.md)
43+
* [Catalog Framework](user-guide/global-configurations/catalog-framework.md)
3644
* [Scoped Variables](user-guide/global-configurations/scoped-variables.md)
3745
* [Tags Policy](user-guide/global-configurations/tags-policy.md)
3846
* [Filter Condition](user-guide/global-configurations/filter-condition.md)

docs/user-guide/global-configurations/authorization/permission-groups.md

+54-23
Original file line numberDiff line numberDiff line change
@@ -4,37 +4,42 @@ Using the `Permission groups`, you can assign a user to a particular group and a
44

55
The advantage of the `Permission groups` is to define a set of privileges like create, edit, or delete for the given set of resources that can be shared among the users within the group.
66

7-
**Note**: The [User permissions](https://docs.devtron.ai/global-configurations/authorization/user-access) section for `Specific permissions` contains a drop-down list of all existing groups for which a user has an access. This is an optional field and more than one groups can be selected for a user.
7+
{% hint style="info" %}
8+
The [User permissions](../../global-configurations/authorization/user-access) section for `Specific permissions` contains a drop-down list of all existing groups for which a user has an access. This is an optional field and more than one groups can be selected for a user.
9+
{% endhint %}
810

911
## Add Group
1012

11-
To add a group, go to the `Authorization > Permissions groups` section of `Global Configurations`. Click **Add group**.
13+
Go to **Global Configurations****Authorization****Permissions groups** **Add group**.
1214

1315
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-1.png)
1416

1517
Enter the `Group Name` and `Description`.
1618

1719
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-2.png)
1820

19-
Assign the permissions of groups to users to manage access for:
21+
You can either grant [super-admin](../../global-configurations/authorization/user-access.md#role-based-access-levels) permission to a user group or specific permissions to manage access for:
2022

2123
* [Devtron Apps](#devtron-apps-permissions)
2224
* [Helm Apps](#helm-apps-permissions)
25+
* [Jobs](#jobs)
2326
* [Kubernetes Resources](#kubernetes-resources-permissions)
2427
* [Chart Groups](#chart-group-permissions)
2528

2629
### Devtron Apps Permissions
2730

2831
In `Devtron Apps` option, you can provide access to a group to manage permission for custom apps created using Devtron.
2932

30-
**Note**: The `Devtron Apps` option will be available only if you install [CI/CD integration](https://docs.devtron.ai/usage/integrations/build-and-deploy-ci-cd).
33+
{% hint style="info" %}
34+
The `Devtron Apps` option will be available only if you install [CI/CD integration](https://docs.devtron.ai/usage/integrations/build-and-deploy-ci-cd).
35+
{% endhint %}
3136

3237
Provide the information in the following fields:
3338

34-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-devtron-apps.jpg)
39+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-devtron-apps-v2.jpg)
3540

3641

37-
| Registry Type | Credentials |
42+
| Dropdown | Description |
3843
| --- | --- |
3944
| **Project** | Select a project from the drop-down list to which you want to give permission to the group. You can select only one project at a time.<br>Note: If you want to select more than one project, then click `Add row`.</br> |
4045
| **Environment** | Select the specific environment or all environments from the drop-down list.<br>Note: If you select `All environments` option, then a user gets access to all the current environments including any new environment which gets associated with the application later.</br> |
@@ -43,17 +48,17 @@ Provide the information in the following fields:
4348

4449
You can add multiple rows for `Devtron Apps` permission.
4550

46-
Once you have finished assigning the appropriate permissions for the groups, Click `Save`.
51+
Once you have finished assigning the appropriate permissions for the groups, Click **Save**.
4752

4853
### Helm Apps Permissions
4954

5055
In `Helm Apps` option, you can provide access to a group to manage permission for Helm apps deployed from Devtron or outside Devtron.
5156

5257
Provide the information in the following fields:
5358

54-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-groups-helm-apps.jpg)
59+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-groups-helm-apps-v2.jpg)
5560

56-
| Registry Type | Credentials |
61+
| Dropdown | Description |
5762
| --- | --- |
5863
| **Project** | Select a project from the drop-down list to which you want to give permission to the group. You can select only one project at a time.<br>Note: If you want to select more than one project, then click `Add row`.</br> |
5964
| **Environment or cluster/namespace** | Select the specific environment or `all existing environments in default cluster` from the drop-down list.<br>Note: If you select `all existing + future environments in default cluster` option, then a user gets access to all the current environments including any new environment which gets associated with the application later.</br> |
@@ -62,25 +67,47 @@ Provide the information in the following fields:
6267

6368
You can add multiple rows for Devtron app permission.
6469

65-
Once you have finished assigning the appropriate permissions for the groups, Click `Save`.
70+
Once you have finished assigning the appropriate permissions for the groups, Click **Save**.
71+
72+
### Jobs
73+
74+
In `Jobs` option, you can provide access to a group to manage permission for jobs created using Devtron.
75+
76+
Provide the information in the following fields:
77+
78+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-groups-jobs-v2.jpg)
79+
80+
| Dropdown | Description |
81+
| --- | --- |
82+
| **Project** | Select a project from the drop-down list to which you want to give permission to the group. You can select only one project at a time.<br>Note: If you want to select more than one project, then click `Add row`.</br> |
83+
| **Job Name** | Select the specific job name or all jobs from the drop-down list.<br>Note: If you select `All Jobs` option, then the user gets access to all the current jobs including any new job which gets associated with the project later.</br> |
84+
| **Workflow** | Select the specific workflow or all workflows from the drop-down list.<br>Note: If you select `All Workflows` option, then the user gets access to all the current workflows including any new workflow which gets associated with the project later.</br> |
85+
| **Environment** | Select the specific environment or all environments from the drop-down list.<br>Note: If you select `All environments` option, then the user gets access to all the current environments including any new environment which gets associated with the project later.</br> |
86+
| **Role** | Select one of the [roles](#role-based-access-levels) to which you want to give permission to the user:<ul><li>`View only`</li></ul> <ul><li>`Run job`</li></ul><ul><li>`Admin`</li></ul> |
87+
88+
You can add multiple rows for `Jobs` permission.
89+
90+
Once you have finished assigning the appropriate permissions for the groups, Click **Save**.
6691

6792

6893
### Kubernetes Resources Permissions
6994

7095
In `Kubernetes Resources` option, you can provide permission to view, inspect, manage, and delete resources in your clusters from [Kubernetes Resource Browser](https://docs.devtron.ai/usage/resource-browser) page in Devtron. You can also create resources from the `Kubernetes Resource Browser` page.
7196

72-
**Note**: Only super admin users will be able to see `Kubernetes Resources` tab and provide permission to other users to access `Resource Browser`.
97+
{% hint style="info" %}
98+
Only super admin users will be able to see `Kubernetes Resources` tab and provide permission to other users to access `Resource Browser`.
99+
{% endhint %}
73100

74101
To provide Kubernetes resource permission, click `Add permission`.
75102

76-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/kubernetes-resources-permission-group.jpg)
103+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/kubernetes-resources-permission-group-v2.jpg)
77104

78105
On the `Kubernetes resource permission`, provide the information in the following fields:
79106

80107

81-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/user-access/user-permission/kubernetes-resource-permission-page-latest.jpg)
108+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/user-access/user-permission/kubernetes-resources-permission-page-v2.jpg)
82109

83-
| Registry Type | Credentials |
110+
| Dropdown | Description |
84111
| --- | --- |
85112
| **Cluster** | Select a cluster from the drop-down list to which you want to give permission to the user. You can select only one cluster at a time.<br>Note: To add another cluster, then click `Add another`.</br> |
86113
| **Namespace** | Select the namespace from the drop-down list. |
@@ -91,39 +118,43 @@ On the `Kubernetes resource permission`, provide the information in the followin
91118

92119
You can add multiple rows for Kubernetes resource permission.
93120

94-
Once you have finished assigning the appropriate permissions for the groups, Click `Save`.
121+
Once you have finished assigning the appropriate permissions for the groups, Click **Save**.
95122

96123
### Chart Group Permissions
97124

98125
In `Chart group permission` option, you can manage the access of groups for Chart Groups in your project.
99126

100-
**Note**: The `Chart group permission` option will be available only if you install [CI/CD integration](https://docs.devtron.ai/usage/integrations/build-and-deploy-ci-cd).
127+
{% hint style="info" %}
128+
The `Chart group permission` option will be available only if you install [CI/CD integration](https://docs.devtron.ai/usage/integrations/build-and-deploy-ci-cd).
129+
{% endhint %}
101130

102-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/kubernetes-resources-permission-group.jpg)
131+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-chart-v2.jpg)
103132

104-
**NOTE:** You can only give users the ability to `create` or `edit`, not both.
133+
{% hint style="info" %}
134+
You can only give users the ability to `create` or `edit`, not both.
135+
{% endhint %}
105136

106137
| Action | Permissions |
107138
| :--- | :--- |
108139
| View | Enable `View` to view chart groups only. |
109140
| Create | Enable `Create` if you want the users to create, view, edit or delete the chart groups. |
110141
| Edit | <ul><li>**Deny**: Select `Deny` option from the drop-down list to restrict the users to edit the chart groups.</li><li>**Specific chart groups**: Select the `Specific Charts Groups` option from the drop-down list and then select the chart group for which you want to allow users to edit.</li></ul> |
111142

112-
Click `Save`once you have configured all the required permissions for the groups.
143+
Click **Save** once you have configured all the required permissions for the groups.
113144

114145

115146
### Edit Permissions Groups
116147

117148
You can edit the permission groups by clicking the `downward arrow.`
118149

119-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-4.png)
150+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/edit-permission-group.jpg)
120151

121152
Edit the permission group.
122153

123-
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/permission-group-5.png)
154+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/permission-group/save-permission-group.jpg)
124155

125-
Once you are done editing the permission group, click `Save`.
156+
Once you are done editing the permission group, click **Save**.
126157

127-
If you want to delete the groups with particular permission group, click `Delete`.
158+
If you want to delete the groups with particular permission group, click **Delete**.
128159

129160

Original file line numberDiff line numberDiff line change
@@ -0,0 +1,37 @@
1+
# GitHub
2+
3+
## Sample Configuration
4+
5+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/github.jpg)
6+
7+
---
8+
9+
## Values You Would Require at SSO Provider
10+
11+
Devtron provides a sample configuration out of the box. There are some values that you need to either get from your SSO provider or give to your SSO provider.
12+
13+
### Values to Fetch
14+
15+
* clientID
16+
17+
* clientSecret
18+
19+
![Fetching Client ID and Secret](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/secret/github-id-secret.jpg)
20+
21+
### Values to Provide
22+
23+
* redirectURI (provided in SSO Login Services by Devtron)
24+
25+
![Copying Redirect URI from Devtron](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/github-redurl.jpg)
26+
27+
![Pasting Redirect URI](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/github-redirect.jpg)
28+
29+
---
30+
31+
## Reference
32+
33+
* [View GitHub Documentation](https://docs.github.com/en/apps/oauth-apps/building-oauth-apps/creating-an-oauth-app)
34+
35+
* [View Dex IdP Documentation](https://dexidp.io/docs/connectors/github/)
36+
37+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
# GitLab
2+
3+
## Sample Configuration
4+
5+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/gitlab.jpg)
6+
7+
---
8+
9+
## Values You Would Require at SSO Provider
10+
11+
Devtron provides a sample configuration out of the box. There are some values that you need to either get from your SSO provider or give to your SSO provider.
12+
13+
### Values to Fetch
14+
15+
* clientID
16+
* clientSecret
17+
18+
![Fetching Client ID and Secret](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/secret/gitlab-id-secret.jpg)
19+
20+
### Values to Provide
21+
22+
* redirectURI (provided in SSO Login Services by Devtron)
23+
24+
![Copying Redirect URI from Devtron](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/gitlab-redurl.jpg)
25+
26+
![Pasting Redirect URI](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/gitlab-redirect-v2.jpg)
27+
28+
---
29+
30+
## Reference
31+
32+
* [View GitLab Documentation](https://docs.gitlab.com/ee/integration/oauth_provider.html)
33+
34+
* [View Dex IdP Documentation](https://dexidp.io/docs/connectors/gitlab/)
35+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# Google
2+
3+
## Sample Configuration
4+
5+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/google.jpg)
6+
7+
---
8+
9+
## Values You Would Require at SSO Provider
10+
11+
Devtron provides a sample configuration out of the box. There are some values that you need to either get from your SSO provider or give to your SSO provider.
12+
13+
### Values to Fetch
14+
15+
* clientID
16+
17+
* clientSecret
18+
19+
![Fetching Client ID and Secret](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/secret/google-id-secret.jpg)
20+
21+
22+
### Values to Provide
23+
24+
* redirectURI (provided in SSO Login Services by Devtron)
25+
26+
![Copying Redirect URI from Devtron](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/google-redurl.jpg)
27+
28+
![Pasting Redirect URI](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/redirect/google-redirect.jpg)
29+
30+
---
31+
32+
## Reference
33+
34+
* [View Google Documentation](https://developers.google.com/identity/gsi/web/guides/get-google-api-clientid)
35+
36+
* [View Dex IdP Documentation](https://dexidp.io/docs/connectors/google/)
37+
38+
39+
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# LDAP
2+
3+
## Sample Configuration
4+
5+
![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/ldap.jpg)
6+
7+
---
8+
9+
## Values to fetch from LDAP
10+
11+
Devtron provides a sample configuration out of the box. Here are some values you need to fetch from your LDAP.
12+
13+
* bindDN
14+
* bindPW
15+
* baseDN
16+
17+
---
18+
19+
## Reference
20+
21+
[What is LDAP](https://www.okta.com/identity-101/what-is-ldap/)
22+
23+
---
24+
25+
## Auto-assign Permissions [![](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/elements/EnterpriseTag.svg)](https://devtron.ai/pricing)
26+
27+
Since LDAP supports creation of User Groups, this feature simplifies the onboarding process of organizations having a large headcount of users. It also eliminates repetitive permission assignment by automatically mapping your LDAP User groups to Devtron's [Permission Groups](../permission-groups.md) during single sign-on (SSO) login.
28+
29+
![Enabling Permission Auto-assignment](https://devtron-public-asset.s3.us-east-2.amazonaws.com/images/global-configurations/sso-login-service/secret/auto-grant-ldap.jpg)
30+
31+
If you've created user groups in LDAP, you can create corresponding permission groups in Devtron with the same names. When members of those user groups first log in to Devtron, they'll automatically inherit the permissions from their Devtron permission group. This means you can't manually adjust or add [individual permissions for users](../user-access.md) mapped to a permission group.
32+
33+
{% hint style="warning" %}
34+
SSO login requires exact matching between Devtron permission group names and LDAP user groups. Any discrepancies or missing groups will prevent successful login.
35+
36+
Once you save the configuration with this auto-assign feature enabled, existing user permissions will be cleared and the future permissions will be managed through [Permission Groups](../permission-groups.md) linked to LDAP user groups.
37+
{% endhint %}
38+
39+
{% hint style="info" %}
40+
If you're missing some permissions that you know you should have, try logging out and signing back in to Devtron. This will refresh your permissions based on your latest LDAP user group.
41+
{% endhint %}
42+
43+
44+
45+
46+
47+
48+
49+
50+

0 commit comments

Comments
 (0)