forked from apigee/devrel
-
Notifications
You must be signed in to change notification settings - Fork 0
/
pipeline.sh
executable file
·70 lines (54 loc) · 2.14 KB
/
pipeline.sh
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
#!/bin/sh
# Copyright 2020 Google LLC
#
# Licensed under the Apache License, Version 2.0 (the "License");
# you may not use this file except in compliance with the License.
# You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
set -e
SCRIPTPATH="$( cd "$(dirname "$0")" || exit >/dev/null 2>&1 ; pwd -P )"
TEMP_DIR="$SCRIPTPATH"/tmp
mkdir -p "$SCRIPTPATH"/tmp
curl https://badssl.com/certs/badssl.com-client.p12 -o "$TEMP_DIR"/badssl.com-client.p12
cp "$SCRIPTPATH"/edge.template.json "$SCRIPTPATH"/edge.json
export PATH="$PATH:$SCRIPTPATH/../../tools/apigee-sackmesser/bin"
# Apigee Edge
TEST_BASEPATH='/badssl/v0'
sed -i.bak "s/@ENV_NAME@/$APIGEE_ENV/g" "$SCRIPTPATH"/edge.json && rm "$SCRIPTPATH"/edge.json.bak
sed -i.bak "s|@CERT_PATH@|$TEMP_DIR/badssl.com-client.p12|g" "$SCRIPTPATH"/edge.json && rm "$SCRIPTPATH"/edge.json.bak
sackmesser deploy \
--apigeeapi \
--description "mTLS badssl demo" \
-d "$SCRIPTPATH" \
-n mtls-demo \
-b "$TEST_BASEPATH" \
-u "$APIGEE_USER" \
-p "$APIGEE_PASS" \
-o "$APIGEE_ORG" \
-e "$APIGEE_ENV"
TEST_HOST="$APIGEE_ORG-$APIGEE_ENV.apigee.net"
(cd "$SCRIPTPATH" && TEST_HOST=$TEST_HOST TEST_BASEPATH=$TEST_BASEPATH npm run test)
# Apigee X
APIGEE_TOKEN=$(gcloud auth print-access-token);
cp "$SCRIPTPATH"/edge.template.json "$SCRIPTPATH"/edge.json
sed -i.bak "s/@ENV_NAME@/$APIGEE_X_ENV/g" "$SCRIPTPATH"/edge.json && rm "$SCRIPTPATH"/edge.json.bak
sed -i.bak "s|@CERT_PATH@|$TEMP_DIR/badssl.com-client.p12|g" "$SCRIPTPATH"/edge.json && rm "$SCRIPTPATH"/edge.json.bak
sackmesser deploy \
--googleapi \
--description "mTLS badssl demo" \
-d "$SCRIPTPATH" \
-n mtls-demo \
-b "$TEST_BASEPATH" \
-t "$APIGEE_TOKEN" \
-o "$APIGEE_X_ORG" \
-e "$APIGEE_X_ENV"
(cd "$SCRIPTPATH" && TEST_HOST=$APIGEE_X_HOSTNAME TEST_BASEPATH=$TEST_BASEPATH npm run test)
# cleanup
rm "$SCRIPTPATH"/edge.json