From 92e22ce34f703b0dc5d47d2cd89adbb240cbf343 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Fri, 25 Nov 2022 15:59:22 +0800 Subject: [PATCH 01/14] Try to pass CI --- .../build-graphscope-wheels-linux.yml | 48 ++++++++++++++----- .../build-graphscope-wheels-macos.yml | 42 +++++++++++----- 2 files changed, 66 insertions(+), 24 deletions(-) diff --git a/.github/workflows/build-graphscope-wheels-linux.yml b/.github/workflows/build-graphscope-wheels-linux.yml index c6fa72f77ef0..aba7e62cd4bd 100644 --- a/.github/workflows/build-graphscope-wheels-linux.yml +++ b/.github/workflows/build-graphscope-wheels-linux.yml @@ -1,22 +1,43 @@ name: Build GraphScope Wheels on Linux +#on: + #workflow_dispatch: + #schedule: + #The notifications for scheduled workflows are sent to the user who + #last modified the cron syntax in the workflow file. + #Trigger the workflow at 03:00(CST) every day. + #- cron: '00 19 * * *' + #push: + #tags: + #- "v*" + + on: - workflow_dispatch: - schedule: - # The notifications for scheduled workflows are sent to the user who - # last modified the cron syntax in the workflow file. - # Trigger the workflow at 03:00(CST) every day. - - cron: '00 19 * * *' + # Trigger the workflow on push or pull request, + # but only for the main branch push: - tags: - - "v*" + branches: + - main + paths-ignore: + - 'CONTRIBUTORS' + - 'LICENSE' + - 'NOTICE.txt' + - '**.md' + - '**.rst' + - 'docs/**' + - 'demo/**' + - 'scripts/**' + - 'tutorials/**' + pull_request: + branches: + - main env: - REGISTRY: registry-vpc.cn-hongkong.aliyuncs.com + REGISTRY: registry.cn-hongkong.aliyuncs.com jobs: build-wheels: - if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: ubuntu-20.04 steps: @@ -81,6 +102,7 @@ jobs: packages_dir: upload_pypi/ - name: Publish distribution to PyPI + if: false uses: pypa/gh-action-pypi-publish@v1.4.2 with: user: __token__ @@ -88,7 +110,7 @@ jobs: packages_dir: upload_pypi/ build-image: - if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: ubuntu-20.04 needs: [build-wheels] @@ -173,7 +195,7 @@ jobs: sudo docker push ${{ env.REGISTRY }}/dataset:${tag} ubuntu-python-test: - if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: ubuntu-20.04 needs: [build-wheels] strategy: @@ -223,7 +245,7 @@ jobs: python3 -m pytest -s -v $(dirname $(python3 -c "import graphscope; print(graphscope.__file__)"))/tests/minitest centos-test: - if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: ubuntu-20.04 needs: [build-wheels] container: diff --git a/.github/workflows/build-graphscope-wheels-macos.yml b/.github/workflows/build-graphscope-wheels-macos.yml index 72ab92c27277..b55a8c067312 100644 --- a/.github/workflows/build-graphscope-wheels-macos.yml +++ b/.github/workflows/build-graphscope-wheels-macos.yml @@ -1,19 +1,39 @@ name: Build GraphScope Wheels on MacOS +#on: + #workflow_dispatch: + #schedule: + ## The notifications for scheduled workflows are sent to the user who + ## last modified the cron syntax in the workflow file. + ## Trigger the workflow at 03:00(CST) every day. + #- cron: '00 19 * * *' + #push: + #tags: + #- "v*" + on: - workflow_dispatch: - schedule: - # The notifications for scheduled workflows are sent to the user who - # last modified the cron syntax in the workflow file. - # Trigger the workflow at 03:00(CST) every day. - - cron: '00 19 * * *' + # Trigger the workflow on push or pull request, + # but only for the main branch push: - tags: - - "v*" + branches: + - main + paths-ignore: + - 'CONTRIBUTORS' + - 'LICENSE' + - 'NOTICE.txt' + - '**.md' + - '**.rst' + - 'docs/**' + - 'demo/**' + - 'scripts/**' + - 'tutorials/**' + pull_request: + branches: + - main jobs: build-wheels: - if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: macos-10.15 steps: - uses: actions/checkout@v3 @@ -60,7 +80,7 @@ jobs: retention-days: 5 build-client-wheels: - if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: macos-10.15 strategy: matrix: @@ -159,7 +179,7 @@ jobs: packages_dir: upload_pypi/ python-test: - if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: macos-10.15 needs: [build-wheels, build-client-wheels] strategy: From 379108db8fcb92b3c398fe59840cd4f22e508c98 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 00:19:57 +0800 Subject: [PATCH 02/14] update --- .github/workflows/build-graphscope-wheels-linux.yml | 1 - .github/workflows/build-graphscope-wheels-macos.yml | 2 ++ 2 files changed, 2 insertions(+), 1 deletion(-) diff --git a/.github/workflows/build-graphscope-wheels-linux.yml b/.github/workflows/build-graphscope-wheels-linux.yml index aba7e62cd4bd..21f4bf3b6d93 100644 --- a/.github/workflows/build-graphscope-wheels-linux.yml +++ b/.github/workflows/build-graphscope-wheels-linux.yml @@ -11,7 +11,6 @@ name: Build GraphScope Wheels on Linux #tags: #- "v*" - on: # Trigger the workflow on push or pull request, # but only for the main branch diff --git a/.github/workflows/build-graphscope-wheels-macos.yml b/.github/workflows/build-graphscope-wheels-macos.yml index b55a8c067312..8a304c5ada4f 100644 --- a/.github/workflows/build-graphscope-wheels-macos.yml +++ b/.github/workflows/build-graphscope-wheels-macos.yml @@ -57,6 +57,8 @@ jobs: # source environment variable source ~/.graphscope_env echo ${CC} + export CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=${CC} + echo ${CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER} # change the version for nightly release # 0.15.0 -> 0.15.0a20220808 From 14096acd46690b3ac7d6e5a4e6ff1c973105e011 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 15:17:18 +0800 Subject: [PATCH 03/14] update --- .github/workflows/build-graphscope-wheels-macos.yml | 2 -- scripts/install_deps.sh | 2 ++ 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/build-graphscope-wheels-macos.yml b/.github/workflows/build-graphscope-wheels-macos.yml index 8a304c5ada4f..b55a8c067312 100644 --- a/.github/workflows/build-graphscope-wheels-macos.yml +++ b/.github/workflows/build-graphscope-wheels-macos.yml @@ -57,8 +57,6 @@ jobs: # source environment variable source ~/.graphscope_env echo ${CC} - export CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=${CC} - echo ${CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER} # change the version for nightly release # 0.15.0 -> 0.15.0a20220808 diff --git a/scripts/install_deps.sh b/scripts/install_deps.sh index e232a5873511..b89bfd6a03f8 100755 --- a/scripts/install_deps.sh +++ b/scripts/install_deps.sh @@ -390,6 +390,7 @@ write_envs_config() { { echo "export CC=${homebrew_prefix}/opt/llvm/bin/clang" echo "export CXX=${homebrew_prefix}/opt/llvm/bin/clang++" + echo "export CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=${CC}" if [ -z "${JAVA_HOME}" ]; then echo "export JAVA_HOME=\$(/usr/libexec/java_home -v11)" fi @@ -759,6 +760,7 @@ install_dependencies() { export OPENSSL_SSL_LIBRARY=${homebrew_prefix}/opt/openssl/lib/libssl.dylib export CC=${homebrew_prefix}/opt/llvm/bin/clang export CXX=${homebrew_prefix}/opt/llvm/bin/clang++ + export CARGO_TARGET_X86_64_APPLE_DARWIN_LINKER=${CC} export CPPFLAGS=-I${homebrew_prefix}/opt/llvm/include fi From 64ac22a6684d14ee9faeb4b1e0fb31d785ec827e Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 16:10:22 +0800 Subject: [PATCH 04/14] rebase --- Makefile | 4 ++-- k8s/internal/Makefile | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/Makefile b/Makefile index 9fd048f08bd4..025a86e57dcf 100644 --- a/Makefile +++ b/Makefile @@ -58,8 +58,8 @@ clean: rm -rf $(ANALYTICAL_BUILD_DIR) $(ANALYTICAL_DIR)/proto cd $(ANALYTICAL_DIR)/java && mvn clean - cd $(INTERACTIVE_DIR) && mvn clean - # TODO: use maven clean to clean ir target + cd $(INTERACTIVE_DIR) && mvn clean || true + # TODO: use maven clean to clean ir target rm -rf $(INTERACTIVE_DIR)/executor/ir/target rm -rf $(LEARNING_BUILD_DIR) $(LEARNING_DIR)/proto/*.h $(LEARNING_DIR)/proto/*.cc diff --git a/k8s/internal/Makefile b/k8s/internal/Makefile index 04e9deeeed0f..569deed841bc 100644 --- a/k8s/internal/Makefile +++ b/k8s/internal/Makefile @@ -108,7 +108,7 @@ graphscope-manylinux2014-py3-nodocker: package_name=graphscope python3 setup.py bdist_wheel && \ cd dist && \ for wheel in `ls ./*.whl`; do \ - auditwheel repair $$wheel --plat=manylinux2014_x86_64 && rm $$wheel; \ + (auditwheel repair $$wheel --plat=manylinux2014_x86_64 && rm $$wheel) || true; \ done graphscope-manylinux2014-py3: From 266bb1353accc8148927df43600673a4b9e32fb0 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 17:07:19 +0800 Subject: [PATCH 05/14] update --- k8s/internal/Makefile | 1 + 1 file changed, 1 insertion(+) diff --git a/k8s/internal/Makefile b/k8s/internal/Makefile index 569deed841bc..24fd4da53872 100644 --- a/k8s/internal/Makefile +++ b/k8s/internal/Makefile @@ -144,6 +144,7 @@ graphscope-client-manylinux2014-py3-nodocker: graphscope-client-darwin-py3: cd $(WORKING_DIR)/../../learning_engine/graph-learn && \ git submodule update --init third_party/pybind11 && \ + cd graphlearn && \ rm -rf cmake-build && \ mkdir -p cmake-build && \ cd cmake-build && \ From 87ba16a8772d665144a610b1c010c6f80f8cb0e6 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 17:14:21 +0800 Subject: [PATCH 06/14] update --- .github/workflows/build-graphscope-wheels-linux.yml | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/.github/workflows/build-graphscope-wheels-linux.yml b/.github/workflows/build-graphscope-wheels-linux.yml index 21f4bf3b6d93..04d9bcfcd1a6 100644 --- a/.github/workflows/build-graphscope-wheels-linux.yml +++ b/.github/workflows/build-graphscope-wheels-linux.yml @@ -137,10 +137,7 @@ jobs: # make jupyter-image cd .. - docker build \ - --build-arg CI=${CI} \ - -t graphscope/jupyter:${SHORT_SHA} \ - -f ./k8s/internal/jupyter.Dockerfile . + docker build --build-arg CI=${CI} -t graphscope/jupyter:${SHORT_SHA} -f ./k8s/internal/jupyter.Dockerfile . # dataset image doesn't changed, we can just use the latest one # make dataset-image From bc12a931e97219621c7bfdb521e581129f9741e2 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 17:22:01 +0800 Subject: [PATCH 07/14] UNAME -s in Makefile --- k8s/internal/Makefile | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/k8s/internal/Makefile b/k8s/internal/Makefile index 24fd4da53872..2fc87e5d1b6e 100644 --- a/k8s/internal/Makefile +++ b/k8s/internal/Makefile @@ -11,12 +11,17 @@ ifeq ($(REGISTRY),) endif +UNAME_S := $(shell uname -s) +ifeq ($(UNAME_S), Linux) + XARGS_EMPTY_FLAG := --no-run-if-empty +endif + # Default null TARGET_SERVER_PACKAGE := TARGET_CLIENT_PACKAGE := ifeq ($(UNAME_S), Linux) TARGET_SERVER_PACKAGE := graphscope-manylinux2014-py3 - TARGET_CLIENT_PACKAGE := graphscope-client-manylinux2014-py3 + TARGET_CLIENT_PACKAGE := graphscope-client-manylinux2014-py3 else TARGET_SERVER_PACKAGE := graphscope-darwin-py3 TARGET_CLIENT_PACKAGE := graphscope-client-darwin-py3 From c5ec15436ad1653df538ffa40bf900823d807fb1 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Mon, 28 Nov 2022 17:31:50 +0800 Subject: [PATCH 08/14] cd internal dir for make target --- k8s/internal/Makefile | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/k8s/internal/Makefile b/k8s/internal/Makefile index 2fc87e5d1b6e..d9c46719a524 100644 --- a/k8s/internal/Makefile +++ b/k8s/internal/Makefile @@ -121,7 +121,7 @@ graphscope-manylinux2014-py3: docker run --rm -v $(WORKING_DIR)/../..:/work \ ${REGISTRY}/graphscope/graphscope-dev:${VINEYARD_VERSION} \ bash -c 'source ~/.bashrc && \ - cd /work/k8s && \ + cd /work/k8s/internal && \ make graphscope-manylinux2014-py3-nodocker' graphscope-client-manylinux2014-py3-nodocker: @@ -169,5 +169,5 @@ graphscope-client-manylinux2014-py3: docker pull ${REGISTRY}/graphscope/graphscope-dev:${VINEYARD_VERSION} docker run --rm -v $(WORKING_DIR)/../..:/work \ ${REGISTRY}/graphscope/graphscope-dev:${VINEYARD_VERSION} \ - bash -c 'cd /work/k8s && make graphscope-client-manylinux2014-py3-nodocker' + bash -c 'cd /work/k8s/internal && make graphscope-client-manylinux2014-py3-nodocker' From b336bc3e52cc300774e8509ed00e1d88e68e9fd9 Mon Sep 17 00:00:00 2001 From: siyuan0322 Date: Tue, 29 Nov 2022 13:56:45 +0800 Subject: [PATCH 09/14] fix dev builder --- k8s/build_scripts/build_vineyard_dependencies.sh | 10 +++++----- k8s/dockerfiles/graphscope-dev-base.Dockerfile | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/k8s/build_scripts/build_vineyard_dependencies.sh b/k8s/build_scripts/build_vineyard_dependencies.sh index 09c591e889ae..ec091c13543c 100755 --- a/k8s/build_scripts/build_vineyard_dependencies.sh +++ b/k8s/build_scripts/build_vineyard_dependencies.sh @@ -10,16 +10,16 @@ cd ${WORKDIR} && \ bash cmake-3.24.3-linux-x86_64.sh --prefix=/usr/local --skip-license && \ rm -rf ${WORKDIR}/cmake-3.24.3-linux-x86_64.sh -# install openmpi v4.1.4 +# install openmpi v4.0.4 echo "Installing openmpi" cd ${WORKDIR} && \ - wget -q https://download.open-mpi.org/release/open-mpi/v4.1/openmpi-4.1.4.tar.gz && \ - tar zxvf openmpi-4.1.4.tar.gz && \ - cd openmpi-4.1.4 && \ + wget -q https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.4.tar.gz && \ + tar zxvf openmpi-4.0.4.tar.gz && \ + cd openmpi-4.0.4 && \ ./configure --enable-mpi-cxx --disable-dlopen --prefix=/usr/local && \ make -j$(nproc) && \ make install && \ - rm -rf ${WORKDIR}/openmpi-4.1.4 ${WORKDIR}/openmpi-4.1.4.tar.gz + rm -rf ${WORKDIR}/openmpi-4.0.4 ${WORKDIR}/openmpi-4.0.4.tar.gz # GLOG 0.6.0 echo "Installing glog" diff --git a/k8s/dockerfiles/graphscope-dev-base.Dockerfile b/k8s/dockerfiles/graphscope-dev-base.Dockerfile index 7cc539a7b758..68c0f74cae03 100644 --- a/k8s/dockerfiles/graphscope-dev-base.Dockerfile +++ b/k8s/dockerfiles/graphscope-dev-base.Dockerfile @@ -6,7 +6,7 @@ FROM vineyardcloudnative/manylinux-llvm:2014-11.0.0 AS llvm FROM $REGISTRY/graphscope/manylinux2014:2022-08-16-53df7cb # yum install dependencies -RUN yum install -y perl which sudo wget libunwind-devel vim zip java-1.8.0-openjdk-devel msgpack-devel rapidjson-devel libuuid-devel && \ +RUN yum install -y perl which sudo wget libunwind-devel vim zip java-1.8.0-openjdk-devel msgpack-devel rapidjson-devel libuuid-devel openssh-clients && \ yum clean all -y && \ rm -fr /var/cache/yum From 52985622b6e1884073a010596974cc88fd32b24d Mon Sep 17 00:00:00 2001 From: siyuan0322 Date: Tue, 29 Nov 2022 17:03:13 +0800 Subject: [PATCH 10/14] fix openmpi prefix --- k8s/build_scripts/build_vineyard_dependencies.sh | 13 +++++++------ 1 file changed, 7 insertions(+), 6 deletions(-) diff --git a/k8s/build_scripts/build_vineyard_dependencies.sh b/k8s/build_scripts/build_vineyard_dependencies.sh index ec091c13543c..4909ad9816e8 100755 --- a/k8s/build_scripts/build_vineyard_dependencies.sh +++ b/k8s/build_scripts/build_vineyard_dependencies.sh @@ -10,16 +10,17 @@ cd ${WORKDIR} && \ bash cmake-3.24.3-linux-x86_64.sh --prefix=/usr/local --skip-license && \ rm -rf ${WORKDIR}/cmake-3.24.3-linux-x86_64.sh -# install openmpi v4.0.4 +# install openmpi v4.0.5 echo "Installing openmpi" cd ${WORKDIR} && \ - wget -q https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.4.tar.gz && \ - tar zxvf openmpi-4.0.4.tar.gz && \ - cd openmpi-4.0.4 && \ - ./configure --enable-mpi-cxx --disable-dlopen --prefix=/usr/local && \ + wget -q https://download.open-mpi.org/release/open-mpi/v4.0/openmpi-4.0.5.tar.gz && \ + tar zxvf openmpi-4.0.5.tar.gz && \ + cd openmpi-4.0.5 && \ + ./configure --enable-mpi-cxx --disable-dlopen --prefix=/opt/openmpi && \ make -j$(nproc) && \ make install && \ - rm -rf ${WORKDIR}/openmpi-4.0.4 ${WORKDIR}/openmpi-4.0.4.tar.gz + cp -rs /opt/openmpi/* /usr/local/ && \ + rm -rf ${WORKDIR}/openmpi-4.0.5 ${WORKDIR}/openmpi-4.0.5.tar.gz # GLOG 0.6.0 echo "Installing glog" From c45e363a830ba7f005915506252493ac18249026 Mon Sep 17 00:00:00 2001 From: siyuan0322 Date: Tue, 29 Nov 2022 20:45:58 +0800 Subject: [PATCH 11/14] compile glog after gflags --- .../build_vineyard_dependencies.sh | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/k8s/build_scripts/build_vineyard_dependencies.sh b/k8s/build_scripts/build_vineyard_dependencies.sh index 4909ad9816e8..5fc790d34c42 100755 --- a/k8s/build_scripts/build_vineyard_dependencies.sh +++ b/k8s/build_scripts/build_vineyard_dependencies.sh @@ -22,6 +22,17 @@ cd ${WORKDIR} && \ cp -rs /opt/openmpi/* /usr/local/ && \ rm -rf ${WORKDIR}/openmpi-4.0.5 ${WORKDIR}/openmpi-4.0.5.tar.gz +# gflags v2.2.2 +echo "Installing gflags" +cd ${WORKDIR} && \ + wget -q https://github.com/gflags/gflags/archive/v2.2.2.tar.gz && \ + tar zxvf v2.2.2.tar.gz && \ + cd gflags-2.2.2 && \ + cmake . -DBUILD_SHARED_LIBS=ON && \ + make -j$(nproc) && \ + make install && \ + rm -rf ${WORKDIR}/v2.2.2.tar.gz ${WORKDIR}/gflags-2.2.2 + # GLOG 0.6.0 echo "Installing glog" cd ${WORKDIR} && \ @@ -82,17 +93,6 @@ cd ${WORKDIR} && \ make install && \ rm -rf ${WORKDIR}/arrow-apache-arrow-9.0.0 ${WORKDIR}/apache-arrow-9.0.0.tar.gz -# gflags v2.2.2 -echo "Installing gflags" -cd ${WORKDIR} && \ - wget -q https://github.com/gflags/gflags/archive/v2.2.2.tar.gz && \ - tar zxvf v2.2.2.tar.gz && \ - cd gflags-2.2.2 && \ - cmake . -DBUILD_SHARED_LIBS=ON && \ - make -j$(nproc) && \ - make install && \ - rm -rf ${WORKDIR}/v2.2.2.tar.gz ${WORKDIR}/gflags-2.2.2 - # Boost 1.74.0, required by vineyard echo "Installing boost" cd ${WORKDIR} && \ From b9b146bf1205c1cd4fd4c4e7d2427b40e59c69a9 Mon Sep 17 00:00:00 2001 From: siyuan0322 Date: Wed, 30 Nov 2022 11:24:22 +0800 Subject: [PATCH 12/14] fix vineyard --- k8s/build_scripts/build_vineyard.sh | 13 ++++++++----- 1 file changed, 8 insertions(+), 5 deletions(-) diff --git a/k8s/build_scripts/build_vineyard.sh b/k8s/build_scripts/build_vineyard.sh index bdbf81e120a2..f18ba8ff0941 100755 --- a/k8s/build_scripts/build_vineyard.sh +++ b/k8s/build_scripts/build_vineyard.sh @@ -8,7 +8,7 @@ echo "Installing libgrape-lite" cd ${WORKDIR} && \ git clone -b master https://github.com/alibaba/libgrape-lite.git --depth=1 && \ cd libgrape-lite && \ - cmake . && \ + cmake . -DCMAKE_INSTALL_PREFIX=/opt/vineyard && \ make -j$(nproc) && \ make install && \ rm -rf ${WORKDIR}/libgrape-lite @@ -19,14 +19,17 @@ cd ${WORKDIR} && \ git clone -b v0.10.2 https://github.com/v6d-io/v6d.git --depth=1 && \ pushd v6d && \ git submodule update --init && \ - cmake . -DCMAKE_INSTALL_PREFIX=/usr/local \ + cmake . -DCMAKE_PREFIX_PATH=/opt/vineyard \ + -DCMAKE_INSTALL_PREFIX=/opt/vineyard \ -DBUILD_VINEYARD_TESTS=OFF \ + -DBUILD_SHARED_LIBS=ON \ -DBUILD_VINEYARD_PYTHON_BINDINGS=ON && \ make -j$(nproc) && \ make install && \ - strip /usr/local/bin/vineyard* /usr/local/lib/libvineyard* && \ - popd && \ + strip /opt/vineyard/bin/vineyard* /opt/vineyard/lib/libvineyard* && \ python3 setup.py bdist_wheel && \ python3 setup_io.py bdist_wheel && \ - pip3 install dist/* + pip3 install dist/* && \ + sudo cp -r /opt/vineyard/* /usr/local/ && \ rm -rf ${WORKDIR}/v6d + From 5c29ea2c3b1389ff85d111539bd2cbdabee44910 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Wed, 30 Nov 2022 15:11:45 +0800 Subject: [PATCH 13/14] update --- k8s/internal/Makefile | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/k8s/internal/Makefile b/k8s/internal/Makefile index d9c46719a524..78221cc4c65f 100644 --- a/k8s/internal/Makefile +++ b/k8s/internal/Makefile @@ -21,7 +21,7 @@ TARGET_SERVER_PACKAGE := TARGET_CLIENT_PACKAGE := ifeq ($(UNAME_S), Linux) TARGET_SERVER_PACKAGE := graphscope-manylinux2014-py3 - TARGET_CLIENT_PACKAGE := graphscope-client-manylinux2014-py3 + TARGET_CLIENT_PACKAGE := graphscope-client-manylinux2014-py3 else TARGET_SERVER_PACKAGE := graphscope-darwin-py3 TARGET_CLIENT_PACKAGE := graphscope-client-darwin-py3 From 362e15bf6e2bee24a8510b3dae899e843999d7b1 Mon Sep 17 00:00:00 2001 From: lidongze0629 <9546726@qq.com> Date: Wed, 30 Nov 2022 20:37:32 +0800 Subject: [PATCH 14/14] Restore build-wheels-linux/macos.yaml --- .../build-graphscope-wheels-linux.yml | 45 +++++-------------- .../build-graphscope-wheels-macos.yml | 42 +++++------------ 2 files changed, 23 insertions(+), 64 deletions(-) diff --git a/.github/workflows/build-graphscope-wheels-linux.yml b/.github/workflows/build-graphscope-wheels-linux.yml index 04d9bcfcd1a6..0566860d2ce0 100644 --- a/.github/workflows/build-graphscope-wheels-linux.yml +++ b/.github/workflows/build-graphscope-wheels-linux.yml @@ -1,42 +1,22 @@ name: Build GraphScope Wheels on Linux -#on: - #workflow_dispatch: - #schedule: - #The notifications for scheduled workflows are sent to the user who - #last modified the cron syntax in the workflow file. - #Trigger the workflow at 03:00(CST) every day. - #- cron: '00 19 * * *' - #push: - #tags: - #- "v*" - on: - # Trigger the workflow on push or pull request, - # but only for the main branch + workflow_dispatch: + schedule: + # The notifications for scheduled workflows are sent to the user who + # last modified the cron syntax in the workflow file. + # Trigger the workflow at 03:00(CST) every day. + - cron: '00 19 * * *' push: - branches: - - main - paths-ignore: - - 'CONTRIBUTORS' - - 'LICENSE' - - 'NOTICE.txt' - - '**.md' - - '**.rst' - - 'docs/**' - - 'demo/**' - - 'scripts/**' - - 'tutorials/**' - pull_request: - branches: - - main + tags: + - "v*" env: REGISTRY: registry.cn-hongkong.aliyuncs.com jobs: build-wheels: - # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: ubuntu-20.04 steps: @@ -101,7 +81,6 @@ jobs: packages_dir: upload_pypi/ - name: Publish distribution to PyPI - if: false uses: pypa/gh-action-pypi-publish@v1.4.2 with: user: __token__ @@ -109,7 +88,7 @@ jobs: packages_dir: upload_pypi/ build-image: - # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: ubuntu-20.04 needs: [build-wheels] @@ -191,7 +170,7 @@ jobs: sudo docker push ${{ env.REGISTRY }}/dataset:${tag} ubuntu-python-test: - # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: ubuntu-20.04 needs: [build-wheels] strategy: @@ -241,7 +220,7 @@ jobs: python3 -m pytest -s -v $(dirname $(python3 -c "import graphscope; print(graphscope.__file__)"))/tests/minitest centos-test: - # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: ubuntu-20.04 needs: [build-wheels] container: diff --git a/.github/workflows/build-graphscope-wheels-macos.yml b/.github/workflows/build-graphscope-wheels-macos.yml index b55a8c067312..72ab92c27277 100644 --- a/.github/workflows/build-graphscope-wheels-macos.yml +++ b/.github/workflows/build-graphscope-wheels-macos.yml @@ -1,39 +1,19 @@ name: Build GraphScope Wheels on MacOS -#on: - #workflow_dispatch: - #schedule: - ## The notifications for scheduled workflows are sent to the user who - ## last modified the cron syntax in the workflow file. - ## Trigger the workflow at 03:00(CST) every day. - #- cron: '00 19 * * *' - #push: - #tags: - #- "v*" - on: - # Trigger the workflow on push or pull request, - # but only for the main branch + workflow_dispatch: + schedule: + # The notifications for scheduled workflows are sent to the user who + # last modified the cron syntax in the workflow file. + # Trigger the workflow at 03:00(CST) every day. + - cron: '00 19 * * *' push: - branches: - - main - paths-ignore: - - 'CONTRIBUTORS' - - 'LICENSE' - - 'NOTICE.txt' - - '**.md' - - '**.rst' - - 'docs/**' - - 'demo/**' - - 'scripts/**' - - 'tutorials/**' - pull_request: - branches: - - main + tags: + - "v*" jobs: build-wheels: - # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: macos-10.15 steps: - uses: actions/checkout@v3 @@ -80,7 +60,7 @@ jobs: retention-days: 5 build-client-wheels: - # if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') + if: (github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope') || (github.event_name == 'push' && startsWith(github.ref, 'refs/tags/v') && github.repository == 'alibaba/GraphScope') runs-on: macos-10.15 strategy: matrix: @@ -179,7 +159,7 @@ jobs: packages_dir: upload_pypi/ python-test: - # if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} + if: ${{ github.ref == 'refs/heads/main' && github.repository == 'alibaba/GraphScope' }} runs-on: macos-10.15 needs: [build-wheels, build-client-wheels] strategy: