<HTML><BODY><div><div><br>- Adding new stage "integration_test" for integration<br> testing connectors and modules with Tarantool.<br>- Adding testing connectors in Tarantool<br> development cycle:<br> - tarantool-python<br> - asynctnt-python<br> - tarantool-php<br> - tarantool-java<br> - tarantool-go<br> - viciious-go</div><div> </div><div>Closes #4856<br>---</div><div> </div><div>Github: <a href="https://github.com/tarantool/tarantool/tree/opiskunov/gh-4856-integration-test-connectors">https://github.com/tarantool/tarantool/tree/opiskunov/gh-4856-integration-test-connectors</a><br>Issue: <a href="https://github.com/tarantool/tarantool/issues/4856">https://github.com/tarantool/tarantool/issues/4856</a><br><br> .gitlab-ci.yml | 41 +++++++++++++++++++++++++++++++++++++++++<br> .travis.mk | 55 ++++++++++++++++++++++++++++++++++++++++++++++++++++++-<br> 2 files changed, 95 insertions(+), 1 deletion(-)</div><div> </div><div>diff --git a/.gitlab-ci.yml b/.gitlab-ci.yml<br>index 256b368..3ab0103 100644<br>--- a/.gitlab-ci.yml<br>+++ b/.gitlab-ci.yml<br>@@ -1,5 +1,6 @@<br> stages:<br> - test<br>+ - integration_test<br> - perf<br> - cleanup</div><div> </div><div>@@ -183,6 +184,46 @@ freebsd_12_release:<br> script:<br> - ${GITLAB_MAKE} vms_test_freebsd</div><div> </div><div>+# ###################<br>+# Integration testing<br>+# ###################<br>+<br>+release_connector_python_asynctnt_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_python_asynctnt<br>+<br>+release_connector_python_tarantool_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_python_tarantool<br>+<br>+release_connector_go_tarantool_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_go_tarantool<br>+<br>+release_connector_go_viciious_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_go_viciious<br>+<br>+release_connector_php_tarantool_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_php_tarantool<br>+<br>+release_connector_java_tarantool_test:<br>+ <<: *docker_test_definition<br>+ stage: integration_test<br>+ script:<br>+ - ${GITLAB_MAKE} test_connector_java_tarantool<br>+<br> # ####<br> # Perf<br> # ####<br>diff --git a/.travis.mk b/.travis.mk<br>index 063537f..024351e 100644<br>--- a/.travis.mk<br>+++ b/.travis.mk<br>@@ -77,7 +77,7 @@ deps_buster_clang_8: deps_debian<br> # Release</div><div> </div><div> build_debian:<br>- cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_WERROR=ON ${CMAKE_EXTRA_PARAMS}<br>+ cmake . -DCMAKE_BUILD_TYPE=RelWithDebInfo -DENABLE_WERROR=ON -DENABLE_DIST=ON ${CMAKE_EXTRA_PARAMS}<br> make -j</div><div> </div><div> test_debian_no_deps: build_debian<br>@@ -87,6 +87,59 @@ test_debian: deps_debian test_debian_no_deps</div><div> </div><div> test_debian_clang8: deps_debian deps_buster_clang_8 test_debian_no_deps</div><div> </div><div>+# Integration testing<br>+<br>+test_connector_python_asynctnt: build_debian<br>+ make install<br>+ apt-get install -y python3-pip python3-dev pandoc python3-setuptools<br>+ git clone --depth=1 --recurse-submodules https://github.com/igorcoding/asynctnt.git asynctnt-python<br>+ cd asynctnt-python && pip3 install -r requirements.txt && export PYTHON=python3 \<br>+ && make && pip3 install -e . && make quicktest<br>+<br>+test_connector_python_tarantool: build_debian<br>+ make install<br>+ git clone --depth=1 https://github.com/tarantool/tarantool-python.git tarantool-python<br>+ cd tarantool-python && pip install -r requirements.txt && python setup.py install \<br>+ && python setup.py test<br>+<br>+test_connector_go_tarantool: build_debian<br>+ make install<br>+ wget --progress=dot:mega https://dl.google.com/go/go1.10.linux-amd64.tar.gz<br>+ tar -C /usr/local -xzf go1.10.linux-amd64.tar.gz<br>+ chmod -R a+rwx /usr/local/go<br>+ export PATH=/usr/local/go/bin:$$PATH && export GOPATH=/usr/local/go/go-tarantool \<br>+ && go get github.com/tarantool/go-tarantool \<br>+ && cd /usr/local/go/go-tarantool/src/github.com/tarantool/go-tarantool \<br>+ && mkdir snap xlog && (tarantool config.lua &) && go test -v .<br>+<br>+test_connector_go_viciious: build_debian<br>+ make install<br>+ wget --progress=dot:mega https://dl.google.com/go/go1.10.linux-amd64.tar.gz<br>+ tar -C /usr/local -xzf go1.10.linux-amd64.tar.gz<br>+ chmod -R a+rwx /usr/local/go<br>+ export PATH=/usr/local/go/bin:$$PATH && export GOPATH=/usr/local/go/go-tarantool \<br>+ && export GOBIN=$$GOPATH/bin && go get github.com/viciious/go-tarantool \<br>+ && cd /usr/local/go/go-tarantool/src/github.com/viciious/go-tarantool \<br>+ && mkdir log && export TNT_LOG_DIR=`pwd`/log && go test -v .<br>+<br>+test_connector_php_tarantool: build_debian<br>+ make install<br>+ apt-get update && apt-get install -y lsb-release<br>+ wget -O /etc/apt/trusted.gpg.d/php.gpg https://packages.sury.org/php/apt.gpg<br>+ echo "deb https://packages.sury.org/php/ $$(lsb_release -sc) main" > /etc/apt/sources.list.d/php.list<br>+ apt-get update && apt-get install -y php7.4 php7.4-dev php7.4-xml<br>+ curl -SsLf -o /usr/local/bin/phpunit https://phar.phpunit.de/phpunit-9.phar<br>+ chmod a+x /usr/local/bin/phpunit<br>+ git clone --depth=1 https://github.com/tarantool/tarantool-php.git --branch=php7-v2 tarantool-php<br>+ cd tarantool-php && phpize && ./configure \<br>+ && make && make install && /usr/bin/python test-run.py<br>+<br>+test_connector_java_tarantool: build_debian<br>+ make install<br>+ apt-get update && apt-get install -y openjdk-8-jre openjdk-8-jdk<br>+ git clone --depth=1 https://github.com/tarantool/tarantool-java.git tarantool-java<br>+ cd tarantool-java && ./mvnw clean test && ./mvnw clean verify<br>+<br> # Debug with coverage</div><div> </div><div> build_coverage_debian:<br>--<br>1.8.3.1<br> </div></div></BODY></HTML>