-
Notifications
You must be signed in to change notification settings - Fork 4
/
Copy pathMakefile
68 lines (56 loc) · 1.69 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
65
66
67
68
# Go parameters
GOCMD=go
GOBUILD=$(GOCMD) build
# Docker parameters
DOCKER=docker
DOCKERBUILD=$(DOCKER) build
DOCKERRUN=$(DOCKER) run
DOCKERRM=$(DOCKER) rm
DOCKERRUNCOMMON=$(DOCKERRUN) -d
BASE=github.com/carlescere/microservices
BIN=bin/
# Bookings
BOOKINGS=bookings
BOOKINGSDOCKERTAG=bookings
BOOKINGSDOCKERNAME=bookings
BOOKINGSBIN=$(BOOKINGS)/$(BIN)/bookings
BOOKINGSMAIN=$(BOOKINGS)/bookings.go
# Movies
MOVIES=movies
MOVIESDOCKERTAG=movies
MOVIESDOCKERNAME=movies
MOVIESBIN=$(MOVIES)/$(BIN)/movies
MOVIESMAIN=$(MOVIES)/movies.go
# Showtimes
SHOWTIMES=showtimes
SHOWTIMESDOCKERTAG=showtimes
SHOWTIMESDOCKERNAME=showtimes
SHOWTIMESBIN=$(SHOWTIMES)/$(BIN)/showtimes
SHOWTIMESMAIN=$(SHOWTIMES)/showtimes.go
# Users
USERS=users
USERSDOCKERTAG=users
USERSDOCKERNAME=users
USERSBIN=$(USERS)/$(BIN)/users
USERSMAIN=$(USERS)/users.go
all: build docker
build:
$(GOBUILD) -o $(BOOKINGSBIN) $(BOOKINGSMAIN)
$(GOBUILD) -o $(MOVIESBIN) $(MOVIESMAIN)
$(GOBUILD) -o $(SHOWTIMESBIN) $(SHOWTIMESMAIN)
$(GOBUILD) -o $(USERSBIN) $(USERSMAIN)
docker:
$(DOCKERBUILD) -t $(BOOKINGSDOCKERTAG) $(BOOKINGS)
$(DOCKERBUILD) -t $(MOVIESDOCKERTAG) $(MOVIES)
$(DOCKERBUILD) -t $(SHOWTIMESDOCKERTAG) $(SHOWTIMES)
$(DOCKERBUILD) -t $(USERSDOCKERTAG) $(USERS)
stop:
$(DOCKERRM) -f $(BOOKINGSDOCKERNAME)
$(DOCKERRM) -f $(MOVIESDOCKERNAME)
$(DOCKERRM) -f $(SHOWTIMESDOCKERNAME)
$(DOCKERRM) -f $(USERSDOCKERNAME)
run:
$(DOCKERRUNCOMMON) --name $(BOOKINGSDOCKERNAME) -p 8003:8003 $(BOOKINGSDOCKERTAG)
$(DOCKERRUNCOMMON) --name $(MOVIESDOCKERNAME) -p 8001:8001 $(MOVIESDOCKERTAG)
$(DOCKERRUNCOMMON) --name $(SHOWTIMESDOCKERNAME) -p 8002:8002 $(SHOWTIMESDOCKERTAG)
$(DOCKERRUNCOMMON) --name $(USERSDOCKERNAME) -p 8000:8000 $(USERSDOCKERTAG)