Skip to content

Commit ced3740

Browse files
committed
chore: add instructions.md for Service Bus destination
1 parent b437e54 commit ced3740

File tree

3 files changed

+175
-2
lines changed

3 files changed

+175
-2
lines changed
Lines changed: 162 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,162 @@
1-
# Azure ServiceBus Configuration Instructions
1+
# Azure Service Bus Configuration Instructions
2+
3+
The Service Bus destination can be a topic or a queue.
4+
5+
## Configuration
6+
7+
- **Queue or Topic Name**: The name of the Service Bus topic or queue.
8+
- **Connection String**: The connection string for the Service Bus instance.
9+
10+
---
11+
12+
## How to set up Azure Service Bus as an event destination using the Azure CLI
13+
14+
Here are the resources you'll need to set up:
15+
16+
1. Resource Group - A container that holds related Azure resources
17+
2. Service Bus Namespace - The messaging service container (must be globally unique)
18+
3. Topic or a Queue:
19+
- Topic: A message distribution mechanism (pub/sub pattern)
20+
- Queue: A message queue for point-to-point communication
21+
22+
### Prerequisites
23+
24+
Assuming you have an Azure account and an authenticated Azure CLI, here are the steps to set up a Service Bus Topic or Queue as an Event Destination.
25+
26+
Install [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli).
27+
28+
Log in to Azure:
29+
30+
```bash
31+
az login
32+
```
33+
34+
### 1. Create Resource Group
35+
36+
Set variables:
37+
38+
```bash
39+
RESOURCE_GROUP="outpost-rg"
40+
LOCATION="eastus"
41+
```
42+
43+
Create resource group:
44+
45+
```bash
46+
az group create --name $RESOURCE_GROUP --location $LOCATION
47+
```
48+
49+
#### 2. Create Service Bus Namespace
50+
51+
Generate a unique namespace name (must be globally unique).
52+
53+
```bash
54+
RANDOM_SUFFIX=$(openssl rand -hex 4)
55+
NAMESPACE_NAME="outpost-servicebus-$RANDOM_SUFFIX"
56+
```
57+
58+
Create Service Bus namespace:
59+
60+
```bash
61+
az servicebus namespace create \
62+
--resource-group $RESOURCE_GROUP \
63+
--name $NAMESPACE_NAME \
64+
--location $LOCATION \
65+
--sku Standard
66+
```
67+
68+
### 3. Create Topic/Queue-Specific Access Policy
69+
70+
Choose either a Topic or a Queue based on your requirements. Below are examples for both.
71+
72+
#### For a Topic
73+
74+
Set a topic name:
75+
76+
```bash
77+
TOPIC_NAME="destination-test"
78+
```
79+
80+
Create a topic:
81+
82+
```bash
83+
az servicebus topic create \
84+
--resource-group $RESOURCE_GROUP \
85+
--namespace-name $NAMESPACE_NAME \
86+
--name $TOPIC_NAME
87+
```
88+
89+
Create a send-only policy for the topic.
90+
91+
```bash
92+
az servicebus topic authorization-rule create \
93+
--resource-group $RESOURCE_GROUP \
94+
--namespace-name $NAMESPACE_NAME \
95+
--topic-name $TOPIC_NAME \
96+
--name SendOnlyPolicy \
97+
--rights Send
98+
```
99+
100+
Get the Topic-Specific Connection String:
101+
102+
```bash
103+
az servicebus topic authorization-rule keys list \
104+
--resource-group $RESOURCE_GROUP \
105+
--namespace-name $NAMESPACE_NAME \
106+
--topic-name $TOPIC_NAME \
107+
--name SendOnlyPolicy \
108+
--query primaryConnectionString \
109+
--output tsv
110+
```
111+
112+
This returns a connection string that can only send to the Service Bus topic. Use this connection string in the **Connection String** field of the Event Destination configuration.
113+
114+
```
115+
Endpoint=sb://outpost-sb-a3f2b1.servicebus.windows.net/;SharedAccessKeyName=SendOnlyPolicy;SharedAccessKey=xyz789...;EntityPath=events
116+
```
117+
118+
#### For a Queue
119+
120+
Set a queue name:
121+
122+
```bash
123+
QUEUE_NAME="myqueue"
124+
```
125+
126+
Create a queue:
127+
128+
```bash
129+
az servicebus queue create \
130+
--resource-group $RESOURCE_GROUP \
131+
--namespace-name $NAMESPACE_NAME \
132+
--name $QUEUE_NAME
133+
```
134+
135+
Create a send-only policy for the queue.
136+
137+
```bash
138+
az servicebus queue authorization-rule create \
139+
--resource-group $RESOURCE_GROUP \
140+
--namespace-name $NAMESPACE_NAME \
141+
--queue-name $QUEUE_NAME \
142+
--name SendOnlyPolicy \
143+
--rights Send
144+
```
145+
146+
Get the Queue-Specific Connection String:
147+
148+
```bash
149+
az servicebus queue authorization-rule keys list \
150+
--resource-group $RESOURCE_GROUP \
151+
--namespace-name $NAMESPACE_NAME \
152+
--queue-name $QUEUE_NAME \
153+
--name SendOnlyPolicy \
154+
--query primaryConnectionString \
155+
--output tsv
156+
```
157+
158+
This returns a connection string that can only send to the Service Bus queue. Use this connection string in the **Connection String** field of the Event Destination configuration.
159+
160+
```
161+
Endpoint=sb://outpost-sb-a3f2b1.servicebus.windows.net/;SharedAccessKeyName=SendOnlyPolicy;SharedAccessKey=xyz789...;EntityPath=myqueue
162+
```

