Skip to content

Commit 562391b

Browse files
authored
Add Secure Tunnel Sample to CI tests (#353)
* Add Secure Tunnel Sample to CI tests
1 parent 364d923 commit 562391b

File tree

3 files changed

+44
-0
lines changed

3 files changed

+44
-0
lines changed

codebuild/samples/linux-smoke-tests.yml

+1
Original file line numberDiff line numberDiff line change
@@ -16,6 +16,7 @@ phases:
1616
- echo Build started on `date`
1717
- $CODEBUILD_SRC_DIR/codebuild/samples/setup-linux.sh
1818
- $CODEBUILD_SRC_DIR/codebuild/samples/pubsub-linux.sh
19+
- $CODEBUILD_SRC_DIR/codebuild/samples/securetunnel-linux.sh
1920
post_build:
2021
commands:
2122
- echo Build completed on `date`
+29
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,29 @@
1+
#!/bin/bash
2+
3+
set -e
4+
5+
env
6+
7+
pushd $CODEBUILD_SRC_DIR/samples/secure_tunneling/secure_tunnel
8+
9+
mkdir _build
10+
cd _build
11+
cmake -DCMAKE_PREFIX_PATH=/tmp/install ..
12+
make -j
13+
14+
echo "aws iotsecuretunneling open-tunnel"
15+
RESPONSE=$(aws iotsecuretunneling open-tunnel)
16+
array=(${RESPONSE//:/ })
17+
18+
echo "Assigning SOURCETOKEN"
19+
SOURCETOKEN="${array[11]}"
20+
21+
echo "Assigning DESTINATIONTOKEN"
22+
DESTINATIONTOKEN="${array[13]}"
23+
24+
echo "Secure Tunnel Destination test"
25+
./secure-tunnel --test --region us-east-1 --access_token $DESTINATIONTOKEN &
26+
sleep 10 &
27+
28+
echo "Secure Tunnel Source test"
29+
./secure-tunnel --localProxyModeSource --region us-east-1 --access_token $SOURCETOKEN &

samples/secure_tunneling/secure_tunnel/main.cpp

+14
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,12 @@ int main(int argc, char *argv[])
7878
string proxyUserName;
7979
string proxyPassword;
8080

81+
/*
82+
* For internal testing
83+
*/
84+
bool isTest = s_cmdOptionExists(argv, argv + argc, "--test");
85+
int expectedMessageCount = 5;
86+
8187
std::shared_ptr<SecureTunnel> secureTunnel;
8288

8389
/*********************** Parse Arguments ***************************/
@@ -267,6 +273,14 @@ int main(int argc, char *argv[])
267273
fprintf(stdout, "Data Receive Complete in Destination\n");
268274
fprintf(stdout, "Sending response message:\"%s\"\n", returnMessage.c_str());
269275
secureTunnel->SendData(ByteCursorFromCString(returnMessage.c_str()));
276+
if (isTest)
277+
{
278+
expectedMessageCount--;
279+
if (expectedMessageCount == 0)
280+
{
281+
exit(0);
282+
}
283+
}
270284
break;
271285
case AWS_SECURE_TUNNELING_SOURCE_MODE:
272286
fprintf(stdout, "Data Receive Complete in Source\n");

0 commit comments

Comments
 (0)