-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
64 lines (50 loc) · 1.34 KB
/
Makefile
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
SHELL=/bin/bash
DEST?=
HUBOT_SCRIPTS_LOC=hubot-scripts
NAME=balanced/wubot
VERSION=`git describe`
CORE_VERSION=HEAD
.PHONY: all install secrets patch-eb-run guard-%
guard-%:
@ if [ "${${*}}" == "" ]; then \
echo "$* is required to be set!"; \
echo "Example: make install $*='\"/home/some/path/here\"'"; \
exit 1; \
fi
# Install Hubot Scripts
install: guard-DEST
if [ ! -d "$(DEST)" ]; then mkdir -p "$(DEST)"; fi
cp -pr ./$(HUBOT_SCRIPTS_LOC)/* $(DEST)
# docker build
all: base scripts
base:
env COPY_EXTENDED_ATTRIBUTES_DISABLE=true COPYFILE_DISABLE=true \
tar cvf docker/base.tar --exclude '\._*' \
-C docker/build \
ansible_hosts \
ansible-requirements.yml \
wubot.yml \
wubot_overrides.yml
# docker commands
build:
docker build -t $(NAME):$(VERSION) --rm docker
run: secrets
docker run --env-file ./secrets.env -d balanced/wubot
tag_latest:
docker tag $(NAME):$(VERSION) $(NAME):latest
push:
docker push $(NAME):$(VERSION)
# deploy commands
ifeq ("$(strip $(DEST))", "")
secrets:
cd deploy && \
ansible-playbook -c local -i 'localhost,' assemble-secrets.yml \
-e secrets_dir="."
else
secrets:
cd deploy && \
ansible-playbook -c local -i 'localhost,' assemble-secrets.yml \
-e secrets_dir="$(DEST)"
endif
patch-eb-run:
cd deploy && ansible-playbook -vc local -i 'localhost,' patch-eb-scripts.yml