Skip to content

Commit

Permalink
Merge branch 'main' into ss/issue-5837
Browse files Browse the repository at this point in the history
  • Loading branch information
ssheorey authored Mar 18, 2024
2 parents 4923447 + e8661f7 commit eac8f3a
Show file tree
Hide file tree
Showing 264 changed files with 9,045 additions and 2,970 deletions.
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/0-build-issue-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ body:
options:
- label: "I have searched for [similar issues](https://github.com/isl-org/Open3D/issues)."
required: true
- label: "For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
- label: "For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
required: true
- label: "I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch)."
- label: "I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch)."
required: true

- type: textarea
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/1-bug-report.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ body:
options:
- label: "I have searched for [similar issues](https://github.com/isl-org/Open3D/issues)."
required: true
- label: "For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
- label: "For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
required: true
- label: "I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch)."
- label: "I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch)."
required: true

- type: textarea
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/2-questions.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ body:
options:
- label: "I have searched for [similar issues](https://github.com/isl-org/Open3D/issues)."
required: true
- label: "For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
- label: "For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
required: true
- label: "I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch)."
- label: "I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch)."
required: true

- type: textarea
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/3-feature-request.yml
Original file line number Diff line number Diff line change
Expand Up @@ -11,9 +11,9 @@ body:
options:
- label: "I have searched for [similar issues](https://github.com/isl-org/Open3D/issues)."
required: true
- label: "For Python issues, I have tested with the [latest development wheel](http://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
- label: "For Python issues, I have tested with the [latest development wheel](https://www.open3d.org/docs/latest/getting_started.html#development-version-pip)."
required: true
- label: "I have checked the [release documentation](http://www.open3d.org/docs/release/) and the [latest documentation](http://www.open3d.org/docs/latest/) (for `master` branch)."
- label: "I have checked the [release documentation](https://www.open3d.org/docs/release/) and the [latest documentation](https://www.open3d.org/docs/latest/) (for `main` branch)."
required: true

- type: textarea
Expand Down
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
contact_links:
- name: Link to Open3D Documentation and Tutorials
url: http://www.open3d.org/docs/latest/
url: https://www.open3d.org/docs/latest/
about: "Read the documentation and tutorials for Open3D."
- name: Link to Open3D Discord Server
url: https://discord.gg/D35BGvn
Expand Down
22 changes: 11 additions & 11 deletions .github/workflows/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -14,7 +14,7 @@ actions updates. On macOS and Windows, using Ubuntu reduces CI cost.

- `.github/workflows/documentation.yml`: Github Actions workflow file to
create and deploy documentation. Documentation is created for every branch
as a CI test, but deployed only for `master`.
as a CI test, but deployed only for `main`.
- `util/ci_utils.sh:build_docs()`: Called by GitHub Actions to build documentation.
- `unpack_docs.sh`: Called by the documentation server to deploy the docs into
the website.
Expand Down Expand Up @@ -43,9 +43,9 @@ actions updates. On macOS and Windows, using Ubuntu reduces CI cost.
gsutil lifecycle set gcs.lifecycle.json gs://open3d-docs/
```

Objects will be stored in the bucket for one week. Currently, the
documentation server fetches the latest docs from `master` branch every hour.
If the documentation server fails to fetch the docs matching the `master`
Objects will be stored in the bucket for 30 days. Currently, the
documentation server fetches the latest docs from `main` branch every hour.
If the documentation server fails to fetch the docs matching the `main`
commit id, the last successfully fetched docs will be displayed.
3. Create service account
```bash
Expand Down Expand Up @@ -163,14 +163,14 @@ used for running CI.
- ARM64 cache (limit 1.5GB) is stored on Google cloud bucket
(`open3d-ci-cache` in the `isl-buckets` project). The bucket is world
readable, but needs the `open3d-ci-sa` service account for writing. Every
ARM64 build downloads the cache contents before build. Only `master` branch
ARM64 build downloads the cache contents before build. Only `main` branch
builds use `gsutil rsync` to update the cache in GCS. Cache transfer only
takes a few minutes, but reduces ARM64 CI time to about 1:15 hours.

## Development wheels and binary archives for user testing

`master` branch Python wheels and binary archives are uploaded to a world
readable GCS bucket in `open3d-releases-master/{python-wheels,devel}` for users
`main` branch Python wheels and binary archives are uploaded to a world
readable GCS bucket in `open3d-releases/{python-wheels,devel}` for users
to try out development wheels.

