3 name: Check messages.po
6 - name: Run default Xgettext
7 image: friendicaci/transifex
9 - ./bin/run_xgettext.sh
12 image: friendicaci/transifex
24 - ./bin/composer.phar run lint
34 - ./bin/composer.phar run lint
44 - ./bin/composer.phar run lint
55 - name: Install dependencies
58 - ./bin/composer.phar run cs:install
59 - name: Run coding standards check
60 image: friendicaci/php-cs
62 - export CHANGED_FILES="$(git diff --name-status ${DRONE_COMMIT_BEFORE}..${DRONE_COMMIT_AFTER} | grep ^A | cut -f2)"
71 image: meltwater/drone-cache:dev
75 cache_key: '{{ .Repo.Name }}_php73_{{ arch }}_{{ os }}'
76 archive_format: "gzip"
82 - name: Composer install
83 image: friendicaci/php7.3:php7.3.28
85 - export COMPOSER_HOME=.composer
86 - ./bin/composer.phar validate
87 - ./bin/composer.phar install --prefer-dist
89 image: meltwater/drone-cache:dev
93 cache_key: '{{ .Repo.Name }}_php73_{{ arch }}_{{ os }}'
94 archive_format: "gzip"
100 - name: Test Friendica
101 image: friendicaci/php7.3:php7.3.28
103 MYSQL_HOST: "mariadb"
105 MYSQL_DATABASE: "test"
106 MYSQL_PASSWORD: "test"
109 MEMCACHED_HOST: "memcached"
110 MEMCACHE_HOST: "memcached"
112 - cp config/local-sample.config.php config/local.config.php
113 - if ! bin/wait-for-connection $MYSQL_HOST $MYSQL_PORT 300; then echo "[ERROR] Waited 300 seconds, no response" >&2; exit 1; fi
114 - mysql -h$MYSQL_HOST -P$MYSQL_PORT -p$MYSQL_PASSWORD -u$MYSQL_USER $MYSQL_DATABASE < database.sql
115 - phpunit --configuration tests/phpunit.xml
119 image: mariadb:latest
121 MYSQL_ALLOW_EMPTY_PASSWORD: "true"
122 MYSQL_DATABASE: "test"
123 MYSQL_PASSWORD: "test"
137 path: /tmp/drone-cache
144 - name: Restore cache
145 image: meltwater/drone-cache:dev
147 backend: "filesystem"
149 cache_key: '{{ .Repo.Name }}_php74_{{ arch }}_{{ os }}'
150 archive_format: "gzip"
156 - name: Composer install
157 image: friendicaci/php7.4:php7.4.18
159 - export COMPOSER_HOME=.composer
160 - ./bin/composer.phar validate
161 - ./bin/composer.phar install --prefer-dist
162 - name: Rebuild cache
163 image: meltwater/drone-cache:dev
165 backend: "filesystem"
167 cache_key: '{{ .Repo.Name }}_php74_{{ arch }}_{{ os }}'
168 archive_format: "gzip"
174 - name: Test Friendica
175 image: friendicaci/php7.4:php7.4.18
177 MYSQL_HOST: "mariadb"
179 MYSQL_DATABASE: "test"
180 MYSQL_PASSWORD: "test"
183 MEMCACHED_HOST: "memcached"
184 MEMCACHE_HOST: "memcached"
185 XDEBUG_MODE: "coverage"
188 - cp config/local-sample.config.php config/local.config.php
189 - if ! bin/wait-for-connection $MYSQL_HOST $MYSQL_PORT 300; then echo "[ERROR] Waited 300 seconds, no response" >&2; exit 1; fi
190 - mysql -h$MYSQL_HOST -P$MYSQL_PORT -p$MYSQL_PASSWORD -u$MYSQL_USER $MYSQL_DATABASE < database.sql
191 - phpunit --configuration tests/phpunit.xml --coverage-clover clover.xml
193 image: plugins/codecov
196 - friendica/friendica
199 from_secret: codecov-token
205 image: mariadb:latest
207 MYSQL_ALLOW_EMPTY_PASSWORD: "true"
208 MYSQL_DATABASE: "test"
209 MYSQL_PASSWORD: "test"
225 - name: Restore cache
226 image: meltwater/drone-cache:dev
228 backend: "filesystem"
230 cache_key: '{{ .Repo.Name }}_php80_{{ arch }}_{{ os }}'
231 archive_format: "gzip"
237 - name: Composer install
238 image: friendicaci/php8.0:php8.0.5
240 - export COMPOSER_HOME=.composer
241 - ./bin/composer.phar validate
242 - ./bin/composer.phar install --prefer-dist
243 - name: Rebuild cache
244 image: meltwater/drone-cache:dev
246 backend: "filesystem"
248 cache_key: '{{ .Repo.Name }}_php80_{{ arch }}_{{ os }}'
249 archive_format: "gzip"
255 - name: Test Friendica
256 image: friendicaci/php8.0:php8.0.5
258 MYSQL_HOST: "mariadb"
260 MYSQL_DATABASE: "test"
261 MYSQL_PASSWORD: "test"
264 MEMCACHED_HOST: "memcached"
265 MEMCACHE_HOST: "memcached"
267 - cp config/local-sample.config.php config/local.config.php
268 - if ! bin/wait-for-connection $MYSQL_HOST $MYSQL_PORT 300; then echo "[ERROR] Waited 300 seconds, no response" >&2; exit 1; fi
269 - mysql -h$MYSQL_HOST -P$MYSQL_PORT -p$MYSQL_PASSWORD -u$MYSQL_USER $MYSQL_DATABASE < database.sql
270 - phpunit --configuration tests/phpunit.xml
274 image: mariadb:latest
276 MYSQL_ALLOW_EMPTY_PASSWORD: "true"
277 MYSQL_DATABASE: "test"
278 MYSQL_PASSWORD: "test"