forked from Squidex/squidex
-
Notifications
You must be signed in to change notification settings - Fork 1
/
Copy pathMakefile
47 lines (38 loc) · 1.32 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
MODULE := "homer-squidex"
PROJECT_DIR := $(dir $(abspath $(lastword $(MAKEFILE_LIST))))
STAGE ?= "prod"
DOCKER_SERVER ?= 597764168253.dkr.ecr.us-east-1.amazonaws.com
DOCKER_IMAGE ?= ${DOCKER_SERVER}/homer-squidex
VERSION ?= $(shell git branch --show-current)-$(shell git rev-parse --short HEAD)-TEST
# ifndef AWS_PROFILE
# $(error AWS_PROFILE is not set)
# endif
# Get account ID from AWS Account Id)
# AWS_ACCOUNT_ID := $(shell $(SCRIPTS_DIR)/get_aws_account_id.sh)
# TERRAFORM_WORKSPACE ?= "$(MODULE)-$(STAGE)-$(AWS_ACCOUNT_ID)"
# lists all available targets
list:
@sh -c "$(MAKE) -p no_targets__ | \
awk -F':' '/^[a-zA-Z0-9][^\$$#\/\\t=]*:([^=]|$$)/ {split(\$$1,A,/ /);\
for(i in A)print A[i]}' | \
grep -v '__\$$' | \
grep -v 'make\[1\]' | \
grep -v 'Makefile' | \
sort"
# required for list
no_targets__:
build: info
docker build . -t "${DOCKER_IMAGE}"
# docker image prune -f
deploy: build _login
docker tag ${DOCKER_IMAGE}:latest ${DOCKER_IMAGE}:${VERSION}
docker push ${DOCKER_IMAGE}:${VERSION}
@echo "DOCKER_TAG=${VERSION}" >> $GITHUB_ENV
_login:
aws ecr get-login-password --region us-east-1 | docker login --username AWS --password-stdin ${DOCKER_SERVER}
info:
@echo " project dir: $(PROJECT_DIR)"
@echo " stage: $(STAGE)"
@echo " docker image: $(DOCKER_IMAGE)"
@echo " version: $(VERSION)"
@echo