forked from symfony/symfony-standard
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathYakefile
63 lines (51 loc) · 1.94 KB
/
Yakefile
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
php: docker-compose exec php entrypoint php $CMD
console: $BIN php ./bin/console -e=$ENV $CMD
composer: "docker run --rm -it
-v ~/.ssh:/home/php/.ssh
-v $(pwd):/opt
-v ~/.docker-composer:/home/php/.composer
amsdard/composer composer --ignore-platform-reqs --optimize-autoloader $CMD"
nodejs: "docker run -it --rm -w /usr/src/app
-v $(pwd):/usr/src/app -v ~/.docker-node-cache:/home/node/cache -v ~/.ssh:/home/node/.ssh
amsdard/node $CMD"
# aliases
npm: $BIN node npm $CMD
yarn: $BIN node yarn $CMD
bower: $BIN node bower $CMD
grunt: $BIN node grunt $CMD
gulp: $BIN node gulp $CMD
# Build & push to hub.amsdard.io, ie: `yake push php`
push:
- $BIN build $CMD
- docker-compose push $CMD
# Up project.
up:
- docker-compose up -d --force-recreate $CMD
# Starts all project containers.
start: docker-compose start $CMD
# build container `yake build php`
build: docker-compose build $CMD
# Stops all project containers.
stop: docker-compose stop $CMD
# List all project containers.
ps: docker-compose ps $CMD
# Deletes all project containers.
down: docker-compose down -v --rmi=all $CMD
# Seeds database with sample user and site - for one time use per deployment.
populate:
# Fresh installation process - to be run one time
configure:
- "[[ -f docker/php/config.env ]] && exit"
- md5app=$(hash md5sum 2>/dev/null && echo "md5sum" || echo "md5")
- SECRET=$(date|$md5app | head -c 20)
- for file in ./docker/*/*.dist; do newfile="$(dirname $file)/config.env" && cp "$file" "$newfile"; done
- perl -pi -w -e "s/{secret}/$SECRET$SECRET/g;" ./docker/php/config.env
configure-docker:
- perl -pi -w -e "s/{projectname}/$PROJECTNAME/g" ./docker-compose.yml
- perl -pi -w -e "s/{projectname}/$PROJECTNAME/g" ./deploy/rancher/docker-compose.yml
- perl -pi -w -e "s/{projectname}/$PROJECTNAME/g" ./deploy/prod/docker-compose.yml
# default values
_config:
FORCE_ALL: 1
ENV: dev
PROJECTNAME: ${PWD##*/}