diff --git a/.github/workflows/main.yml b/.github/workflows/main.yml new file mode 100644 index 0000000..cc30ffa --- /dev/null +++ b/.github/workflows/main.yml @@ -0,0 +1,102 @@ +name: CI/CD Pipeline + +on: + push: + branches: [main] + pull_request: + branches: [main] + +jobs: + lint: + if: github.event_name == 'pull_request' + runs-on: Linux + env: + NVIDIA_DRIVER_CAPABILITIES: all + NVIDIA_VISIBLE_DEVICES: all + NVIDIA_DISABLE_REQUIRE: 1 + container: &container_template + image: 192.168.3.13:5000/dexsdk:ubuntu22.04-cuda12.8.0-h5ffmpeg-v3 + volumes: + - "/cache:/cache" + - "/usr/share/vulkan/icd.d:/usr/share/vulkan/icd.d" + - "/usr/share/vulkan/implicit_layer.d:/usr/share/vulkan/implicit_layer.d" + - "/usr/share/glvnd/egl_vendor.d:/usr/share/glvnd/egl_vendor.d" + - "/tmp/.X11-unix:/tmp/.X11-unix" + - "/dev/shm/shared:/dev/shm/shared" + options: --memory 100g --gpus device=1 --shm-size 53687091200 + steps: + - uses: actions/checkout@v4 + - name: (CI) Code Style check + run: | + echo "Workspace: ${GITHUB_WORKSPACE}" + ls + pip install black==24.3.0 + black --check --diff --color ./ + if [ $? -ne 0 ]; then + echo "Code style check failed, please run [black ./] before commit!" + exit 1 + fi + + build: + needs: lint + runs-on: Linux + env: + NVIDIA_DRIVER_CAPABILITIES: all + NVIDIA_VISIBLE_DEVICES: all + NVIDIA_DISABLE_REQUIRE: 1 + container: *container_template + steps: + - uses: actions/checkout@v4 + - name: (CI) Build docs + run: | + pip install -e . + pip install -r docs/requirements.txt + cd ${GITHUB_WORKSPACE}/docs + echo "Start Building docs..." + make html + - name: Upload pkg + uses: actions/upload-pages-artifact@v3 + with: + path: ${{ github.workspace }}/docs/build/html + retention-days: 3 + + test: + if: github.event_name == 'pull_request' + needs: lint + runs-on: Linux + env: + NVIDIA_DRIVER_CAPABILITIES: all + NVIDIA_VISIBLE_DEVICES: all + NVIDIA_DISABLE_REQUIRE: 1 + container: *container_template + steps: + - uses: actions/checkout@v4 + - name: (CI) Run tests + run: | + # pip install -e . + echo "Unitest Start" + # export HF_ENDPOINT=https://hf-mirror.com + # pytest tests + + publish: + if: github.event_name == 'push' && github.ref == 'refs/heads/main' + needs: build + runs-on: Linux + permissions: + pages: write + id-token: write + env: + NVIDIA_DRIVER_CAPABILITIES: all + NVIDIA_VISIBLE_DEVICES: all + NVIDIA_DISABLE_REQUIRE: 1 + container: *container_template + steps: + - uses: actions/checkout@v4 + - name: (CI) Publish package + run: echo "start publish stage" + - name: (CI) Download docs artifact + uses: actions/download-artifact@v4 + with: + name: github-pages + - name: (CI) Deploy GitHub Pages + uses: actions/deploy-pages@v4 \ No newline at end of file diff --git a/README.md b/README.md index 41e0a19..a72f0e7 100644 --- a/README.md +++ b/README.md @@ -5,8 +5,7 @@ [![Version](https://img.shields.io/badge/version-0.0.1-blue.svg)](https://github.com/DexForce/EmbodiChain/releases) [![License](https://img.shields.io/github/license/DexForce/EmbodiChain)](LICENSE) -[![Docs](https://img.shields.io/badge/docs-online-blue)](https://6921c7e19027fbac6753678c--astounding-horse-770602.netlify.app/introduction) -[![Build Status](https://img.shields.io/github/actions/workflow/status/DexForce/EmbodiChain/ci.yml?branch=main)](https://github.com/DexForce/EmbodiChain/actions) +[![GitHub Pages](https://img.shields.io/badge/GitHub%20Pages-docs-blue?logo=github&logoColor=white)](https://dexforce.github.io/EmbodiChain/introduction.html) --- @@ -31,9 +30,9 @@ EmbodiChain is an end-to-end, GPU-accelerated framework for Embodied AI. It stre To get started with EmbodiChain, follow these steps: -- [Installation Guide](https://6921c7e19027fbac6753678c--astounding-horse-770602.netlify.app/quick_start/install) -- [Quick Start Tutorial](https://6921c7e19027fbac6753678c--astounding-horse-770602.netlify.app/tutorial/) -- [API Reference](https://6921c7e19027fbac6753678c--astounding-horse-770602.netlify.app/api_reference/) +- [Installation Guide](https://dexforce.github.io/EmbodiChain/quick_start/install.html) +- [Quick Start Tutorial](https://dexforce.github.io/EmbodiChain/tutorial/index.html) +- [API Reference](https://dexforce.github.io/EmbodiChain/api_reference/index.html) ## Citation diff --git a/docs/source/introduction.rst b/docs/source/introduction.rst index 2c974cd..0780709 100644 --- a/docs/source/introduction.rst +++ b/docs/source/introduction.rst @@ -9,7 +9,7 @@ EmbodiChain .. image:: ../../assets/imgs/teaser.jpg :alt: teaser -📘 `Documentation `_ +📘 `Documentation `_ --- @@ -36,9 +36,9 @@ Getting Started To get started with EmbodiChain, follow these steps: -* `Installation Guide `_ -* `Quick Start Tutorial `_ -* `API Reference `_ +* `Installation Guide `_ +* `Quick Start Tutorial `_ +* `API Reference `_ Citation diff --git a/tests/gym/envs/test_embodied_env.py b/tests/gym/envs/test_embodied_env.py index 075bdcd..29ea0d8 100644 --- a/tests/gym/envs/test_embodied_env.py +++ b/tests/gym/envs/test_embodied_env.py @@ -97,10 +97,10 @@ ], "rigid_object": [ { - "uid": "paper_cup", + "uid": "duck", "shape": { "shape_type": "Mesh", - "fpath": "PaperCup/paper_cup.ply", + "fpath": "ToyDuck/toy_duck.glb", }, "body_scale": (0.75, 0.75, 1.0), "init_pos": (0.0, 0.0, 1.0),