internal/destregistry/metadata/providers/azure_servicebus/metadata.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,5 +23,5 @@
2323
"label": "Azure Service Bus",
2424
"link": "https://azure.microsoft.com/en-us/services/service-bus/",
2525
"description": "Send events to Azure Service Bus topics for reliable cloud messaging between applications and services.",
26-
"icon": "<svg width=\"16\" height=\"16\" viewBox=\"0 0 96 96\" xmlns=\"http://www.w3.org/2000/svg\"><defs><linearGradient id=\"e399c19f-b68f-429d-b176-18c2117ff73c\" x1=\"-1032.172\" x2=\"-1059.213\" y1=\"145.312\" y2=\"65.426\" gradientTransform=\"matrix(1 0 0 -1 1075 158)\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0\" stop-color=\"#114a8b\"/><stop offset=\"1\" stop-color=\"#0669bc\"/></linearGradient><linearGradient id=\"ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15\" x1=\"-1023.725\" x2=\"-1029.98\" y1=\"108.083\" y2=\"105.968\" gradientTransform=\"matrix(1 0 0 -1 1075 158)\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0\" stop-opacity=\".3\"/><stop offset=\".071\" stop-opacity=\".2\"/><stop offset=\".321\" stop-opacity=\".1\"/><stop offset=\".623\" stop-opacity=\".05\"/><stop offset=\"1\" stop-opacity=\"0\"/></linearGradient><linearGradient id=\"a7fee970-a784-4bb1-af8d-63d18e5f7db9\" x1=\"-1027.165\" x2=\"-997.482\" y1=\"147.642\" y2=\"68.561\" gradientTransform=\"matrix(1 0 0 -1 1075 158)\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0\" stop-color=\"#3ccbf4\"/><stop offset=\"1\" stop-color=\"#2892df\"/></linearGradient></defs><path fill=\"url(#e399c19f-b68f-429d-b176-18c2117ff73c)\" d=\"M33.338 6.544h26.038l-27.03 80.087a4.152 4.152 0 0 1-3.933 2.824H8.149a4.145 4.145 0 0 1-3.928-5.47L29.404 9.368a4.152 4.152 0 0 1 3.934-2.825z\"/><path fill=\"#0078d4\" d=\"M71.175 60.261h-41.29a1.911 1.911 0 0 0-1.305 3.309l26.532 24.764a4.171 4.171 0 0 0 2.846 1.121h23.38z\"/><path fill=\"url(#ac2a6fc2-ca48-4327-9a3c-d4dcc3256e15)\" d=\"M33.338 6.544a4.118 4.118 0 0 0-3.943 2.879L4.252 83.917a4.14 4.14 0 0 0 3.908 5.538h20.787a4.443 4.443 0 0 0 3.41-2.9l5.014-14.777 17.91 16.705a4.237 4.237 0 0 0 2.666.972H81.24L71.024 60.261l-29.781.007L59.47 6.544z\"/><path fill=\"url(#a7fee970-a784-4bb1-af8d-63d18e5f7db9)\" d=\"M66.595 9.364a4.145 4.145 0 0 0-3.928-2.82H33.648a4.146 4.146 0 0 1 3.928 2.82l25.184 74.62a4.146 4.146 0 0 1-3.928 5.472h29.02a4.146 4.146 0 0 0 3.927-5.472z\"/></svg>"
26+
"icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"18\" height=\"18\" viewBox=\"0 0 18 18\"><defs><linearGradient id=\"bbd02878-309a-4490-8196-946338d0f593\" x1=\"8.995\" y1=\"10.299\" x2=\"8.995\" y2=\"13.199\" gradientUnits=\"userSpaceOnUse\"><stop offset=\"0\" stop-color=\"#005ba1\" /><stop offset=\"0.258\" stop-color=\"#00589d\" /><stop offset=\"0.525\" stop-color=\"#004f90\" /><stop offset=\"0.796\" stop-color=\"#003f7c\" /><stop offset=\"1\" stop-color=\"#003067\" /></linearGradient></defs><g><g id=\"b532e600-3623-4be6-9fa6-30d05fff56b1\"><polygon points=\"13.387 7.4 13.382 7.396 13.382 7.384 13.363 7.384 8.997 4.405 4.631 7.384 4.612 7.384 4.612 7.396 4.606 7.4 4.612 7.4 4.612 13.201 13.382 13.201 13.382 7.4 13.387 7.4\" fill=\"#50e6ff\" /><path d=\"M4.606,7.4c0-.1.008,5.681.008,5.8L8.995,10.3Z\" fill=\"#32bedd\" /><path d=\"M13.384,7.4,8.995,10.3,13.376,13.2C13.376,13.083,13.384,7.3,13.384,7.4Z\" fill=\"#198ab3\" /><polygon points=\"8.995 10.299 4.614 13.194 4.614 13.199 13.376 13.199 13.376 13.194 8.995 10.299\" fill=\"url(#bbd02878-309a-4490-8196-946338d0f593)\" /><g><path d=\"M1.072,1.43h1.29a0,0,0,0,1,0,0v3.6a.286.286,0,0,1-.286.286H.786A.286.286,0,0,1,.5,5.035V2A.572.572,0,0,1,1.072,1.43Z\" fill=\"#999\" /><path d=\"M1.072,1.43h1.29a0,0,0,0,1,0,0v3.6a.286.286,0,0,1-.286.286H.786A.286.286,0,0,1,.5,5.035V2A.572.572,0,0,1,1.072,1.43Z\" fill=\"#999\" opacity=\"0.5\" /></g><g><path d=\"M15.638,1.43h1.29A.572.572,0,0,1,17.5,2V5.035a.286.286,0,0,1-.286.286h-1.29a.286.286,0,0,1-.286-.286V1.43A0,0,0,0,1,15.638,1.43Z\" fill=\"#999\" /><path d=\"M15.638,1.43h1.29A.572.572,0,0,1,17.5,2V5.035a.286.286,0,0,1-.286.286h-1.29a.286.286,0,0,1-.286-.286V1.43A0,0,0,0,1,15.638,1.43Z\" fill=\"#999\" opacity=\"0.5\" /></g><path d=\"M8.66-6.163H9.907a0,0,0,0,1,0,0v17a0,0,0,0,1,0,0H8.66a.567.567,0,0,1-.567-.567V-5.6A.567.567,0,0,1,8.66-6.163Z\" transform=\"translate(11.337 -6.663) rotate(90)\" fill=\"#949494\" /><g><path d=\"M.786,12.679h1.29a.286.286,0,0,1,.286.286v3.6a0,0,0,0,1,0,0H1.072A.572.572,0,0,1,.5,16V12.965A.286.286,0,0,1,.786,12.679Z\" fill=\"#999\" /><path d=\"M.786,12.679h1.29a.286.286,0,0,1,.286.286v3.6a0,0,0,0,1,0,0H1.072A.572.572,0,0,1,.5,16V12.965A.286.286,0,0,1,.786,12.679Z\" fill=\"#999\" opacity=\"0.5\" /></g><g><path d=\"M15.924,12.679h1.29a.286.286,0,0,1,.286.286V16a.572.572,0,0,1-.572.572h-1.29a0,0,0,0,1,0,0v-3.6A.286.286,0,0,1,15.924,12.679Z\" fill=\"#999\" /><path d=\"M15.924,12.679h1.29a.286.286,0,0,1,.286.286V16a.572.572,0,0,1-.572.572h-1.29a0,0,0,0,1,0,0v-3.6A.286.286,0,0,1,15.924,12.679Z\" fill=\"#999\" opacity=\"0.5\" /></g><path d=\"M8.66,7.163H9.907a0,0,0,0,1,0,0v17a0,0,0,0,1,0,0H8.66a.567.567,0,0,1-.567-.567V7.73A.567.567,0,0,1,8.66,7.163Z\" transform=\"translate(-6.663 24.663) rotate(-90)\" fill=\"#949494\" /></g></g></svg>"
2727
}

internal/portal/src/common/ConfigurationModal/ConfigurationModal.scss

Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -35,6 +35,18 @@
3535
line-height: var(--line-height-m);
3636
}
3737

38+
h3 {
39+
font-size: var(--font-size-s);
40+
font-weight: 600;
41+
line-height: var(--line-height-s);
42+
}
43+
44+
h4 {
45+
font-size: var(--font-size-xs);
46+
font-weight: 600;
47+
line-height: var(--line-height-xs);
48+
}
49+
3850
p, li {
3951
font-size: var(--font-size-m);
4052
line-height: var(--line-height-m);

0 commit comments

Comments
 (0)