samuelcombey commited on
Commit
95a2fa6
·
verified ·
1 Parent(s): 58c9041

Delete .github

Browse files
.github/ISSUE_TEMPLATE/bug-report.yml DELETED
@@ -1,68 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- name: "\U0001F41B Bug Report"
16
- description: Submit a bug report to help us improve LeRobot
17
- body:
18
- - type: markdown
19
- attributes:
20
- value: |
21
- Thanks for taking the time to submit a bug report! 🐛
22
- If this is not a bug related to the LeRobot library directly, but instead a general question about your code or the library specifically please use our [discord](https://discord.gg/s3KuuzsPFb).
23
-
24
- - type: textarea
25
- id: system-info
26
- attributes:
27
- label: System Info
28
- description: If needed, you can share your lerobot configuration with us by running `python -m lerobot.scripts.display_sys_info` and copy-pasting its outputs below
29
- render: Shell
30
- placeholder: lerobot version, OS, python version, numpy version, torch version, and lerobot's configuration
31
- validations:
32
- required: true
33
-
34
- - type: checkboxes
35
- id: information-scripts-examples
36
- attributes:
37
- label: Information
38
- description: 'The problem arises when using:'
39
- options:
40
- - label: "One of the scripts in the examples/ folder of LeRobot"
41
- - label: "My own task or dataset (give details below)"
42
-
43
- - type: textarea
44
- id: reproduction
45
- validations:
46
- required: true
47
- attributes:
48
- label: Reproduction
49
- description: |
50
- If needed, provide a simple code sample that reproduces the problem you ran into. It can be a Colab link or just a code snippet.
51
- Sharing error messages or stack traces could be useful as well!
52
- Important! Use code tags to correctly format your code. See https://help.github.com/en/github/writing-on-github/creating-and-highlighting-code-blocks#syntax-highlighting
53
- Try to avoid screenshots, as they are hard to read and don't allow copy-and-pasting.
54
-
55
- placeholder: |
56
- Steps to reproduce the behavior:
57
-
58
- 1.
59
- 2.
60
- 3.
61
-
62
- - type: textarea
63
- id: expected-behavior
64
- validations:
65
- required: true
66
- attributes:
67
- label: Expected behavior
68
- description: "A clear and concise description of what you would expect to happen."
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/PULL_REQUEST_TEMPLATE.md DELETED
@@ -1,34 +0,0 @@
1
- ## What this does
2
- Explain what this PR does. Feel free to tag your PR with the appropriate label(s).
3
-
4
- Examples:
5
- | Title | Label |
6
- |----------------------|-----------------|
7
- | Fixes #[issue] | (🐛 Bug) |
8
- | Adds new dataset | (🗃️ Dataset) |
9
- | Optimizes something | (⚡️ Performance) |
10
-
11
- ## How it was tested
12
- Explain/show how you tested your changes.
13
-
14
- Examples:
15
- - Added `test_something` in `tests/test_stuff.py`.
16
- - Added `new_feature` and checked that training converges with policy X on dataset/environment Y.
17
- - Optimized `some_function`, it now runs X times faster than previously.
18
-
19
- ## How to checkout & try? (for the reviewer)
20
- Provide a simple way for the reviewer to try out your changes.
21
-
22
- Examples:
23
- ```bash
24
- pytest -sx tests/test_stuff.py::test_something
25
- ```
26
- ```bash
27
- python lerobot/scripts/train.py --some.option=true
28
- ```
29
-
30
- ## SECTION TO REMOVE BEFORE SUBMITTING YOUR PR
31
- **Note**: Anyone in the community is free to review the PR once the tests have passed. Feel free to tag
32
- members/contributors who may be interested in your PR. Try to avoid tagging more than 3 people.
33
-
34
- **Note**: Before submitting this PR, please read the [contributor guideline](https://github.com/huggingface/lerobot/blob/main/CONTRIBUTING.md#submitting-a-pull-request-pr).
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/build-docker-images.yml DELETED
@@ -1,135 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- # Inspired by
16
- # https://github.com/huggingface/peft/blob/main/.github/workflows/build_docker_images.yml
17
- name: Builds
18
-
19
- on:
20
- workflow_dispatch:
21
- workflow_call:
22
- schedule:
23
- - cron: "0 1 * * *"
24
-
25
- permissions: {}
26
-
27
- env:
28
- PYTHON_VERSION: "3.10"
29
-
30
- jobs:
31
- latest-cpu:
32
- name: CPU
33
- runs-on:
34
- group: aws-general-8-plus
35
- steps:
36
- - name: Install Git LFS
37
- run: |
38
- sudo apt-get update
39
- sudo apt-get install git-lfs
40
- git lfs install
41
-
42
- - name: Set up Docker Buildx
43
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
44
- with:
45
- cache-binary: false
46
-
47
- - name: Check out code
48
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
49
- with:
50
- lfs: true
51
- persist-credentials: false
52
-
53
- - name: Login to DockerHub
54
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
55
- with:
56
- username: ${{ secrets.DOCKERHUB_USERNAME }}
57
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
58
-
59
- - name: Build and Push CPU
60
- uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 # v5.4.0
61
- with:
62
- context: .
63
- file: ./docker/lerobot-cpu/Dockerfile
64
- push: true
65
- tags: huggingface/lerobot-cpu
66
- build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }}
67
-
68
-
69
- latest-cuda:
70
- name: GPU
71
- runs-on:
72
- group: aws-general-8-plus
73
- steps:
74
- - name: Install Git LFS
75
- run: |
76
- sudo apt-get update
77
- sudo apt-get install git-lfs
78
- git lfs install
79
-
80
- - name: Set up Docker Buildx
81
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
82
- with:
83
- cache-binary: false
84
-
85
- - name: Check out code
86
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
87
- with:
88
- lfs: true
89
- persist-credentials: false
90
-
91
- - name: Login to DockerHub
92
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
93
- with:
94
- username: ${{ secrets.DOCKERHUB_USERNAME }}
95
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
96
-
97
- - name: Build and Push GPU
98
- uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 # v5.4.0
99
- with:
100
- context: .
101
- file: ./docker/lerobot-gpu/Dockerfile
102
- push: true
103
- tags: huggingface/lerobot-gpu
104
- build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }}
105
-
106
-
107
- latest-cuda-dev:
108
- name: GPU Dev
109
- runs-on:
110
- group: aws-general-8-plus
111
- steps:
112
- - name: Set up Docker Buildx
113
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
114
- with:
115
- cache-binary: false
116
-
117
- - name: Check out code
118
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
119
- with:
120
- persist-credentials: false
121
-
122
- - name: Login to DockerHub
123
- uses: docker/login-action@74a5d142397b4f367a81961eba4e8cd7edddf772 # v3.4.0
124
- with:
125
- username: ${{ secrets.DOCKERHUB_USERNAME }}
126
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
127
-
128
- - name: Build and Push GPU dev
129
- uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 # v5.4.0
130
- with:
131
- context: .
132
- file: ./docker/lerobot-gpu-dev/Dockerfile
133
- push: true
134
- tags: huggingface/lerobot-gpu:dev
135
- build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/build_documentation.yml DELETED
@@ -1,23 +0,0 @@
1
- name: Build documentation
2
-
3
- on:
4
- workflow_dispatch:
5
- push:
6
- paths:
7
- - "docs/**"
8
- branches:
9
- - main
10
- - doc-builder*
11
- - v*-release
12
-
13
-
14
- jobs:
15
- build: # zizmor: ignore[excessive-permissions] We follow the same pattern as in Transformers
16
- uses: huggingface/doc-builder/.github/workflows/build_main_documentation.yml@main
17
- with:
18
- commit_sha: ${{ github.sha }}
19
- package: lerobot
20
- additional_args: --not_python_module
21
- secrets:
22
- token: ${{ secrets.HUGGINGFACE_PUSH }}
23
- hf_token: ${{ secrets.HF_DOC_BUILD_PUSH }}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/build_pr_documentation.yml DELETED
@@ -1,19 +0,0 @@
1
- name: Build PR Documentation
2
-
3
- on:
4
- pull_request:
5
- paths:
6
- - "docs/**"
7
-
8
- concurrency:
9
- group: ${{ github.workflow }}-${{ github.head_ref || github.run_id }}
10
- cancel-in-progress: true
11
-
12
- jobs:
13
- build: # zizmor: ignore[excessive-permissions] We follow the same pattern as in Transformers
14
- uses: huggingface/doc-builder/.github/workflows/build_pr_documentation.yml@main
15
- with:
16
- commit_sha: ${{ github.event.pull_request.head.sha }}
17
- pr_number: ${{ github.event.number }}
18
- package: lerobot
19
- additional_args: --not_python_module
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/nightly-tests.yml DELETED
@@ -1,93 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- # Inspired by
16
- # https://github.com/huggingface/peft/blob/main/.github/workflows/nightly.yml
17
- name: Nightly
18
-
19
- on:
20
- workflow_dispatch:
21
- schedule:
22
- - cron: "0 2 * * *"
23
-
24
- permissions: {}
25
-
26
- # env:
27
- # SLACK_API_TOKEN: ${{ secrets.SLACK_API_TOKEN }}
28
- jobs:
29
- run_all_tests_cpu:
30
- name: CPU
31
- strategy:
32
- fail-fast: false
33
- runs-on:
34
- group: aws-general-8-plus
35
- container:
36
- image: huggingface/lerobot-cpu:latest # zizmor: ignore[unpinned-images]
37
- options: --shm-size "16gb"
38
- credentials:
39
- username: ${{ secrets.DOCKERHUB_USERNAME }}
40
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
41
- defaults:
42
- run:
43
- shell: bash
44
- working-directory: /lerobot
45
- steps:
46
- - name: Tests
47
- run: pytest -v --cov=./lerobot --disable-warnings tests
48
-
49
- - name: Tests end-to-end
50
- run: make test-end-to-end
51
-
52
-
53
- run_all_tests_single_gpu:
54
- name: GPU
55
- strategy:
56
- fail-fast: false
57
- runs-on:
58
- group: aws-g6-4xlarge-plus
59
- env:
60
- CUDA_VISIBLE_DEVICES: "0"
61
- TEST_TYPE: "single_gpu"
62
- container:
63
- image: huggingface/lerobot-gpu:latest # zizmor: ignore[unpinned-images]
64
- options: --gpus all --shm-size "16gb"
65
- credentials:
66
- username: ${{ secrets.DOCKERHUB_USERNAME }}
67
- password: ${{ secrets.DOCKERHUB_PASSWORD }}
68
- defaults:
69
- run:
70
- shell: bash
71
- working-directory: /lerobot
72
- steps:
73
- - name: Nvidia-smi
74
- run: nvidia-smi
75
-
76
- - name: Test
77
- run: pytest -v --cov=./lerobot --cov-report=xml --disable-warnings tests
78
- # TODO(aliberts): Link with HF Codecov account
79
- # - name: Upload coverage reports to Codecov with GitHub Action
80
- # uses: codecov/codecov-action@v4
81
- # with:
82
- # files: ./coverage.xml
83
- # verbose: true
84
- - name: Tests end-to-end
85
- env:
86
- DEVICE: cuda
87
- run: make test-end-to-end
88
-
89
- # - name: Generate Report
90
- # if: always()
91
- # run: |
92
- # pip install slack_sdk tabulate
93
- # python scripts/log_reports.py >> $GITHUB_STEP_SUMMARY
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/quality.yml DELETED
@@ -1,72 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- name: Quality
16
-
17
- on:
18
- workflow_dispatch:
19
- workflow_call:
20
- pull_request:
21
- push:
22
- branches:
23
- - main
24
-
25
- permissions: {}
26
-
27
- env:
28
- PYTHON_VERSION: "3.10"
29
-
30
- jobs:
31
- style:
32
- name: Style
33
- runs-on: ubuntu-latest
34
- steps:
35
- - name: Checkout Repository
36
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
37
- with:
38
- persist-credentials: false
39
-
40
- - name: Set up Python
41
- uses: actions/setup-python@7f4fc3e22c37d6ff65e88745f38bd3157c663f7c # v4.9.1
42
- with:
43
- python-version: ${{ env.PYTHON_VERSION }}
44
-
45
- - name: Get Ruff Version from pre-commit-config.yaml
46
- id: get-ruff-version
47
- run: |
48
- RUFF_VERSION=$(awk '/repo: https:\/\/github.com\/astral-sh\/ruff-pre-commit/{flag=1;next}/rev:/{if(flag){print $2;exit}}' .pre-commit-config.yaml)
49
- echo "ruff_version=${RUFF_VERSION}" >> $GITHUB_OUTPUT
50
-
51
- - name: Install Ruff
52
- env:
53
- RUFF_VERSION: ${{ steps.get-ruff-version.outputs.ruff_version }}
54
- run: python -m pip install "ruff==${RUFF_VERSION}"
55
-
56
- - name: Ruff check
57
- run: ruff check --output-format=github
58
-
59
- - name: Ruff format
60
- run: ruff format --diff
61
-
62
- typos:
63
- name: Typos
64
- runs-on: ubuntu-latest
65
- steps:
66
- - name: Checkout Repository
67
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
68
- with:
69
- persist-credentials: false
70
-
71
- - name: typos-action
72
- uses: crate-ci/typos@db35ee91e80fbb447f33b0e5fbddb24d2a1a884f # v1.29.10
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/test-docker-build.yml DELETED
@@ -1,82 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- # Inspired by
16
- # https://github.com/huggingface/peft/blob/main/.github/workflows/test-docker-build.yml
17
- name: Test Dockerfiles
18
-
19
- on:
20
- pull_request:
21
- paths:
22
- # Run only when DockerFile files are modified
23
- - "docker/**"
24
-
25
- permissions: {}
26
-
27
- env:
28
- PYTHON_VERSION: "3.10"
29
-
30
- jobs:
31
- get_changed_files:
32
- name: Detect modified Dockerfiles
33
- runs-on: ubuntu-latest
34
- outputs:
35
- matrix: ${{ steps.set-matrix.outputs.matrix }}
36
- steps:
37
- - name: Check out code
38
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
39
- with:
40
- persist-credentials: false
41
-
42
- - name: Get changed files
43
- id: changed-files
44
- uses: tj-actions/changed-files@3f54ebb830831fc121d3263c1857cfbdc310cdb9 #v42
45
- with:
46
- files: docker/**
47
- json: "true"
48
-
49
- - name: Run step if only the files listed above change # zizmor: ignore[template-injection]
50
- if: steps.changed-files.outputs.any_changed == 'true'
51
- id: set-matrix
52
- run: |
53
- echo "matrix=${{ steps.changed-files.outputs.all_changed_files}}" >> $GITHUB_OUTPUT
54
-
55
- build_modified_dockerfiles:
56
- name: Build modified Docker images
57
- needs: get_changed_files
58
- runs-on:
59
- group: aws-general-8-plus
60
- if: needs.get_changed_files.outputs.matrix != ''
61
- strategy:
62
- fail-fast: false
63
- matrix:
64
- docker-file: ${{ fromJson(needs.get_changed_files.outputs.matrix) }}
65
- steps:
66
- - name: Set up Docker Buildx
67
- uses: docker/setup-buildx-action@b5ca514318bd6ebac0fb2aedd5d36ec1b5c232a2 # v3.10.0
68
- with:
69
- cache-binary: false
70
-
71
- - name: Check out code
72
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
73
- with:
74
- persist-credentials: false
75
-
76
- - name: Build Docker image
77
- uses: docker/build-push-action@ca052bb54ab0790a636c9b5f226502c73d547a25 # v5.4.0
78
- with:
79
- file: ${{ matrix.docker-file }}
80
- context: .
81
- push: False
82
- build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }}
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/test.yml DELETED
@@ -1,150 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- name: Tests
16
-
17
- on:
18
- pull_request:
19
- paths:
20
- - "lerobot/**"
21
- - "tests/**"
22
- - "examples/**"
23
- - ".github/**"
24
- - "pyproject.toml"
25
- - ".pre-commit-config.yaml"
26
- - "Makefile"
27
- - ".cache/**"
28
- push:
29
- branches:
30
- - main
31
- paths:
32
- - "lerobot/**"
33
- - "tests/**"
34
- - "examples/**"
35
- - ".github/**"
36
- - "pyproject.toml"
37
- - ".pre-commit-config.yaml"
38
- - "Makefile"
39
- - ".cache/**"
40
-
41
- permissions: {}
42
-
43
- env:
44
- UV_VERSION: "0.6.0"
45
-
46
- jobs:
47
- pytest:
48
- name: Pytest
49
- runs-on: ubuntu-latest
50
- env:
51
- MUJOCO_GL: egl
52
- steps:
53
- - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
54
- with:
55
- lfs: true # Ensure LFS files are pulled
56
- persist-credentials: false
57
-
58
- - name: Install apt dependencies
59
- # portaudio19-dev is needed to install pyaudio
60
- run: |
61
- sudo apt-get update && \
62
- sudo apt-get install -y libegl1-mesa-dev ffmpeg portaudio19-dev
63
-
64
- - name: Install uv and python
65
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
66
- with:
67
- enable-cache: true
68
- version: ${{ env.UV_VERSION }}
69
- python-version: "3.10"
70
-
71
- - name: Install lerobot (all extras)
72
- run: uv sync --all-extras
73
-
74
- - name: Test with pytest
75
- run: |
76
- uv run pytest tests -v --cov=./lerobot --durations=0 \
77
- -W ignore::DeprecationWarning:imageio_ffmpeg._utils:7 \
78
- -W ignore::UserWarning:torch.utils.data.dataloader:558 \
79
- -W ignore::UserWarning:gymnasium.utils.env_checker:247 \
80
- && rm -rf tests/outputs outputs
81
-
82
- pytest-minimal:
83
- name: Pytest (minimal install)
84
- runs-on: ubuntu-latest
85
- env:
86
- MUJOCO_GL: egl
87
- steps:
88
- - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
89
- with:
90
- lfs: true # Ensure LFS files are pulled
91
- persist-credentials: false
92
-
93
- - name: Install apt dependencies
94
- run: sudo apt-get update && sudo apt-get install -y ffmpeg
95
-
96
- - name: Install uv and python
97
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
98
- with:
99
- enable-cache: true
100
- version: ${{ env.UV_VERSION }}
101
- python-version: "3.10"
102
-
103
- - name: Install lerobot
104
- run: uv sync --extra "test"
105
-
106
- - name: Test with pytest
107
- run: |
108
- uv run pytest tests -v --cov=./lerobot --durations=0 \
109
- -W ignore::DeprecationWarning:imageio_ffmpeg._utils:7 \
110
- -W ignore::UserWarning:torch.utils.data.dataloader:558 \
111
- -W ignore::UserWarning:gymnasium.utils.env_checker:247 \
112
- && rm -rf tests/outputs outputs
113
-
114
- end-to-end:
115
- name: End-to-end
116
- runs-on: ubuntu-latest
117
- env:
118
- MUJOCO_GL: egl
119
- steps:
120
- - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
121
- with:
122
- lfs: true # Ensure LFS files are pulled
123
- persist-credentials: false
124
-
125
- - name: Install apt dependencies
126
- # portaudio19-dev is needed to install pyaudio
127
- run: |
128
- sudo apt-get update && \
129
- sudo apt-get install -y libegl1-mesa-dev ffmpeg portaudio19-dev
130
-
131
- - name: Install uv and python
132
- uses: astral-sh/setup-uv@d4b2f3b6ecc6e67c4457f6d3e41ec42d3d0fcb86 # v5.4.2
133
- with:
134
- enable-cache: true
135
- version: ${{ env.UV_VERSION }}
136
- python-version: "3.10"
137
-
138
- - name: Install lerobot (all extras)
139
- run: |
140
- uv venv
141
- uv sync --all-extras
142
-
143
- - name: venv
144
- run: |
145
- echo "PYTHON_PATH=${{ github.workspace }}/.venv/bin/python" >> $GITHUB_ENV
146
-
147
- - name: Test end-to-end
148
- run: |
149
- make test-end-to-end \
150
- && rm -rf outputs
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/trufflehog.yml DELETED
@@ -1,35 +0,0 @@
1
- # Copyright 2024 The HuggingFace Inc. team. All rights reserved.
2
- #
3
- # Licensed under the Apache License, Version 2.0 (the "License");
4
- # you may not use this file except in compliance with the License.
5
- # You may obtain a copy of the License at
6
- #
7
- # http://www.apache.org/licenses/LICENSE-2.0
8
- #
9
- # Unless required by applicable law or agreed to in writing, software
10
- # distributed under the License is distributed on an "AS IS" BASIS,
11
- # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
- # See the License for the specific language governing permissions and
13
- # limitations under the License.
14
-
15
- on:
16
- push:
17
-
18
- name: Secret Leaks
19
-
20
- permissions: {}
21
-
22
- jobs:
23
- trufflehog:
24
- runs-on: ubuntu-latest
25
- steps:
26
- - name: Checkout code
27
- uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
28
- with:
29
- fetch-depth: 0
30
- persist-credentials: false
31
-
32
- - name: Secret Scanning
33
- uses: trufflesecurity/trufflehog@90694bf9af66e7536abc5824e7a87246dbf933cb # v3.88.35
34
- with:
35
- extra_args: --only-verified
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
.github/workflows/upload_pr_documentation.yml DELETED
@@ -1,16 +0,0 @@
1
- name: Upload PR Documentation
2
-
3
- on: # zizmor: ignore[dangerous-triggers] We follow the same pattern as in Transformers
4
- workflow_run:
5
- workflows: [ "Build PR Documentation" ]
6
- types:
7
- - completed
8
-
9
- jobs:
10
- build: # zizmor: ignore[excessive-permissions] We follow the same pattern as in Transformers
11
- uses: huggingface/doc-builder/.github/workflows/upload_pr_documentation.yml@main
12
- with:
13
- package_name: lerobot
14
- secrets:
15
- hf_token: ${{ secrets.HF_DOC_BUILD_PUSH }}
16
- comment_bot_token: ${{ secrets.COMMENT_BOT_TOKEN }}