-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathdeploy.sh
96 lines (82 loc) · 2.29 KB
/
deploy.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
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
#!/bin/bash
###############################################
# Cross Region CloudFormation for Event Engine
#
# 2021-09-24 Nate Bachmeier - Created.
###############################################
if [ -z "$S3_ASSET_BUCKET" ]
then
if [ -z "$1" ]
then
echo "Usage: $0 the-bucket-name"
exit 1
fi
export S3_ASSET_BUCKET=$1
fi
# No trailing slashs!
if [ -z "$S3_ASSET_PREFIX" ]
then
export S3_ASSET_PREFIX=cfn-multiregional-orchestration
fi
# EventEngine requires we use the replicated bucket
export TEMPLATE_ASSET_BUCKET=`echo ${S3_ASSET_BUCKET/us-east-1/us-west-1}`
echo ==========================
echo Initializing Deployment
echo ==========================
echo "Asset Upload Bucket: ${S3_ASSET_BUCKET}"
echo "........with prefix: ${S3_ASSET_PREFIX}"
echo "Deployment Bucket : ${TEMPLATE_ASSET_BUCKET}"
mkdir -p packages
mkdir -p bin/
rm -f bin/*.zip
function make_pkg {
echo ==========================
echo Making $1.zip
echo ==========================
pip install -t packages/$1 -r src/$1/requirements.txt
pushd packages/$1
zip -r ../../bin/$1.zip .
popd
echo "adding custom python sources"
pushd src/$1
zip -g ../../bin/$1.zip *.py
popd
}
make_pkg preaction
make_pkg launch
make_pkg monitor
make_pkg complete
echo ==========================
echo Synthesize the code
echo ==========================
##aws s3 rm --recursive s3://$S3_ASSET_BUCKET/$S3_ASSET_PREFIX/
rm -rf cdk.out/*
cdk synth --app ./app.py
echo ==========================
echo Zip codegen components
echo ==========================
for f in `ls cdk.out/ | grep asset | grep -v .zip`
do
pushd cdk.out/$f
zip -r ../$f.zip *
popd
done
echo ==========================
echo Fix the parameters for Event Engine
echo ==========================
./ee-util.py
cat cdk.out/EventEngine.template.json | jq '.Parameters'
echo ==========================
echo Finally, upload everything
echo ==========================
if [ -z "$CI_JOB_TOKEN" ]
then
echo aws s3 cp --recursive cdk.out/ s3://$S3_ASSET_BUCKET/$S3_ASSET_PREFIX/
aws s3 cp --recursive cdk.out/ s3://$S3_ASSET_BUCKET/$S3_ASSET_PREFIX/
else
pushd cdk.out
zip -r ../deployer.zip .
popd
version=`date +%Y.%m.%d`
curl --header "JOB-TOKEN: $CI_JOB_TOKEN" --upload-file ./deployer.zip "${CI_API_V4_URL}/projects/${CI_PROJECT_ID}/packages/generic/${CI_COMMIT_BRANCH}/${version}/deployer.zip"
fi