Now if the source templates were modified but their compiled versions
were not updated the Drone job will fail.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The `postgres:10` tag is not fixed, but updated every time a new
`postgres:10.X` image is released. Thus, the integration tests run in
Drone always use the latest Docker image for PostgreSQL 10.
The parameters used for the Docker container of PostgreSQL relied on a
bug in both the Nextcloud installer and in the Docker image for
PostgreSQL; the bug in the image was fixed in "postgres:10.5", so the
tests started to fail due to not being able to install Nextcloud.
The database user created in the image did not have "create role"
privileges, so that user was the one used by the Nextcloud installer.
After the fix it does, so the Nextcloud installer creates and uses a new
user instead. However, if an existing database name is given to the
installer the installer does not grant privileges to that new user on
the existing database.
By default the container creates a new database with the same name as
the database user ("oc_autotest"), and that database was passed to the
installer. Thus, as the new user was not granted privileges on the
existing database it could not connect to it and the installation failed.
Now the container creates a dummy database with a different name to the
one passed to the installer, so now the "oc_autotest" database is
created by the installer and the new user is made owner of that new
database.
Note that this fix is backwards compatible with PostgreSQL images prior
to the fix, so no special handling is needed in `run-docker.sh` when
older images are used.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Now that the requirement was updated to 15 it is necessary to test again
against current master.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
Now that the requirement was updated to 15 it is necessary to test again
against current master.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The acceptance tests requires the grandparent directory of the root
directory of the app to be the root directory of the Nextcloud server.
Drone only clones the app repository, so the Nextcloud server repository
has to be explicitly cloned and the app moved to the "apps" directory
before the tests are run.
Besides that, as the acceptance tests need to be run on Apache,
"/var/www/html" has to be linked to the root directory of the Nextcloud
server.
Once all that is done the tests can be run in the same way that they are
run in Drone for the Nextcloud server but just specifying the acceptance
tests directory too.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The values of the PostgreSQL environment variables must match those used
in "travis_ci/core_install.sh" when the server is installed.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The values of the MySQL environment variables must match those used in
"travis_ci/core_install.sh" when the server is installed.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
This will make possible in a following commit to run the integration
tests in other databases by extending the build matrix.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>
The "php7.1" and "php7.1-integration" tests are not actually being run
in Drone; when the command "more ./tests/autoconfig-oracle.php" is
executed by "core_install.sh" the execution of the remaining Drone
commands is broken (strange... probably some black magic related to TTYs
or something like that), and thus the tests are not run (although no
error is issued, so it wrongly seems that they were successful).
The problem occurs on CentOS based Docker images, but not on Debian
based ones. Therefore, the base images for the "php7.1" and
"php7.1-integration" tests were changed to use a newer version of the
"nextcloudci/php7.1" image, which is now based on Debian instead of
CentOS like the older ones.
This also removes the need of installing "wget", as it is already
included in the newer image too.
Signed-off-by: Daniel Calviño Sánchez <danxuliu@gmail.com>