| # Licensed to the Apache Software Foundation (ASF) under one |
| # or more contributor license agreements. See the NOTICE file |
| # distributed with this work for additional information |
| # regarding copyright ownership. The ASF licenses this file |
| # to you under the Apache License, Version 2.0 (the |
| # "License"); you may not use this file except in compliance |
| # with the License. You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, |
| # software distributed under the License is distributed on an |
| # "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY |
| # KIND, either express or implied. See the License for the |
| # specific language governing permissions and limitations |
| # under the License. |
| |
| all: generate |
| |
| generate: |
| @if ! command -v curl &> /dev/null; then \ |
| echo "curl could not be found, please install curl."; \ |
| exit 1; \ |
| fi |
| |
| @if ! command -v thrift &> /dev/null; then \ |
| echo "thrift could not be found, please install thrift 0.14.1"; \ |
| exit 1; \ |
| fi |
| |
| @if [[ "`thrift --version|grep -o '0.14.[0-9]'`" == "" ]]; then \ |
| echo "please install thrift 0.14.1"; \ |
| exit 1; \ |
| fi |
| |
| @if [ -f "../thrift/src/main/thrift/rpc.thrift" ]; then \ |
| thrift -out . -gen go ../thrift/src/main/thrift/rpc.thrift; \ |
| else \ |
| curl -o rpc.thrift https://raw.githubusercontent.com/apache/iotdb/master/thrift/src/main/thrift/rpc.thrift; \ |
| thrift -out . -gen go rpc.thrift; \ |
| rm -f rpc.thrift; \ |
| fi |
| @rm -rf rpc/t_s_i_service-remote |
| |
| .PHONY: generate all test e2e_test e2e_test_clean |
| |
| test: |
| go test -v ./client/... |
| |
| e2e_test: |
| sh -c "cd /tmp/ && rm -rf iotdb && git clone https://github.com/apache/iotdb.git && cd iotdb && mvn -Dmaven.test.skip=true package -am -pl server" |
| mkdir -p target/iotdb |
| unzip -o -q /tmp/iotdb/server/target/iotdb-server-*.zip -d target/iotdb |
| docker-compose -f test/e2e/docker-compose.yml up --build --abort-on-container-exit --remove-orphans |
| |
| e2e_test_clean: |
| rm -rf /tmp/iotdb target |
| docker-compose -f test/e2e/docker-compose.yml down |
| |
| #only used for project structure that the iotdb main project is in the parent folder of this project. |
| e2e_test_for_parent_git_repo: |
| mkdir -p target/iotdb |
| unzip -o -q ../server/target/iotdb-server-*.zip -d target/iotdb |
| docker-compose -f test/e2e/docker-compose.yml up --build --abort-on-container-exit --remove-orphans |
| |
| e2e_test_clean_for_parent_git_repo: |
| rm -rf target |
| docker-compose -f test/e2e/docker-compose.yml down |