This repository has been archived by the owner on Mar 9, 2021. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 14
/
.ahoy.yml
160 lines (132 loc) · 5.07 KB
/
.ahoy.yml
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
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
---
ahoyapi: v2
commands:
up:
usage: Build project.
cmd: docker-compose up -d "$@";
down:
usage: Delete project (CAUTION).
cmd: |
if [ "$1" == "y" ]; then
docker-compose down --volumes
else
ahoy confirm "Running this command will destroy your current site, database and build? Are you sure you didn't mean ahoy stop?" &&
# Run this if confirm returns true
docker-compose down --volumes ||
# Run this if confirm returns false
echo "OK, probably a wise choice..."
fi
build:
usage: Build project.
cmd: docker-compose up -d --build "$@" && ahoy govcms-deploy && ahoy info
cli:
usage: Start a shell inside cli container.
cmd: docker-compose exec cli bash
run:
usage: Run command inside cli container.
cmd: docker-compose exec -T cli bash -c "$*"
govcms-deploy:
usage: Runs deployment commands (config import, updb, cr, set up file_stage_proxy)
cmd: |
docker-compose exec -T cli /app/vendor/bin/govcms-db-update && \
docker-compose exec -T cli /app/vendor/bin/govcms-config-import && \
docker-compose exec -T cli /app/vendor/bin/govcms-cache-rebuild && \
docker-compose exec -T cli /app/vendor/bin/govcms-enable_modules
drush:
usage: Run drush commands in cli container.
cmd: docker-compose exec -T cli drush "$@"
logs:
usage: Show Docker logs.
cmd: docker-compose logs "$@"
ps:
usage: List running Docker containers.
cmd: docker-compose ps
restart:
usage: Restart Docker containers.
cmd: docker-compose restart
stop:
usage: Stop Docker containers.
cmd: docker-compose stop "$@"
install:
usage: Install the profile.
cmd: docker-compose exec -T cli drush si -y govcms "$@"; ahoy govcms-deploy
login:
usage: Login to a website.
cmd: docker-compose exec -T cli drush uli "$@"
cex:
usage: Export site configuration to default location.
cmd: docker-compose exec -T cli drush cex sync
cim:
usage: Import site configuration. Will perform partial configuration overrides if a parameter is provided.
cmd: |
if [ -f ./config/default/system.site.yml ]; then
configUuid="$(cat ./config/default/system.site.yml | grep uuid | tail -c +7 | head -c 36)"
docker-compose exec -T cli drush config-set system.site uuid $configUuid
fi
# No support for config import for entire site install.
docker-compose exec -T cli drush ev '\Drupal::entityManager()->getStorage("shortcut_set")->load("default")->delete();'
docker-compose exec -T cli drush pm-uninstall shortcut
if [ "$#" -eq 0 ]
then
docker-compose exec -T cli drush cim sync
else
docker-compose exec -T cli drush cim "$@" --partial
fi
mysql-import:
usage: Pipe in a sql file. `ahoy mysql-import local.sql`
cmd: |
if [ -e "$@" ] ; then
docker-compose exec cli bash -c 'drush sql-drop' &&
docker-compose exec -T cli bash -c 'drush sql-cli' < "$@"
else echo "Provided sql file" "$@" "does not exist"
fi
mysql-dump:
usage: Dump data out into a file. `ahoy mysql-dump local.sql`
cmd: docker-compose exec -T cli bash -c 'drush sql-dump --ordered-dump' > "$@"
lint:
usage: Lint code
cmd: docker-compose exec -T test lint-theme
test-behat:
usage: Run Behat tests.
cmd: docker-compose exec -T test behat "$@"
test-phpunit:
usage: Run PHPUnit tests.
cmd: docker-compose exec -T test phpunit "$@"
pull:
usage: Pull latest docker images.
cmd: docker image ls --format \"{{.Repository}}:{{.Tag}}\" | grep govcms8lagoon/ | grep -v none | xargs -n1 docker pull | cat
refresh-db:
usage: Refresh the database container with latest nightly dump.
cmd: |
ahoy confirm "Running this command will replace your current database. Are you sure?" &&
# Run this if confirm returns true
cat .env | grep MARIADB_DATA_IMAGE | cut -c20- | xargs -n1 docker pull && docker-compose rm -f -s -v mariadb && ahoy up ||
# Run this if confirm returns false
echo "OK, probably a wise choice..."
audit-site:
usage: Run site audit
cmd: docker-compose exec -T test drutiny profile:run ci @self "$@"
debug:
usage: Enable debug configuration.
cmd: |
{ ahoy run "php -v|grep -q Xdebug" && echo "Debug is already enabled"; } \
|| { export XDEBUG_ENABLE="true" && ahoy up cli test php && ahoy run "php -v|grep -q Xdebug" && echo "Enabled debug configuration. Use 'ahoy up' to disable."; }
info:
usage: Print information about this project.
cmd: |
echo "Project : " $(ahoy run "echo \$LAGOON_PROJECT")
echo "Site local URL : " $(ahoy run "echo \$LOCALDEV_URL")
echo "DB port on host : " $(docker port $(docker-compose ps -q mariadb) 3306 | cut -d : -f 2)
if [ "$1" ]; then
echo "One-time login : " $(ahoy login -- --no-browser)
fi
confirm:
cmd: |
read -r -p "$@ [y/N] " response
if [[ $response = y ]]
then
true
else
false
fi
hide: true