Skip to content

Commit 1a53551

Browse files
Merge pull request #10 from navendu-pottekkat/update-docs/navendu-pottekkat
2 parents 91d47ce + af99f58 commit 1a53551

File tree

3 files changed

+62
-37
lines changed

3 files changed

+62
-37
lines changed

.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,3 +13,5 @@
1313

1414
# Dependency directories (remove the comment below to include it)
1515
# vendor/
16+
17+
.vscode/*

README.md

Lines changed: 47 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,83 @@
1-
# Meshery SMP Action
2-
This repository is used for storing a GitHub action for performing SMP tests using Meshery
1+
# Meshery - SMP GitHub Action
32

4-
## Inputs
5-
```yaml
6-
# token to connect with the remote provider
7-
provider_token:
8-
description: "Provider token to use. NOTE: value of the 'token' key in auth.json"
9-
required: true
3+
GitHub Action to run SMP Performance Benchmarks on CI/CD pipelines.
4+
5+
[Meshery](https://meshery.io/) is the canonical implementation of the [Service Mesh Performance specification](https://smp-spec.io/).
6+
7+
## Learn More
8+
9+
- [Performance Management in Meshery](https://docs.meshery.io/functionality/performance-management)
10+
- [Guide: Running Performance Tests in Meshery](https://docs.meshery.io/guides/performance-management)
11+
- [Supported Service Meshes](https://docs.meshery.io/service-meshes)
12+
13+
## Usage
14+
15+
See [action.yml](action.yml)
1016

11-
# platform to deploy meshery
12-
platform:
13-
description: "Platform to deploy meshery on. Possible values: docker, kubernetes"
14-
default: docker
17+
You can use this action by defining your test configuration in a performance profile in Meshery or write your test configurations in SMP compatible format ([see example](#smp-compatible-test-configuration-file)).
1518

16-
# SUPPLY EITHER "profile_filename" or profile_name
19+
You can then pass in either of these to the action to run a performance test.
1720

18-
# name of the file storing the performance profile (keep in .github)
19-
profile_filename:
20-
description: "Name of the file containing SMP profile"
21+
The results of the tests are updated on the Performance Management dashboard in Meshery.
2122

22-
# name of the prformance profile to use
23-
profile_name:
24-
description: "Name of the performance profile"
23+
See [Performance Management with Meshery](https://docs.meshery.io/guides/performance-management) for detailed instructions on setting up Meshery and authenticating the GitHub Action.
24+
25+
## SMP Compatible Test Configuration File
26+
27+
```yaml
28+
smp_version: v0.0.1
29+
id:
30+
name: Istio Performance Test
31+
labels: {}
32+
clients:
33+
- internal: false
34+
load_generator: fortio
35+
protocol: 1
36+
connections: 2
37+
rps: 10
38+
headers: {}
39+
cookies: {}
40+
body: ""
41+
content_type: ""
42+
endpoint_urls:
43+
- http://localhost:2323/productpage
44+
duration: "30m"
2545
```
2646
2747
## Sample configuration
48+
2849
```yaml
29-
name: Testing SMP action
50+
name: Meshery SMP Action
3051
on:
3152
push:
3253
branches:
33-
'perf'
54+
'master'
3455

3556
jobs:
36-
job1:
37-
name: Run Performance Test
57+
performance-test:
58+
name: Performance Test
3859
runs-on: ubuntu-latest
3960
steps:
4061
- name: checkout
4162
uses: actions/checkout@v2
4263
with:
4364
ref: 'perf'
4465

45-
- name: Deploy k8s
66+
- name: Deploy k8s-minikube
4667
uses: manusa/actions-setup-minikube@v2.4.1
4768
with:
4869
minikube version: 'v1.21.0'
4970
kubernetes version: 'v1.20.7'
5071
driver: docker
5172

52-
- name: Performance test
73+
- name: Run Performance Test
5374
uses: layer5io/meshery-smp-action@master
5475
with:
5576
provider_token: ${{ secrets.PROVIDER_TOKEN }}
5677
platform: docker
57-
profile_name: demo
78+
profile_name: istio-soak-test
5879
```
5980
60-
<div>&nbsp;</div>
61-
6281
## Join the service mesh community!
6382
6483
<a name="contributing"></a><a name="community"></a>

action.yml

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,29 @@
1-
name: "Service Mesh Performance Testing with Meshery"
2-
description: "Validate SMP specification using Meshery"
1+
name: "Performance Testing with Meshery"
2+
description: "Run performance tests in SMP format with Meshery"
33
author: "Layer5"
44

55
inputs:
6-
# token to connect with the remote provider
6+
# token to authenticate with Meshery
7+
# see: https://docs.meshery.io/guides/performance-management#running-performance-benchmarks-in-your-pipelines
78
provider_token:
89
description: "Provider token to use. NOTE: value of the 'token' key in auth.json"
910
required: true
1011

11-
# platform to deploy meshery
12+
# platform to deploy Meshery to
1213
platform:
13-
description: "Platform to deploy meshery on. Possible values: docker, kubernetes"
14+
description: "Platform to deploy Meshery to. Allowed values: docker, kubernetes"
1415
default: docker
1516

16-
# SUPPLY EITHER "profile_filename" or profile_name
17+
# provide either a test configuration file or a performance profile name
1718

18-
# name of the file storing the performance profile (keep in .github)
19+
# name of the test configuration file written in SMP compatible format
20+
# see: https://docs.meshery.io/guides/performance-management#running-performance-benchmarks-through-mesheryctl
21+
# store this file in the .github folder in your repository
1922
profile_filename:
20-
description: "Name of the file containing SMP profile"
23+
description: "Name of the test configuration file"
2124

22-
# name of the prformance profile to use
25+
# name of the performance profile to use to run tests
26+
# see: https://docs.meshery.io/functionality/performance-management#performance-profiles
2327
profile_name:
2428
description: "Name of the performance profile"
2529

0 commit comments

Comments
 (0)