### Google Cloud storage
Expand All @@ -185,10 +185,10 @@ bucket with:
- One month (30 days) object lifecycle

```bash
gsutil mb -p open3d-dev -c STANDARD -l US -b on gs://open3d-releases-master
gsutil acl ch -u AllUsers:R gs://open3d-releases-master
gsutil lifecycle set gcs.lifecycle.json gs:/open3d-releases-master
gsutil mb -p open3d-dev -c STANDARD -l US -b on gs://open3d-releases
gsutil acl ch -u AllUsers:R gs://open3d-releases
gsutil lifecycle set gcs.lifecycle.json gs:/open3d-releases
gsutil iam ch \
serviceAccount:[email protected]:objectAdmin \
gs://open3d-releases-master
gs://open3d-releases
```
2 changes: 1 addition & 1 deletion .github/workflows/clean-gcloud-profiles.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,7 +21,7 @@ on:
workflow_dispatch:
# push:
# branches:
# - master
# - main
# pull_request:
# types: [opened, reopened, synchronize]

Expand Down
24 changes: 14 additions & 10 deletions .github/workflows/documentation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
default: 'ON'
push:
branches:
- master
- main
pull_request:
types: [opened, reopened, synchronize]

Expand Down Expand Up @@ -58,16 +58,16 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'

- name: Install dependencies
env:
DEBIAN_FRONTEND: noninteractive
run: |
# the build system of the main repo expects a master branch. make sure
# master exists
# the build system of the main repo expects a main branch. make sure
# main exists
pushd "${OPEN3D_ML_ROOT}"
git checkout -b master || true
git checkout -b main || true
popd
source util/ci_utils.sh
install_docs_dependencies "${OPEN3D_ML_ROOT}"
Expand All @@ -88,22 +88,22 @@ jobs:
if-no-files-found: error

- name: GCloud CLI auth
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
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' }}
if: ${{ github.ref == 'refs/heads/main' }}
uses: google-github-actions/setup-gcloud@v1
with:
version: ${{ env.GCE_CLI_GHA_VERSION }}
project_id: ${{ secrets.GCE_PROJECT }}

