Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/nextcloud/richdocuments.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--.drone.yml35
-rw-r--r--.github/workflows/integration.yml303
-rw-r--r--.github/workflows/phpunit.yml3
-rwxr-xr-xtests/run-integration.sh6
4 files changed, 309 insertions, 38 deletions
diff --git a/.drone.yml b/.drone.yml
index 7deb7a81..a8545174 100644
--- a/.drone.yml
+++ b/.drone.yml
@@ -56,41 +56,6 @@ trigger:
- push
---
kind: pipeline
-name: integration
-
-steps:
- - name: nextcloud
- image: nextcloudci/php7.3:php7.3-5
- environment:
- APP_NAME: richdocuments
- CORE_BRANCH: master
- DB: sqlite
- commands:
- - bash ./tests/drone-server-setup.sh $APP_NAME $CORE_BRANCH $DB
- - cd ../server
- - ./occ app:enable $APP_NAME
- - cd apps/$APP_NAME
-
- # Run integration tests
- - cd tests
- - bash run-integration.sh features/wopi
-services:
- - name: collabora
- image: collabora/code:4.0.9.4
- environment:
- extra_params: '--o:ssl.enable=false'
- domain: 'nextcloud'
-
-trigger:
- branch:
- - master
- - stable*
- event:
- - pull_request
- - push
-
----
-kind: pipeline
name: jest
steps:
- name: jest
diff --git a/.github/workflows/integration.yml b/.github/workflows/integration.yml
new file mode 100644
index 00000000..3a02ead6
--- /dev/null
+++ b/.github/workflows/integration.yml
@@ -0,0 +1,303 @@
+name: WOPI Integration tests
+
+on:
+ pull_request:
+ push:
+ branches:
+ - master
+ - stable*
+
+env:
+ APP_NAME: richdocuments
+
+jobs:
+ php:
+ runs-on: ubuntu-latest
+
+ strategy:
+ # do not stop on another job's failure
+ fail-fast: false
+ matrix:
+ php-versions: ['7.4']
+ databases: ['sqlite']
+ server-versions: ['master']
+
+ name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
+
+ services:
+ collabora:
+ image: collabora/code
+ env:
+ extra_params: '--o:ssl.enable=false'
+ domain: nextcloud
+ ports:
+ - "9980:9980"
+
+ steps:
+ - name: Checkout server
+ uses: actions/checkout@v2
+ with:
+ repository: nextcloud/server
+ ref: ${{ matrix.server-versions }}
+
+ - name: Checkout submodules
+ shell: bash
+ run: |
+ auth_header="$(git config --local --get http.https://github.com/.extraheader)"
+ git submodule sync --recursive
+ git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
+
+ - name: Checkout app
+ uses: actions/checkout@v2
+ with:
+ path: apps/${{ env.APP_NAME }}
+
+ - name: Set up php ${{ matrix.php-versions }}
+ uses: shivammathur/setup-php@v1
+ with:
+ php-version: ${{ matrix.php-versions }}
+ tools: phpunit
+ extensions: mbstring, iconv, fileinfo, intl, sqlite, pdo_sqlite
+ coverage: none
+
+ - name: Set up PHPUnit
+ working-directory: apps/${{ env.APP_NAME }}
+ run: composer i
+
+ - name: Set up Nextcloud
+ env:
+ DB_PORT: 4444
+ run: |
+ mkdir data
+ ./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ ./occ app:enable --force ${{ env.APP_NAME }}
+ export OC_PASS=123456
+ ./occ user:add --password-from-env user1
+ ./occ user:add --password-from-env user2
+
+ - name: Run WOPI integration tests
+ working-directory: apps/${{ env.APP_NAME }}
+ run: cd tests && bash run-integration.sh features/wopi
+
+ mysql:
+ runs-on: ubuntu-latest
+
+ strategy:
+ # do not stop on another job's failure
+ fail-fast: false
+ matrix:
+ php-versions: ['7.3', '7.4']
+ databases: ['mysql']
+ server-versions: ['master']
+
+ name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
+
+ services:
+ mysql:
+ image: mariadb
+ ports:
+ - 4444:3306/tcp
+ env:
+ MYSQL_ROOT_PASSWORD: rootpassword
+ options: --health-cmd="mysqladmin ping" --health-interval 5s --health-timeout 2s --health-retries 5
+ collabora:
+ image: collabora/code
+ env:
+ extra_params: '--o:ssl.enable=false'
+ domain: nextcloud
+ ports:
+ - "9980:9980"
+
+ steps:
+ - name: Checkout server
+ uses: actions/checkout@v2
+ with:
+ repository: nextcloud/server
+ ref: ${{ matrix.server-versions }}
+
+ - name: Checkout submodules
+ shell: bash
+ run: |
+ auth_header="$(git config --local --get http.https://github.com/.extraheader)"
+ git submodule sync --recursive
+ git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
+
+ - name: Checkout app
+ uses: actions/checkout@v2
+ with:
+ path: apps/${{ env.APP_NAME }}
+
+ - name: Set up php ${{ matrix.php-versions }}
+ uses: shivammathur/setup-php@v1
+ with:
+ php-version: ${{ matrix.php-versions }}
+ tools: phpunit
+ extensions: mbstring, iconv, fileinfo, intl, mysql, pdo_mysql
+ coverage: none
+
+ - name: Set up PHPUnit
+ working-directory: apps/${{ env.APP_NAME }}
+ run: composer i
+
+ - name: Set up Nextcloud
+ env:
+ DB_PORT: 4444
+ run: |
+ mkdir data
+ ./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ ./occ app:enable --force ${{ env.APP_NAME }}
+ export OC_PASS=123456
+ ./occ user:add --password-from-env user1
+ ./occ user:add --password-from-env user2
+
+ - name: Run WOPI integration tests
+ working-directory: apps/${{ env.APP_NAME }}
+ run: cd tests && bash run-integration.sh features/wopi
+
+ pgsql:
+ runs-on: ubuntu-latest
+
+ strategy:
+ # do not stop on another job's failure
+ fail-fast: false
+ matrix:
+ php-versions: ['7.4']
+ databases: ['pgsql']
+ server-versions: ['master']
+
+ name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
+
+ services:
+ postgres:
+ image: postgres
+ ports:
+ - 4444:5432/tcp
+ env:
+ POSTGRES_USER: root
+ POSTGRES_PASSWORD: rootpassword
+ POSTGRES_DB: nextcloud
+ options: --health-cmd pg_isready --health-interval 5s --health-timeout 2s --health-retries 5
+ collabora:
+ image: collabora/code
+ env:
+ extra_params: '--o:ssl.enable=false'
+ domain: nextcloud
+ ports:
+ - "9980:9980"
+
+ steps:
+ - name: Checkout server
+ uses: actions/checkout@v2
+ with:
+ repository: nextcloud/server
+ ref: ${{ matrix.server-versions }}
+
+ - name: Checkout submodules
+ shell: bash
+ run: |
+ auth_header="$(git config --local --get http.https://github.com/.extraheader)"
+ git submodule sync --recursive
+ git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
+
+ - name: Checkout app
+ uses: actions/checkout@v2
+ with:
+ path: apps/${{ env.APP_NAME }}
+
+ - name: Set up php ${{ matrix.php-versions }}
+ uses: shivammathur/setup-php@v1
+ with:
+ php-version: ${{ matrix.php-versions }}
+ tools: phpunit
+ extensions: mbstring, iconv, fileinfo, intl, pgsql, pdo_pgsql
+ coverage: none
+
+ - name: Set up PHPUnit
+ working-directory: apps/${{ env.APP_NAME }}
+ run: composer i
+
+ - name: Set up Nextcloud
+ env:
+ DB_PORT: 4444
+ run: |
+ mkdir data
+ ./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ ./occ app:enable --force ${{ env.APP_NAME }}
+ export OC_PASS=123456
+ ./occ user:add --password-from-env user1
+ ./occ user:add --password-from-env user2
+
+ - name: Run WOPI integration tests
+ working-directory: apps/${{ env.APP_NAME }}
+ run: cd tests && bash run-integration.sh features/wopi
+
+ oci:
+ runs-on: ubuntu-latest
+
+ strategy:
+ # do not stop on another job's failure
+ fail-fast: false
+ matrix:
+ php-versions: ['7.4']
+ databases: ['oci']
+ server-versions: ['master']
+
+ name: php${{ matrix.php-versions }}-${{ matrix.databases }}-${{ matrix.server-versions }}
+
+ services:
+ oracle:
+ image: deepdiver/docker-oracle-xe-11g
+ ports:
+ - "1521:1521"
+ collabora:
+ image: collabora/code
+ env:
+ extra_params: '--o:ssl.enable=false'
+ domain: nextcloud
+ ports:
+ - "9980:9980"
+
+ steps:
+ - name: Checkout server
+ uses: actions/checkout@v2
+ with:
+ repository: nextcloud/server
+ ref: ${{ matrix.server-versions }}
+
+ - name: Checkout submodules
+ shell: bash
+ run: |
+ auth_header="$(git config --local --get http.https://github.com/.extraheader)"
+ git submodule sync --recursive
+ git -c "http.extraheader=$auth_header" -c protocol.version=2 submodule update --init --force --recursive --depth=1
+
+ - name: Checkout app
+ uses: actions/checkout@v2
+ with:
+ path: apps/${{ env.APP_NAME }}
+
+ - name: Set up PHPUnit
+ working-directory: apps/${{ env.APP_NAME }}
+ run: composer i
+
+ - name: Set up php ${{ matrix.php-versions }}
+ uses: "shivammathur/setup-php@v2"
+ with:
+ php-version: "${{ matrix.php-versions }}"
+ extensions: mbstring, iconv, fileinfo, intl, oci8
+ tools: phpunit:8.5.2
+ coverage: none
+
+ - name: Set up Nextcloud
+ run: |
+ mkdir data
+ ./occ maintenance:install --verbose --database=oci --database-name=XE --database-host=127.0.0.1 --database-port=1521 --database-user=autotest --database-pass=owncloud --admin-user admin --admin-pass admin
+ php -f index.php
+ ./occ app:enable --force ${{ env.APP_NAME }}
+ export OC_PASS=123456
+ ./occ user:add --password-from-env user1
+ ./occ user:add --password-from-env user2
+
+ - name: Run WOPI integration tests
+ working-directory: apps/${{ env.APP_NAME }}
+ run: cd tests && bash run-integration.sh features/wopi
diff --git a/.github/workflows/phpunit.yml b/.github/workflows/phpunit.yml
index d7215ebc..3c03be37 100644
--- a/.github/workflows/phpunit.yml
+++ b/.github/workflows/phpunit.yml
@@ -61,6 +61,7 @@ jobs:
run: |
mkdir data
./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ php -f index.php
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
@@ -127,6 +128,7 @@ jobs:
run: |
mkdir data
./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ php -f index.php
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
@@ -195,6 +197,7 @@ jobs:
run: |
mkdir data
./occ maintenance:install --verbose --database=${{ matrix.databases }} --database-name=nextcloud --database-host=127.0.0.1 --database-port=$DB_PORT --database-user=root --database-pass=rootpassword --admin-user admin --admin-pass password
+ php -f index.php
./occ app:enable --force ${{ env.APP_NAME }}
php -S localhost:8080 &
diff --git a/tests/run-integration.sh b/tests/run-integration.sh
index e71359fb..2b52c5a6 100755
--- a/tests/run-integration.sh
+++ b/tests/run-integration.sh
@@ -20,7 +20,7 @@ fi
composer install
composer dump-autoload
-curl -v http://collabora:9980/hosting/capabilities
+curl -v http://localhost:9980/hosting/capabilities
PORT=8080
php -S localhost:$PORT -t $OC_PATH &
@@ -29,8 +29,8 @@ echo $PHPPID
#export BEHAT_PARAMS="context[parameters][base_url]=https://nextcloud.local.dev.bitgrid.net"
-$OCC config:app:set richdocuments wopi_url --value="http://collabora:9980"
-$OCC config:app:set richdocuments public_wopi_url --value="http://collabora:9980"
+$OCC config:app:set richdocuments wopi_url --value="http://localhost:9980"
+$OCC config:app:set richdocuments public_wopi_url --value="http://localhost:9980"
vendor/bin/behat