Skip to content

Commit 04efe87

Browse files
authored
Merge pull request #491 from james-ha-bruno/updates-v2-15
Updates v2 15
2 parents 889cfda + baef09e commit 04efe87

File tree

17 files changed

+150
-21
lines changed

17 files changed

+150
-21
lines changed

components/premium-badge.tsx

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -3,22 +3,31 @@ import Link from "next/link";
33
import { Badge } from "./ui/badge";
44

55
export interface PremiumBadgeProps
6-
extends React.HTMLAttributes<HTMLDivElement> {}
6+
extends React.HTMLAttributes<HTMLDivElement> {
7+
noLink?: boolean;
8+
}
9+
10+
function PremiumBadge({ className, noLink, ...props }: PremiumBadgeProps) {
11+
const badge = (
12+
<Badge className="mx-3 sm:mx-6 rounded-lg px-1 w-fit flex-row gap-x-1 my-0" variant="warning">
13+
Premium
14+
<Image
15+
src="/bruno.png"
16+
alt="Bruno Logo"
17+
height={20}
18+
width={20}
19+
className="my-0 h-5 w-5 sm:h-5 sm:w-5 group-hover:animate-infinite group-hover:animate-wiggle"
20+
/>
21+
</Badge>
22+
);
23+
24+
if (noLink) {
25+
return badge;
26+
}
727

8-
function PremiumBadge({ className, ...props }: PremiumBadgeProps) {
928
return (
1029
<Link href="https://www.usebruno.com/pricing" target="_blank" className="my-0">
11-
<Badge className="mx-3 sm:mx-6 rounded-lg px-1 w-fit flex-row gap-x-1 my-0" variant="warning">
12-
Premium
13-
<Image
14-
src="/bruno.png"
15-
alt="Bruno Logo"
16-
height={16}
17-
width={16}
18-
className="my-0 h-5 w-5 sm:h-5 sm:w-5"
19-
style={{ margin: 0 }}
20-
/>
21-
</Badge>
30+
{badge}
2231
</Link>
2332
);
2433
}

content/git-integration/_meta.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ export default {
33
"using-cli": "Collaboration via CLI",
44
"using-gui": "Collaboration via GUI",
55
"gitlab": "GitLab",
6+
"azure-devops": "Azure DevOps",
67
"bitbucket": "Bitbucket",
78
"embed-bruno-collection": "Fetch in Bruno Button"
8-
}
9+
}
Lines changed: 74 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,74 @@
1+
# Collaboration via Azure DevOps
2+
3+
Azure DevOps is a comprehensive suite of development tools provided by Microsoft that enables teams to plan, develop, test, and deliver software efficiently. It offers integrated services including Azure Repos for Git repositories, Azure Pipelines for CI/CD, Azure Boards for work tracking, and more—making it a complete DevOps platform for enterprise teams.
4+
5+
Bruno's Git functionality allows you to work with Azure DevOps to manage, collaborate, and maintain your API development workflow.
6+
7+
## Configure Azure DevOps
8+
9+
You need to set up an SSH key with Azure DevOps. While you can also set up personal access tokens (HTTPS), this requires you to enter your token on every operation. SSH is a more convenient and secure way to work with Azure DevOps.
10+
11+
### Create Repository on Azure DevOps
12+
13+
To get started, you have to create a project/repository on Azure DevOps. Follow these steps:
14+
15+
1. Log into your Azure DevOps account at [dev.azure.com](https://dev.azure.com) (create one if you don't have one)
16+
2. Click on **+ New project** or select an existing project
17+
3. If creating a new project, fill in the required fields (Project name, Description, Visibility)
18+
4. Click **Create**
19+
5. Navigate to **Repos** in the left sidebar
20+
6. If you need to create a new repository within the project, click **+ New repository**
21+
22+
![azure-devops-clone-url](/screenshots/git-integration/bitbucket-gitlab/ado-new-repo.webp)
23+
24+
Once you have a repository, click on the **Clone** button in the top-right corner and copy the SSH URL, which looks similar to:
25+
26+
![azure-devops-clone-url](/screenshots/git-integration/bitbucket-gitlab/ado-clone-ssh.webp)
27+
28+
29+
```bash
30+
[email protected]:v3/<organization>/<project>/<repo-name>
31+
```
32+
33+
### Configure SSH Key
34+
35+
Follow these steps to configure an SSH key on your local system:
36+
37+
#### 1. Generate SSH Key
38+
39+
Open your terminal and execute:
40+
41+
```bash
42+
ssh-keygen -t ed25519 -C "[email protected]" -f ~/.ssh/id_ed25519_azuredevops
43+
```
44+
45+
#### 2. Add SSH Key to SSH Agent
46+
47+
Add the SSH key to your SSH agent so it can be used for authentication:
48+
49+
```bash
50+
ssh-add ~/.ssh/id_ed25519_azuredevops
51+
```
52+
53+
#### 3. Add the SSH Key to Your Azure DevOps Account
54+
55+
1. Go to **Azure DevOps** > **User Settings** (click your avatar in the top-right) > **SSH public keys**
56+
2. Click **+ New Key**
57+
3. Give your key a name (e.g., "Bruno Development")
58+
4. Paste your `id_ed25519_azuredevops.pub` content in the **Public Key Data** field
59+
5. Click **Add**
60+
61+
![azure-devops-add-ssh-key](/screenshots/git-integration/bitbucket-gitlab/ado-add-ssh-key.webp)
62+
63+
## Use Azure DevOps with Bruno
64+
65+
1. Create a Collection inside Bruno (if you haven't already)
66+
2. Click on the **Git** icon (next to Safe Mode) and select **Initialize repo**
67+
3. Click on **main** and select **Remotes** from the dropdown
68+
4. Add **origin** as the name of the remote and paste your repository URL (copied previously)
69+
70+
Now you can perform push, pull, and other Git operations directly from Bruno.
71+
72+
![bruno-git-operations](/screenshots/git-integration/bitbucket-gitlab/bruno-git-operations.webp)
73+
74+
For more detailed information about Git operations in Bruno, check out the [Collaboration via GUI documentation](/git-integration/using-gui/intro).

content/license-administrators/saml-sso/overview.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -192,7 +192,7 @@ In the Bruno License Portal's SSO Settings, you'll find two fields under "Role M
192192
### License Activation Flow
193193

194194
**For User Role Users:**
195-
- Users can activate their Bruno license using SSO
195+
- [Users can activate their Bruno license using SSO](/license-end-users/activate-license#activating-with-sso)
196196
- They receive a license key via email on first login
197197
- They can use this key to activate Bruno on their local machine
198198
- They do NOT have access to the License Portal
Lines changed: 37 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,27 +1,60 @@
11
import { Callout } from "nextra/components";
2+
import PremiumBadge from "@/components/premium-badge";
23

34
# Activating Your License
45

56
<Callout type="warning">
67
You must be on Bruno v.1.35.0 or higher to activate a license after December 1, 2024
78
</Callout>
89

10+
## Activating with License Key
11+
912
If you've been provisioned a license, you should have received a license key via email. If you have not received a key and already checked your spam folder, please reach out to your license administrator.
1013

1114
### Step 1: Click on the Settings or Key icon in Bruno
1215

13-
Both icons are located at the bottom left corner of the Bruno window. The Key icon will take you directly to the `License` section. If you choose to use the Settings icon, simply select `License` from the settings menu.
16+
Both icons are located at the bottom left corner of the Bruno window. The Key icon will take you directly to the `License` section. If you choose to use the Settings icon, simply select `License` from the settings menu.
1417

15-
### Step 2: Enter License Details
18+
### Step 2: Enter License Details
1619

1720
Enter your license key and associated email address
1821

1922
![login](/screenshots/license-management/activatelicense.webp)
2023

2124
<Callout type="info">
22-
If your company uses a self-hosted licensing server, select `License Server` and enter the details provided to you by your License Administrator.
25+
If your company uses a self-hosted licensing server, select `License Server` and enter the details provided to you by your License Administrator.
2326
</Callout>
2427

25-
### Step 4: License Activated
28+
### Step 3: License Activated
2629

2730
Once the license is activated, you will see a success message.
31+
32+
## Activating with SSO <PremiumBadge noLink />
33+
34+
<Callout type="info">
35+
SSO license activation is available for Ultimate Edition customers. Please see the [SAML SSO Overview](/license-administrators/saml-sso/overview) for more information.
36+
</Callout>
37+
38+
### Step 1: Click on the Settings or Key icon in Bruno
39+
40+
Both icons are located at the bottom left corner of the Bruno window. The Key icon will take you directly to the `License` section. If you choose to use the Settings icon, simply select `License` from the settings menu.
41+
42+
### Step 2: Activate with SSO
43+
44+
If your company has configured SSO for Bruno, select `SSO` and click `Activate License`.
45+
46+
![login](/screenshots/license-management/activate-sso.webp)
47+
48+
<Callout type="info">
49+
Your email needs to be part of the SSO configuration in order to activate your license, with the `User Role` mapped. See [Role Mapping](/license-administrators/saml-sso/overview#role-mapping) for details.
50+
</Callout>
51+
52+
### Step 3: SSO Login
53+
54+
You will be redirected to your corporate SSO login page. Enter your credentials to login.
55+
56+
A successful login message will be displayed.
57+
58+
![login](/screenshots/license-management/activate-message-success.webp)
59+
60+
Returning to Bruno, you will see the license as activated.

content/license-overview.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ For our open-source users, there is no concept of license management! Simply dow
66

77
Our commercial plans have different license management aspects. If you have any questions about what plan is best suited for you, please see our [pricing page <strong><sup>↗</sup></strong>](https://www.usebruno.com/pricing) or [contact us <strong><sup>↗</sup></strong>](mailto:[email protected]) to discuss.
88

9-
## License Management <PremiumBadge />
9+
## License Management <PremiumBadge noLink />
1010

1111
### For License Administrators
1212

content/secrets-management/secret-managers/hashicorp-vault/adding-a-secret-provider.mdx

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ To configure a **Vault server** secret provider, you can opt for either **Token*
2020

2121
4. Enter `http://localhost:8200` if using a local server, or the URL of the hosted server (e.g., `https://vault.example.com`).
2222

23-
5. Provide the necessary [Token <strong><sup>↗</sup></strong>](https://developer.hashicorp.com/vault/docs/commands/token), [AppRole <strong><sup>↗</sup></strong>](https://developer.hashicorp.com/vault/tutorials/auth-methods/approle) and [LDAP <strong><sup>↗</sup></strong>](https://developer.hashicorp.com/vault/docs/auth/ldap) credentials.
23+
5. Provide the necessary [Token <strong><sup>↗</sup></strong>](https://developer.hashicorp.com/vault/docs/commands/token) or [AppRole <strong><sup>↗</sup></strong>](https://developer.hashicorp.com/vault/tutorials/auth-methods/approle) credentials.
2424

2525
6. Click on **Add** to save the secret provider.
2626

content/secrets-management/secret-masking.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,5 @@
1+
import { Callout } from "nextra/components";
2+
13
# Bruno Secret Masking in Reports
24

35
## Overview
@@ -42,6 +44,10 @@ Bruno masks all values of environment variables marked as secret in the UI:
4244

4345
**Result:** Every instance where `db_pass` is referenced appears masked in the report.
4446

47+
<Callout type="info">
48+
When running via the Bruno CLI, the same masking rules apply. Secret variables passed using the `--env-var` flag are also masked in reports.
49+
</Callout>
50+
4551
### 4. External Secrets
4652

4753
Bruno masks secrets fetched from external providers:

content/variables/interpolation.mdx

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,9 @@ Variable interpolation in Bruno allows you to use variables in your requests usi
1111
```javascript
1212
// Setting a string variable
1313
bru.setVar("greeting", "Hello World");
14+
```
1415

16+
```http
1517
// Using in request
1618
GET http://api.example.com/{{greeting}}
1719
// Interpolates to: http://api.example.com/Hello World
@@ -22,7 +24,9 @@ GET http://api.example.com/{{greeting}}
2224
```javascript
2325
// Setting a number variable
2426
bru.setVar("userId", 123);
27+
```
2528

29+
```http
2630
// Using in request
2731
GET http://api.example.com/users/{{userId}}
2832
// Interpolates to: http://api.example.com/users/123
@@ -186,7 +190,9 @@ bru.setVar("searchParams", {
186190
offset: 0,
187191
filter: "active"
188192
});
193+
```
189194

195+
```http
190196
// In URL
191197
GET http://api.example.com/users?limit={{searchParams.limit}}&offset={{searchParams.offset}}&filter={{searchParams.filter}}
192198
```
177 KB
Loading

0 commit comments

Comments
 (0)