Skip to content

Commit 339482f

Browse files
author
@tomnight
committed
Update to version 1.2.0
1 parent 4609da6 commit 339482f

Some content is hidden

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

46 files changed

+2525
-887
lines changed
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: bug
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
<!-- A clear and concise description of what the bug is. -->
12+
13+
**To Reproduce**
14+
<!-- Steps to reproduce the behavior. -->
15+
16+
**Expected behavior**
17+
<!-- A clear and concise description of what you expected to happen. -->
18+
19+
**Please complete the following information about the solution:**
20+
- [ ] Version: [e.g. v1.1.0]
21+
- [ ] Region: [e.g. us-east-1]
22+
- [ ] Was the solution modified from the version published on this repository?
23+
- [ ] If the answer to the previous question was yes, are the changes available on GitHub?
24+
- [ ] Have you checked your [service quotas](https://docs.aws.amazon.com/general/latest/gr/aws_service_limits.html) for the sevices this solution uses?
25+
- [ ] Were there any errors in the CloudWatch Logs?
26+
27+
**Screenshots**
28+
<!-- If applicable, add screenshots to help explain your problem (please DO NOT include sensitive information). -->
29+
30+
**Additional context**
31+
<!-- Add any other context about the problem here. -->
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this solution
4+
title: ''
5+
labels: enhancement
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
<!-- A clear and concise description of what the problem is. Ex. I'm always frustrated when [...] -->
12+
13+
**Describe the feature you'd like**
14+
<!-- A clear and concise description of what you want to happen.-->
15+
16+
**Additional context**
17+
<!-- Add any other context or screenshots about the feature request here.-->
Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
---
2+
name: General question
3+
about: Ask a general question
4+
title: ''
5+
labels: question
6+
assignees: ''
7+
8+
---
9+
10+
**What is your question?**
11+
<!-- Describe your question as detail as possible. -->

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
**Issue #, if available:**
2+
<!-- If there're any related issues, please add the issue number here. -->
3+
4+
5+
6+
**Description of changes:**
7+
<!-- Please describe the changes you made -->
8+
9+
10+
**Checklist**
11+
- [ ] :wave: I have run the unit tests, and all unit tests have passed.
12+
- [ ] :warning: This pull request might incur a breaking change.
13+
14+
By submitting this pull request, I confirm that you can use, modify, copy, and redistribute this contribution, under the terms of your choice.

.gitignore

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,9 @@ build/
44
dev/
55
global-s3-assets/
66
regional-s3-assets/
7+
open-source/
8+
console_new/
9+
**/aws_config.js
710

811
.pnp
912
.pnp.js

CHANGELOG.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,39 @@ All notable changes to this project will be documented in this file.
44
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
55
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
66

7+
## [1.2.0] - 2020-12-17
8+
### Added
9+
- JMeter input file support and plugins support
10+
- JMeter input files should be zipped with the JMeter script file.
11+
- Add `jetty-*.jar` files to the Amazon ECR to support JMeter HTTP/2 plugin:
12+
- https://github.com/Blazemeter/jmeter-http2-plugin
13+
- https://stackoverflow.com/questions/62714281/http-2-request-with-jmeter-fails-with-nullsession-jetty-alpn
14+
- https://webtide.com/jetty-alpn-java-8u252/
15+
- See the latest `jetty-*.jar` files in the [Maven repository](https://mvnrepository.com/):
16+
- [jetty-alpn-client](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-alpn-client)
17+
- [jetty-alpn-openjdk8-client](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-alpn-openjdk8-client)
18+
- [jetty-client](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-client)
19+
- [jetty-http](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-http)
20+
- [jetty-io](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-io)
21+
- [jetty-util](https://mvnrepository.com/artifact/org.eclipse.jetty/jetty-util)
22+
- UI Detail page
23+
- Sub test results by labels
24+
- Requests per second
25+
- Complete task counts
26+
- Check if Amazon ECR is ready before running the test
27+
- More error handlings in AWS Step Functions
28+
- If any error happens in any steps, the Lambda function updates the test status to `FAILED`.
29+
- If any AWS Fargate tasks are possibly hanged forever, the `task-status-checker` Lambda function stops the tasks.
30+
- When there is no result in the S3 bucket, it regards the result as `FAILED`.
31+
32+
### Changed
33+
- Use `Promise.all()` in `results-parser` to improve the performance
34+
- Correct average bandwidth on the Detail page
35+
- Packages version
36+
- Fix occasional wrong test duration time on the report
37+
- Dashboard order by `Last Run (UTC)`
38+
- Maximum upload file size to 50MB to support JMeter input files
39+
740
## [1.1.0] - 2020-09-30
841
### Added
942
- JMeter support with `jmx` script: [#3](https://github.com/awslabs/distributed-load-testing-on-aws/issues/3)

CONTRIBUTING.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -56,6 +56,6 @@ If you discover a potential security issue in this project we ask that you notif
5656

5757
## Licensing
5858

59-
See the [LICENSE](https://github.com/awslabs/distributed-load-testing-on-aws/blob/master/LICENSE) file for our project's licensing. We will ask you to confirm the licensing of your contribution.
59+
See the [LICENSE](https://github.com/awslabs/distributed-load-testing-on-aws/blob/master/LICENSE.txt) file for our project's licensing. We will ask you to confirm the licensing of your contribution.
6060

6161
We may ask you to sign a [Contributor License Agreement (CLA)](http://en.wikipedia.org/wiki/Contributor_License_Agreement) for larger changes.

NOTICE.txt

Lines changed: 20 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -6,23 +6,32 @@ THIRD PARTY COMPONENTS
66
**********************
77
This software includes third party software subject to the following copyrights:
88

9-
AWS SDK under the Apache License Version 2.0
9+
@fortawesome/fontawesome-svg-core under the Massachusetts Institute of Technology (MIT) license
10+
@fortawesome/free-brands-svg-icons under the Creative Commons Attribution 4.0 International license and the Massachusetts Institute of Technology (MIT) license
11+
@fortawesome/free-solid-svg-icons under the Creative Commons Attribution 4.0 International license and the Massachusetts Institute of Technology (MIT) license
12+
@fortawesome/react-fontawesome under the Massachusetts Institute of Technology (MIT) license
13+
aws-sdk under the Apache License Version 2.0
1014
aws-amplify under the Apache License Version 2.0
1115
aws-amplify-react under the Apache License Version 2.0
16+
axios under the Massachusetts Institute of Technology (MIT) license
17+
axios-mock-adapter under the Massachusetts Institute of Technology (MIT) license
1218
bootstrap under the Massachusetts Institute of Technology (MIT) license
19+
brace under the Massachusetts Institute of Technology (MIT) license
20+
jest under the Massachusetts Institute of Technology (MIT) license
21+
jetty-alpn-client under the Apache License Version 2.0 and the Eclipse Public License 1.0
22+
jetty-alpn-openjdk8-client under the Apache License Version 2.0 and the Eclipse Public License 1.0
23+
jetty-client under the Apache License Version 2.0 and the Eclipse Public License 1.0
24+
jetty-http under the Apache License Version 2.0 and the Eclipse Public License 1.0
25+
jetty-io under the Apache License Version 2.0 and the Eclipse Public License 1.0
26+
jetty-util under the Apache License Version 2.0 and the Eclipse Public License 1.0
27+
moment under the Massachusetts Institute of Technology (MIT) license
1328
react under the Massachusetts Institute of Technology (MIT) license
14-
reactstrap under the Massachusetts Institute of Technology (MIT) license
29+
react-ace under the Massachusetts Institute of Technology (MIT) license
1530
react-dom under the Massachusetts Institute of Technology (MIT) license
16-
react-router under the Massachusetts Institute of Technology (MIT) license
1731
react-router-dom under the Massachusetts Institute of Technology (MIT) license
1832
react-scripts under the Massachusetts Institute of Technology (MIT) license
19-
moment.js under the Massachusetts Institute of Technology (MIT) license
33+
reactstrap under the Massachusetts Institute of Technology (MIT) license
2034
shortid under the Massachusetts Institute of Technology (MIT) license
21-
font-awesome under the Massachusetts Institute of Technology (MIT) license
35+
taurus under the Apache License Version 2.0
2236
uuid under the Massachusetts Institute of Technology (MIT) license
23-
axios under the Massachusetts Institute of Technology (MIT) license
24-
axios-mock-adapter under the Massachusetts Institute of Technology (MIT) license
25-
chai under the Massachusetts Institute of Technology (MIT) license
26-
mocha under the Massachusetts Institute of Technology (MIT) license
27-
aws-sdk-mock under the Massachusetts Institute of Technology (MIT) license
28-
37+
xml-js under the Massachusetts Institute of Technology (MIT) license

README.md

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ The Distributed Load Testing Solution leverages managed, highly available and hi
1414
![Architecture](architecture.png)
1515

1616
## Deployment
17-
The solution is deployed using a CloudFormation template with a lambda backed custom resource. For details on deploying the solution please see the details on the solution home page: [Distributed Load Testing](https://aws.amazon.com/solutions/distributed-load-testing-on-aws/)
17+
The solution is deployed using a CloudFormation template with a lambda backed custom resource. For details on deploying the solution please see the details on the solution home page: [Distributed Load Testing](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/)
1818

1919
## Source Code
2020

@@ -30,14 +30,17 @@ The Taurus DockerFile and bash script run at start of the test to download the t
3030
**source/custom-resource**<br/>
3131
A NodeJS Lambda function used as a CloudFormation custom resource for configuring Amazon S3 bucket notifications and to send anonymous metrics.
3232

33+
**source/ecr-checker**<br/>
34+
A NodeJS Lambda function that checks if the Amazon ECR is ready or not.
35+
3336
**source/results-parser**<br/>
3437
A NodeJS Lambda function used to write the xml output from the docker images to Amazon DynamoDB and generate the final results for each test.
3538

3639
**source/task-runner**<br/>
37-
A NodeJS Lambda function that runs the Amaazon ECS task definition for each test.
40+
A NodeJS Lambda function that runs the Amazon ECS task definition for each test.
3841

3942
**source/task-status-checker**<br/>
40-
A NodeJS Lambda function that checks if the Amaazon ECS tasks are running or not.
43+
A NodeJS Lambda function that checks if the Amazon ECS tasks are running or not.
4144

4245
## Creating a custom build
4346
The solution can be deployed through the CloudFormation template available on the solution home page: [Distributed Load Testing](https://aws.amazon.com/solutions/implementations/distributed-load-testing-on-aws/).

deployment/build-s3-dist.sh

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -105,12 +105,29 @@ npm install --production
105105
rm package-lock.json
106106
zip -q -r9 $build_dist_dir/task-status-checker.zip *
107107

108+
echo "------------------------------------------------------------------------------"
109+
echo "Creating ecr-checker deployment package"
110+
echo "------------------------------------------------------------------------------"
111+
cd $source_dir/ecr-checker
112+
rm -rf node_modules/
113+
npm install --production
114+
rm package-lock.json
115+
zip -q -r9 $build_dist_dir/ecr-checker.zip *
116+
108117
echo "------------------------------------------------------------------------------"
109118
echo "Creating container deployment package"
110119
echo "------------------------------------------------------------------------------"
111120
cd $source_dir/container
121+
# Downloading jetty 9.4.34.v20201102
122+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-alpn-client/9.4.34.v20201102/jetty-alpn-client-9.4.34.v20201102.jar
123+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-alpn-openjdk8-client/9.4.34.v20201102/jetty-alpn-openjdk8-client-9.4.34.v20201102.jar
124+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-client/9.4.34.v20201102/jetty-client-9.4.34.v20201102.jar
125+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-http/9.4.34.v20201102/jetty-http-9.4.34.v20201102.jar
126+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-io/9.4.34.v20201102/jetty-io-9.4.34.v20201102.jar
127+
curl -O https://repo1.maven.org/maven2/org/eclipse/jetty/jetty-util/9.4.34.v20201102/jetty-util-9.4.34.v20201102.jar
112128
zip -q -r9 ../../deployment/regional-s3-assets/container.zip *
113129
cp container-manifest.json $build_dist_dir/
130+
rm -f *.jar
114131

115132
echo "------------------------------------------------------------------------------"
116133
echo "Building console"

0 commit comments

Comments
 (0)