forked from IABTechLab/uid2-operator
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile.nitro
90 lines (67 loc) · 4.03 KB
/
Makefile.nitro
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
CONFIG_DIR=/etc/uid2operator
DATA_DIR=/opt/uid2operator
.PHONY: all
all: build_eif
install: ./build/uid2operator.eif ./build/dante-1.4.3/sockd ./scripts/aws/start.sh ./scripts/aws/stop.sh ./scripts/aws/allocator.template.yaml ./scripts/aws/proxies.host.yaml ./scripts/aws/uid2operator.service ./build/vsockpx
mkdir -p $(CONFIG_DIR)
mkdir -p $(DATA_DIR)
cp ./scripts/aws/proxies.host.yaml $(CONFIG_DIR)/proxy.yaml
cp ./scripts/aws/allocator.template.yaml $(CONFIG_DIR)/
cp ./build/uid2operator.eif $(DATA_DIR)/
cp ./scripts/aws/start.sh $(DATA_DIR)/start.sh
cp ./scripts/aws/stop.sh $(DATA_DIR)/stop.sh
cp ./scripts/aws/uid2operator.service /etc/systemd/system/
cp ./build/vsockpx /usr/bin/
cp ./scripts/aws/sockd.conf /etc/
cp ./build/dante-1.4.3/sockd/sockd /usr/bin
chmod +x /usr/bin/vsockpx
uninstall:
rm -rf $(CONFIG_DIR)
rm -rf $(DATA_DIR)
rm /usr/bin/vsockpx
rm /etc/systemd/system/uid2operator.service
clean:
rm -rf build
./build/dante-1.4.3/sockd:
cd build; wget https://www.inet.no/dante/files/dante-1.4.3.tar.gz
cd build; tar -xf dante-1.4.3.tar.gz
cd build/dante-1.4.3; ./configure
cd build/dante-1.4.3; make
build_eif: uid2operator.eif euidoperator.eif
euidoperator.eif: build_artifacts loki_override build/proxies.nitro.yaml build/entrypoint.sh build/vsockpx build/Dockerfile build/configs build/load_config.py build/make_config.py
cd build; docker build -t euidoperator . --build-arg IDENTITY_SCOPE='EUID' --build-arg JAR_VERSION=`cat package.version` --build-arg IMAGE_VERSION=`cat package.version`-`git show --format="%h" --no-patch`;
cd build; nitro-cli build-enclave --docker-uri euidoperator --output-file euidoperator.eif
uid2operator.eif: build_artifacts loki_override build/proxies.nitro.yaml build/entrypoint.sh build/vsockpx build/Dockerfile build/configs build/load_config.py build/make_config.py
cd build; docker build -t uid2operator . --build-arg JAR_VERSION=`cat package.version` --build-arg IMAGE_VERSION=`cat package.version`-`git show --format="%h" --no-patch`;
cd build; nitro-cli build-enclave --docker-uri uid2operator --output-file uid2operator.eif
build/load_config.py: ./scripts/aws/load_config.py
cp ./scripts/aws/load_config.py ./build/
build/make_config.py: ./scripts/aws/make_config.py
cp ./scripts/aws/make_config.py ./build/
build/configs: build/conf/prod-uid2-config.json build/conf/integ-uid2-config.json build/conf/prod-euid-config.json build/conf/integ-euid-config.json
build/conf/prod-uid2-config.json: build_artifacts ./scripts/aws/conf/prod-uid2-config.json
cp ./scripts/aws/conf/prod-uid2-config.json ./build/conf/prod-uid2-config.json
build/conf/prod-euid-config.json: build_artifacts ./scripts/aws/conf/prod-euid-config.json
cp ./scripts/aws/conf/prod-euid-config.json ./build/conf/prod-euid-config.json
build/conf/integ-uid2-config.json: build_artifacts ./scripts/aws/conf/integ-uid2-config.json
cp ./scripts/aws/conf/integ-uid2-config.json ./build/conf/integ-uid2-config.json
build/conf/integ-euid-config.json: build_artifacts ./scripts/aws/conf/integ-euid-config.json
cp ./scripts/aws/conf/integ-euid-config.json ./build/conf/integ-euid-config.json
loki_override: build/loki_override.stamp
build/loki_override.stamp build/conf/logback.loki.xml: ./scripts/aws/conf/logback.loki.xml
cp ./scripts/aws/conf/logback.loki.xml build/conf/
touch ./build/loki_override.stamp
build/Dockerfile: build_artifacts ./scripts/aws/Dockerfile
cp ./scripts/aws/Dockerfile ./build/
build/proxies.nitro.yaml: build_artifacts ./scripts/aws/proxies.nitro.yaml
cp ./scripts/aws/proxies.nitro.yaml ./build/
build/entrypoint.sh: build_artifacts
cp ./scripts/aws/entrypoint.sh ./build/
build_artifacts: build/build_artifacts.stamp
build/build_artifacts.stamp build/vsockpx build/libjnsm.so: Dockerfile.nitro.builder
docker build -t uid2-nitro-builder -f Dockerfile.nitro.builder .
docker create --name uid2-nitro-builder uid2-nitro-builder
docker cp uid2-nitro-builder:/build .
docker rm uid2-nitro-builder
touch build/build_artifacts.stamp
.PHONY: install uninstall setup_nitro build_artifacts build_eif loki_override build/configs