Basic support for Python Optional Dependencies #8630
Workflow file for this run
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: Ubuntu | |
on: | |
workflow_dispatch: | |
inputs: | |
developer_build: | |
description: 'Set to OFF for Release wheels' | |
required: false | |
default: 'ON' | |
push: | |
branches: | |
- master | |
pull_request: | |
types: [opened, reopened, synchronize] | |
concurrency: | |
group: ${{ github.workflow }}-${{ github.event.pull_request.number || github.ref }} | |
cancel-in-progress: true | |
env: | |
NPROC: 2 | |
GCE_CLI_GHA_VERSION: "416.0.0" | |
jobs: | |
ubuntu: | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: false | |
matrix: | |
BUILD_SHARED_LIBS: [ON, OFF] | |
MLOPS: [ON, OFF] | |
exclude: | |
- BUILD_SHARED_LIBS: OFF | |
MLOPS: ON | |
env: | |
BUILD_SHARED_LIBS: ${{ matrix.BUILD_SHARED_LIBS }} | |
BUILD_CUDA_MODULE: OFF | |
BUILD_TENSORFLOW_OPS: ${{ matrix.MLOPS }} | |
BUILD_PYTORCH_OPS: ${{ matrix.MLOPS }} | |
DEVELOPER_BUILD: ${{ github.event.inputs.developer_build || 'ON' }} | |
OPEN3D_CPU_RENDERING: true | |
steps: | |
- name: Checkout source code | |
uses: actions/checkout@v3 | |
- name: Maximize build space | |
run: | | |
source util/ci_utils.sh | |
maximize_ubuntu_github_actions_build_space | |
- name: Docker build | |
run: | | |
if [ "${{ matrix.BUILD_SHARED_LIBS }}" = "OFF" ] && [ "${{ matrix.MLOPS }}" = "OFF" ]; then | |
docker/docker_build.sh cpu-static | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "OFF" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then | |
docker/docker_build.sh cpu-shared | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "OFF" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then | |
docker/docker_build.sh cpu-shared-release | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "ON" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then | |
docker/docker_build.sh cpu-shared-ml | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "ON" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then | |
docker/docker_build.sh cpu-shared-ml-release | |
fi | |
- name: Docker test | |
run: | | |
if [ "${{ matrix.BUILD_SHARED_LIBS }}" = "OFF" ] && [ "${{ matrix.MLOPS }}" = "OFF" ]; then | |
docker/docker_test.sh cpu-static | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "OFF" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then | |
docker/docker_test.sh cpu-shared | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "OFF" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then | |
docker/docker_test.sh cpu-shared-release | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "ON" ] && [ "${{ env.DEVELOPER_BUILD }}" = "ON" ]; then | |
docker/docker_test.sh cpu-shared-ml | |
elif [ "${{ matrix.BUILD_SHARED_LIBS }}" = "ON" ] && [ "${{ matrix.MLOPS }}" = "ON" ] && [ "${{ env.DEVELOPER_BUILD }}" = "OFF" ]; then | |
docker/docker_test.sh cpu-shared-ml-release | |
fi | |
- name: Upload package to GitHub artifacts | |
if: ${{ env.BUILD_SHARED_LIBS == 'ON' }} | |
uses: actions/upload-artifact@v3 | |
with: | |
name: open3d-devel-linux-x86_64 | |
path: open3d-devel-*.tar.xz | |
if-no-files-found: error | |
- name: GCloud CLI auth | |
if: ${{ github.ref == 'refs/heads/master' }} | |
uses: 'google-github-actions/auth@v1' | |
with: | |
project_id: ${{ secrets.GCE_PROJECT }} | |
credentials_json: '${{ secrets.GCE_SA_KEY_GPU_CI }}' | |
- name: GCloud CLI setup | |
if: ${{ github.ref == 'refs/heads/master' }} | |
uses: google-github-actions/setup-gcloud@v1 | |
with: | |
version: ${{ env.GCE_CLI_GHA_VERSION }} | |
project_id: ${{ secrets.GCE_PROJECT }} | |
- name: Upload package to GCS bucket | |
if: ${{ github.ref == 'refs/heads/master' && env.BUILD_SHARED_LIBS == 'ON' }} | |
run: | | |
gsutil cp open3d-devel-*.tar.xz gs://open3d-releases-master/devel/ | |
echo "Download devel package at: https://storage.googleapis.com/open3d-releases-master/devel/${{ env.DEVEL_PKG_NAME }}" |