|
3 | 3 | # build
|
4 | 4 | DOCKER_IMAGE_NAME=jwt-nginx
|
5 | 5 | docker build -t ${DOCKER_IMAGE_NAME} .
|
6 |
| -CONTAINER_ID=$(docker run -itd ${DOCKER_IMAGE_NAME} sh) |
| 6 | +CONTAINER_ID=$(docker run -d -p 8000:8000 ${DOCKER_IMAGE_NAME}) |
7 | 7 |
|
8 |
| -# setup test |
9 |
| -rm -rf ./lib |
10 |
| -rm -rf ./modules |
11 |
| -mkdir modules |
12 |
| -DOCKER_TEST_IMAGE_NAME=jwt-nginx-test |
13 |
| -docker build -t ${DOCKER_TEST_IMAGE_NAME} test/. |
14 |
| -CONTAINER_TEST_ID=$(docker run -p 8000:8000 -itd ${DOCKER_TEST_IMAGE_NAME} sh) |
15 |
| -docker cp ${CONTAINER_ID}:/usr/local/lib . |
16 |
| -docker cp lib ${CONTAINER_TEST_ID}:/usr/local |
17 |
| -docker cp ${CONTAINER_ID}:/root/dl/nginx/objs/ngx_http_auth_jwt_module.so modules/. |
18 |
| -docker cp modules/ngx_http_auth_jwt_module.so ${CONTAINER_TEST_ID}:/usr/lib64/nginx/modules/. |
19 |
| -docker cp resources/test-jwt-nginx.conf ${CONTAINER_TEST_ID}:/etc/nginx/conf.d/test-jwt-nginx.conf |
20 |
| -docker cp resources/nginx.conf ${CONTAINER_TEST_ID}:/etc/nginx/. |
21 |
| - |
22 |
| -docker exec -d ${CONTAINER_TEST_ID} /bin/bash -c "export LD_LIBRARY_PATH=/usr/local/lib && nginx" |
| 8 | +MACHINE_IP=`docker-machine ip` |
23 | 9 |
|
| 10 | +RED='\033[01;31m' |
| 11 | +GREEN='\033[01;32m' |
| 12 | +NONE='\033[00m' |
24 | 13 |
|
| 14 | +TEST_INSECURE_EXPECT_200=`curl -o /dev/null --silent --head --write-out '%{http_code}\n' http://${MACHINE_IP}:8000` |
| 15 | +if [ "$TEST_INSECURE_EXPECT_200" -eq "200" ];then |
| 16 | + echo -e "${GREEN}Insecure test pass ${TEST_INSECURE_EXPECT_200}${NONE}"; |
| 17 | +else |
| 18 | + echo -e "${RED}Insecure test fail ${TEST_INSECURE_EXPECT_200}${NONE}"; |
| 19 | +fi |
25 | 20 |
|
| 21 | +TEST_SECURE_EXPECT_302=`curl -o /dev/null --silent --head --write-out '%{http_code}\n' http://${MACHINE_IP}:8000/secure/index.html` |
| 22 | +if [ "$TEST_SECURE_EXPECT_302" -eq "302" ];then |
| 23 | + echo -e "${GREEN}Secure test without jwt pass ${TEST_SECURE_EXPECT_302}${NONE}"; |
| 24 | +else |
| 25 | + echo -e "${RED}Secure test without jwt fail ${TEST_SECURE_EXPECT_302}${NONE}"; |
| 26 | +fi |
26 | 27 |
|
| 28 | +TEST_SECURE_EXPECT_200=`curl -o /dev/null --silent --head --write-out '%{http_code}\n' http://${MACHINE_IP}:8000/secure/index.html -H 'cache-control: no-cache' --cookie "rampartjwt=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJzb21lLWxvbmctdXVpZCIsImZpcnN0TmFtZSI6ImhlbGxvIiwgImxhc3ROYW1lIjoid29ybGQiLCJlbWFpbEFkZHJlc3MiOiJoZWxsb3dvcmxkQGV4YW1wbGUuY29tIiwgInJvbGVzIjpbInRoaXMiLCJ0aGF0IiwidGhlb3RoZXIiXSwgImlzcyI6Imlzc3VlciIsInBlcnNvbklkIjoiNzViYjNjYzctYjkzMy00NGYwLTkzYzYtMTQ3YjA4MmZhZGI1IiwgImV4cCI6MTkwODgzNTIwMCwiaWF0IjoxNDg4ODE5NjAwLCJ1c2VybmFtZSI6ImhlbGxvLndvcmxkIn0.TvDD63ZOqFKgE-uxPDdP5aGIsbl5xPKz4fMul3Zlti4;PassportKey=eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJzdWIiOiJzb21lLWxvbmctdXVpZCIsImZpcnN0TmFtZSI6ImhlbGxvIiwgImxhc3ROYW1lIjoid29ybGQiLCJlbWFpbEFkZHJlc3MiOiJoZWxsb3dvcmxkQGV4YW1wbGUuY29tIiwgInJvbGVzIjpbInRoaXMiLCJ0aGF0IiwidGhlb3RoZXIiXSwgImlzcyI6Imlzc3VlciIsInBlcnNvbklkIjoiNzViYjNjYzctYjkzMy00NGYwLTkzYzYtMTQ3YjA4MmZhZGI1IiwgImV4cCI6MTkwODgzNTIwMCwiaWF0IjoxNDg4ODE5NjAwLCJ1c2VybmFtZSI6ImhlbGxvLndvcmxkIn0.TvDD63ZOqFKgE-uxPDdP5aGIsbl5xPKz4fMul3Zlti4"` |
| 29 | +if [ "$TEST_SECURE_EXPECT_200" -eq "200" ];then |
| 30 | + echo -e "${GREEN}Secure test with jwt pass ${TEST_SECURE_EXPECT_200}${NONE}"; |
| 31 | +else |
| 32 | + echo -e "${RED}Secure test with jwt fail ${TEST_SECURE_EXPECT_200}${NONE}"; |
| 33 | +fi |
0 commit comments