- name: Deploy docs
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
run: |
# Compress and upload the docs, only for master branch
# Compress and upload the docs, only for main branch
docs_out_dir="docs/_out" # Docs in ${docs_out_dir}/html
tar_file="${{ github.sha }}_ready.tar.gz"
rm -rf ${tar_file}
Expand All @@ -113,7 +113,7 @@ jobs:
echo "https://storage.googleapis.com/open3d-docs/${tar_file}"
- name: Check wheels and ready documentation archive
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
run: |
if [ $(gsutil ls gs://open3d-docs/${{ github.sha }}_ready* | wc -l)\
-eq 4 ]; then
Expand All @@ -123,6 +123,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases/*
gsutil retention temp set gs://open3d-releases/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet."
fi
6 changes: 5 additions & 1 deletion .github/workflows/gcs.lifecycle.json
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,11 @@
"type": "Delete"
},
"condition": {
"age": 7
"age": 30,
"matchesPrefix": [
"devel/",
"python-wheels/"
]
}
}
]
Expand Down
58 changes: 31 additions & 27 deletions .github/workflows/macos.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ on:

push:
branches:
- master
- main
pull_request:
types: [opened, reopened, synchronize] # Rebuild on new pushes to PR

Expand Down Expand Up @@ -56,7 +56,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: 3.7
python-version: 3.8
- name: Install dependencies
run: |
brew install ccache pkg-config
Expand Down Expand Up @@ -94,23 +94,23 @@ jobs:
if-no-files-found: error

- name: GCloud CLI auth
if: ${{ github.ref == 'refs/heads/master' && env.BUILD_SHARED_LIBS == 'ON' }}
if: ${{ github.ref == 'refs/heads/main' && env.BUILD_SHARED_LIBS == 'ON' }}
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' && env.BUILD_SHARED_LIBS == 'ON' }}
if: ${{ github.ref == 'refs/heads/main' && env.BUILD_SHARED_LIBS == 'ON' }}
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' }}
if: ${{ github.ref == 'refs/heads/main' && env.BUILD_SHARED_LIBS == 'ON' }}
run: |
gsutil cp build/package/${{ env.DEVEL_PKG_NAME }} gs://open3d-releases-master/devel/
echo "Download devel package at: https://storage.googleapis.com/open3d-releases-master/devel/${{ env.DEVEL_PKG_NAME }}"
gsutil cp build/package/${{ env.DEVEL_PKG_NAME }} gs://open3d-releases/devel/
echo "Download devel package at: https://storage.googleapis.com/open3d-releases/devel/${{ env.DEVEL_PKG_NAME }}"
- name: Upload Open3D viewer app
uses: actions/upload-artifact@v3
Expand All @@ -127,16 +127,16 @@ jobs:
fail-fast: false
# https://github.community/t/how-to-conditionally-include-exclude-items-in-matrix-eg-based-on-branch/16853/6
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
python_version: ['3.8', '3.9', '3.10', '3.11']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
- is_main: false
python_version: '3.8'
- is_master: false
- is_main: false
python_version: '3.9'
- is_main: false
python_version: '3.10'

env:
BUILD_CUDA_MODULE: OFF
Expand Down Expand Up @@ -206,26 +206,26 @@ jobs:
if-no-files-found: error

- name: GCloud CLI auth
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
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' }}
if: ${{ github.ref == 'refs/heads/main' }}
uses: google-github-actions/setup-gcloud@v1
with:
version: ${{ env.GCE_CLI_GHA_VERSION }}
project_id: ${{ secrets.GCE_PROJECT }}

- name: Upload wheel to GCS bucket
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
env:
python_version: ${{ matrix.python_version }}
run: |
PYTAG="-cp$(echo ${{ env.python_version }} | tr -d '.')"
gsutil cp build/lib/python_package/pip_package/${{ env.PIP_PKG_NAME }} gs://open3d-releases-master/python-wheels/
echo "Download pip package at: https://storage.googleapis.com/open3d-releases-master/python-wheels/${{ env.PIP_PKG_NAME }}"
gsutil cp build/lib/python_package/pip_package/${{ env.PIP_PKG_NAME }} gs://open3d-releases/python-wheels/
echo "Download pip package at: https://storage.googleapis.com/open3d-releases/python-wheels/${{ env.PIP_PKG_NAME }}"
test-wheel:
name: Test wheel
Expand All @@ -234,16 +234,16 @@ jobs:
strategy:
fail-fast: false
matrix:
python_version: ['3.7', '3.8', '3.9', '3.10']
is_master:
- ${{ github.ref == 'refs/heads/master' }}
python_version: ['3.8', '3.9', '3.10', '3.11']
is_main:
- ${{ github.ref == 'refs/heads/main' }}
exclude:
- is_master: false
python_version: '3.7'
- is_master: false
- is_main: false
python_version: '3.8'
- is_master: false
- is_main: false
python_version: '3.9'
- is_main: false
python_version: '3.10'

env:
OPEN3D_ML_ROOT: ${{ github.workspace }}/Open3D-ML
Expand Down Expand Up @@ -286,7 +286,7 @@ jobs:
name: Ready docs archive
# no need to run on macOS
runs-on: ubuntu-latest
if: ${{ github.ref == 'refs/heads/master' }}
if: ${{ github.ref == 'refs/heads/main' }}
needs: [build-wheel, MacOS]
steps:
- name: GCloud CLI auth
Expand All @@ -311,6 +311,10 @@ jobs:
# Rename docs archive:
gsutil mv gs://open3d-docs/${{ github.sha }}_ready.tar.gz \
gs://open3d-docs/${{ github.sha }}.tar.gz
# Set holds on new artifacts, release on old
gsutil retention temp release gs://open3d-releases/*
gsutil retention temp set gs://open3d-releases/python-wheels/*${GITHUB_SHA:0:7}*.whl
gsutil retention temp set gs://open3d-releases/devel/*${GITHUB_SHA:0:7}*
else
echo "All wheels / docs not available yet. Docs not ready."
fi
4 changes: 2 additions & 2 deletions .github/workflows/style.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ on:
workflow_dispatch:
push:
branches:
- master
- main
pull_request:
types: [opened, reopened, synchronize] # Rebuild on new pushes to PR

Expand All @@ -21,7 +21,7 @@ jobs:
- name: Set up Python version
uses: actions/setup-python@v4
with:
python-version: '3.7'
python-version: '3.8'
- name: Install dependencies
run: |
pip install -U clang-format~=10.0.0 yapf==0.30.0 nbformat
Expand Down
Loading

0 comments on commit eac8f3a

Please sign in to comment.