Skip to content

Commit 96a70fb

Browse files
Ticket #113 : Add eventmesh documentation
1 parent 148ec77 commit 96a70fb

11 files changed

Lines changed: 232 additions & 18 deletions

default.ps1

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,10 @@ task publishEventMeshService {
7272
exec { dotnet publish $source_dir\EventMesh\FaasNet.EventMesh.Service\FaasNet.EventMesh.Service.csproj -c $config -o $result_dir\eventMeshService }
7373
}
7474

75+
task publishEventMeshCLI {
76+
exec { dotnet publish $source_dir\EventMesh\FaasNet.EventMeshCTL.CLI\FaasNet.EventMeshCTL.CLI.csproj -c $config -o $result_dir\eventMeshCLI }
77+
}
78+
7579
task deployEventMeshService {
7680
exec { sc.exe create "EventMesh Service" binpath="$result_dir\eventMeshService\FaasNet.EventMesh.Service.exe --contentRoot $result_dir\eventMeshService" }
7781
}
Lines changed: 116 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,116 @@
1+
# Command-line interface
2+
3+
`FaasNet.EventMeshCTL.CLI.exe` is the CLI tool that ships with EventMeshServer. It supports a wide range of operations, mostly administrative in nature.
4+
This includes
5+
6+
* Access to cluster status.
7+
* Client and VPN management.
8+
* Manage plugins.
9+
10+
## Add Virtual Private Network (VPN)
11+
12+
**Command**
13+
14+
`add_vpn`
15+
16+
**Description**
17+
18+
Add one Virtual Private Network (VPN).
19+
20+
**Options**
21+
22+
| Option | Description | Default value |
23+
| -------- | ------------ | ------------- |
24+
| -n/--name | VPN name | default |
25+
26+
27+
## Get all Virtual Private Network (VPN)
28+
29+
**Command**
30+
31+
`get_all_vpn`
32+
33+
**Description**
34+
35+
Display all the VPN.
36+
37+
## Add client
38+
39+
**Command**
40+
41+
`add_client`
42+
43+
**Description**
44+
45+
Add one client.
46+
47+
**Options**
48+
49+
| Option | Description | Default value |
50+
| ---------------------------------------- | -------------------- | ------------- |
51+
| -v/--vpn | VPN name | default |
52+
| -id/--identifier <LOGIN> | Client identifier | clientId |
53+
| -p/--publish_enabled <PUBLISH> | Can publish messages | True |
54+
| -s/--subscription_enabled <SUBSCRIPTION> | Can subscribe | True |
55+
56+
## Display cluster status
57+
58+
**Command**
59+
60+
`cluster_status`
61+
62+
**Description**
63+
64+
Display cluster status.
65+
66+
## Get plugins
67+
68+
**Command**
69+
70+
`get_plugins`
71+
72+
**Description**
73+
74+
Display all plugins.
75+
76+
## Enable plugin
77+
78+
**Command**
79+
80+
`enable_plugin`
81+
82+
**Description**
83+
84+
Enable one plugin.
85+
86+
**Options**
87+
88+
| Option | Description | Default value |
89+
| --------- | ----------- | ------------- |
90+
| -n/--name | Plugin name | |
91+
92+
## Disable plugin
93+
94+
**Command**
95+
96+
`disable_plugin`
97+
98+
**Description**
99+
100+
Disable one plugin.
101+
102+
**Options**
103+
104+
| Option | Description | Default value |
105+
| --------- | ----------- | ------------- |
106+
| -n/--name | Plugin name | |
107+
108+
## Version
109+
110+
**Command**
111+
112+
`version`
113+
114+
**Description**
115+
116+
Display the CLI version.
Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
# Installing the EventMesh CLI on Windows
2+
3+
This guide describes how EventMesh CLI can be installed and configured manually on Windows.
4+
5+
The CLI is used to manage one local or remote instance of an EventMesh server.
6+
7+
## Download zip
8+
9+
Download the ZIP file [EventMeshCLI.zip](#) and extract its content into a new Directory.
10+
The windows account must have READ and WRITE access to this directory otherwise the configuration file cannot be updated or read.
11+
12+
## Register the service
13+
14+
Open the environment variable window and add the full path of this new directory into the `PATH` environment variable.
15+
16+
Open a new command prompt and execute `FaasNet.EventMeshCTL.CLI.exe version`. If the version is displayed then the CLI is correctly installed.
17+
18+
You can check if the EventMesh server is running on your local machine by executing this command `FaasNet.EventMeshCTL.CLI.exe cluster_status`.
19+
You should see at least one instance listening on the port 4000.
20+
21+
```
22+
Current nodes
23+
Url=localhost, Port=4000
24+
```
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Installing on Windows Manually
2+
3+
This guide describes how EventMesh server can be installed and configured manually on Windows.
4+
5+
## Download zip
6+
7+
Download the zip file [EventMeshServer.zip](TODO) and extract its content into a new directory.
8+
9+
## Deploy the windows service
10+
11+
As an administrator, open a command prompt and execute the following command. The parameter `$result_dir` must be replaced by the full path of the new directory.
12+
The windows account used to run the windows service must have READ and WRITE access to this new directory otherwise the key-value storage cannot be created.
13+
14+
```
15+
sc.exe create "EventMesh Service" binpath="$result_dir\FaasNet.EventMesh.Service.exe --contentRoot $result_dir"
16+
```
17+
18+
In the same command prompt. Execute the command below to start the windows service.
19+
20+
```
21+
sc.exe start "EventMesh Service"
22+
```
23+
24+
The windows service can be stopped like this :
25+
26+
```
27+
sc.exe stop "EventMesh Service"
28+
```
29+
30+
After some minutes, the EventMesh server is launched and is listening on the port 4000.
31+
Now, the CLI can be downloaded to manage the local EventMesh server.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# AMQP1.0 protocol plugin
2+
Lines changed: 34 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,34 @@
1+
# Plugins
2+
3+
EventMesh server supports plugins. Plugins extend core functionality in a variety of ways:
4+
* Support more protocols.
5+
* Support more sink connectors. A sink connector consumes records from an event store or message broker and stream the data events to the EventMesh server.
6+
7+
## Install a plugin
8+
9+
A plugin can manually be installed :
10+
1. Download the zip file.
11+
2. Extract its content.
12+
3. Based on the nature of the plugin, move the folder into the appropriate sub-folder of the local EventMesh server.
13+
* If the plugin supports an additional protocol then the sub-folder is `protocolPlugins`.
14+
* If the plugin supports a new sink connector then the sub-folder is `sinkPlugins`.
15+
16+
## Enable a plugin
17+
18+
Once the plugin is installed, open a command prompt and execute the command `FaasNet.EventMeshCTL.CLI.exe enable_plugin -n=<PLUGIN_NAME>` to enable the plugin.
19+
20+
If the plugin is successfully enabled then a success message is displayed.
21+
22+
The EventMesh server must be restarted to take into consideration the new activated plugins.
23+
24+
## Supported plugins
25+
26+
The table below lists plugins
27+
28+
| Plugin name | Folder | Description |
29+
| ------------------------------------------- | ---------------- | --------------------------------------------------- |
30+
| [ProtocolAmqp](pluginamqp.md) | protocolPlugins | Support AMQP1.0 protocol |
31+
| [ProtocolWebsocket](pluginwebsocket.md) | protocolPlugins | Support WebSocket protocol |
32+
| [SinkAMQP](pluginsinkamqp.md) | sinkPlugins | Consume records from AMQP server |
33+
| [SinkKafka](pluginsinkkafka.md) | sinkPlugins | Consume records from KAFKA server |
34+
| [SinkVpnBridge](pluginsinkvpnbridge.md) | sinkPlugins | Consume records from Virtual Private Network bridge |

docs/documentation/eventmesh/pluginsinkamqp.md

Whitespace-only changes.

docs/documentation/eventmesh/pluginsinkkafka.md

Whitespace-only changes.

docs/documentation/eventmesh/pluginsinkvpnbridge.md

Whitespace-only changes.
Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Websocket protocol plugin
2+

0 commit comments

Comments
 (0)