]> git.immae.eu Git - github/wallabag/wallabag.git/commitdiff
Replace ant with Makefile 3398/head
authorKevin Decherf <kevin@kdecherf.com>
Wed, 1 Nov 2017 12:22:38 +0000 (13:22 +0100)
committerKevin Decherf <kevin@kdecherf.com>
Sun, 19 Nov 2017 11:33:21 +0000 (12:33 +0100)
Fixes #1735

Signed-off-by: Kevin Decherf <kevin@kdecherf.com>
.travis.yml
Makefile
build.xml [deleted file]

index 6b279ed676c149a35d7fbe4b855ac6de67ff75a0..42fbb96614835051dd31aa6b40884d3059f33025 100644 (file)
@@ -70,7 +70,7 @@ before_install:
 
 script:
     - travis_wait bash composer install -o  --no-interaction --no-progress --prefer-dist
-    - ant prepare-$DB
+    - make prepare DB=$DB
 
     - echo "travis_fold:start:migrations"
     - php bin/console doctrine:migrations:migrate --no-interaction --env=test
index ffbe102a045c05f09ca3201322592e3ff153a111..9e44edc6a1c1448f1d7dd8e617cacda0ca68a69d 100755 (executable)
--- a/Makefile
+++ b/Makefile
@@ -1,15 +1,13 @@
 TMP_FOLDER=/tmp
 RELEASE_FOLDER=wllbg-release
 
-ifndef ENV
-       ENV=prod
-endif
+ENV ?= prod
 
 help: ## Display this help menu
        @grep -E '^[a-zA-Z_-]+:.*?## .*$$' $(MAKEFILE_LIST) | sort | awk 'BEGIN {FS = ":.*?## "}; {printf "\033[36m%-30s\033[0m %s\n", $$1, $$2}'
 
 clean: ## Clear the application cache
-       @rm -rf var/cache/*
+       rm -rf var/cache/*
 
 install: ## Install wallabag with the latest version
        @sh scripts/install.sh $(ENV)
@@ -26,8 +24,30 @@ run: ## Run the wallabag built-in server
 build: ## Run webpack
        @npm run build:$(ENV)
 
-test: ## Launch wallabag testsuite
-       @ant prepare && bin/simple-phpunit -v
+prepare: clean ## Prepare database for testsuite
+ifdef DB
+       cp app/config/tests/parameters_test.$(DB).yml app/config/parameters_test.yml
+endif
+       -php bin/console doctrine:database:drop --force --env=test
+       php bin/console doctrine:database:create --env=test
+ifndef DB ## make test does not define DB
+       php bin/console doctrine:schema:create --env=test
+endif
+ifeq ($(DB), sqlite)
+       php bin/console doctrine:schema:create --env=test
+endif
+ifeq ($(DB), mysql)
+       php bin/console doctrine:database:import data/sql/mysql_base.sql --env=test
+endif
+ifeq ($(DB), pgsql)
+       psql -h localhost -d wallabag_test -U travis -f data/sql/pgsql_base.sql
+endif
+
+fixtures: ## Load fixtures into database
+       php bin/console doctrine:fixtures:load --no-interaction --env=test
+
+test: prepare fixtures ## Launch wallabag testsuite
+       bin/simple-phpunit -v
 
 release: ## Create a package. Need a VERSION parameter (eg: `make release VERSION=master`).
 ifndef VERSION
@@ -35,11 +55,9 @@ ifndef VERSION
 endif
        @sh scripts/release.sh $(VERSION) $(TMP_FOLDER) $(RELEASE_FOLDER) $(ENV)
 
-travis: ## Make some stuff for Travis-CI
-
 deploy: ## Deploy wallabag
        @bundle exec cap staging deploy
 
-.PHONY: help clean install update build test release travis deploy run dev
+.PHONY: help clean prepare install fixtures update build test release deploy run dev
 
 .DEFAULT_GOAL := install
diff --git a/build.xml b/build.xml
deleted file mode 100644 (file)
index b9fe613..0000000
--- a/build.xml
+++ /dev/null
@@ -1,136 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<project name="wallabag" default="build">
-    <target name="build" depends="clean,prepare,phpunit"/>
-    <target name="prepare-mysql" depends="clean,prepare_mysql"/>
-    <target name="prepare-sqlite" depends="clean,prepare_sqlite"/>
-    <target name="prepare-pgsql" depends="clean,prepare_pgsql"/>
-
-    <target name="clean" description="Cleanup build artifacts">
-        <delete dir="${basedir}/var/cache"/>
-    </target>
-
-    <target name="prepare" description="Prepare for build">
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:drop"/>
-            <arg value="--force"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:create"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:schema:create"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:fixtures:load"/>
-            <arg value="--no-interaction"/>
-            <arg value="--env=test"/>
-        </exec>
-    </target>
-
-    <target name="prepare_mysql" description="Run test for MySQL">
-        <delete dir="${basedir}/app/config/parameters.yml"/>
-        <exec executable="cp">
-            <arg value="${basedir}/app/config/tests/parameters_test.mysql.yml"/>
-            <arg value="${basedir}/app/config/parameters_test.yml"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="cache:clear"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:drop"/>
-            <arg value="--force"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:create"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:import"/>
-            <arg value="data/sql/mysql_base.sql"/>
-            <arg value="--env=test"/>
-        </exec>
-    </target>
-
-    <target name="prepare_sqlite" description="Run test for SQLite">
-        <delete dir="${basedir}/app/config/parameters.yml"/>
-        <exec executable="cp">
-            <arg value="${basedir}/app/config/tests/parameters_test.sqlite.yml"/>
-            <arg value="${basedir}/app/config/parameters_test.yml"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="cache:clear"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:drop"/>
-            <arg value="--force"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:create"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:schema:create"/>
-            <arg value="--env=test"/>
-        </exec>
-    </target>
-
-    <target name="prepare_pgsql" description="Run test for PostgreSQL">
-        <delete dir="${basedir}/app/config/parameters.yml"/>
-        <exec executable="cp">
-            <arg value="${basedir}/app/config/tests/parameters_test.pgsql.yml"/>
-            <arg value="${basedir}/app/config/parameters_test.yml"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="cache:clear"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:drop"/>
-            <arg value="--force"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="php">
-            <arg value="${basedir}/bin/console"/>
-            <arg value="doctrine:database:create"/>
-            <arg value="--env=test"/>
-        </exec>
-        <exec executable="psql">
-            <arg value="-h"/>
-            <arg value="localhost"/>
-            <arg value="-d"/>
-            <arg value="wallabag_test"/>
-            <arg value="-U"/>
-            <arg value="travis"/>
-            <arg value="-f"/>
-            <arg value="data/sql/pgsql_base.sql"/>
-        </exec>
-    </target>
-
-    <target name="phpunit" description="Run unit tests with PHPUnit + HTML Coverage">
-        <exec executable="phpunit" failonerror="true">
-            <arg value="--coverage-html"/>
-            <arg value="build/coverage"/>
-        </exec>
-    </target>
-</project>