CI nightlies cpu/gpu & cleanup #1
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
# Inspired by | |
# https://github.com/huggingface/peft/blob/main/.github/workflows/build_docker_images.yml | |
name: Build Docker images (scheduled) | |
on: | |
pull_request: # TODO(aliberts): for testing, delete before merge | |
branches: | |
- main | |
workflow_dispatch: | |
workflow_call: | |
schedule: | |
- cron: "0 1 * * *" | |
# concurrency: | |
# group: docker-image-builds | |
# cancel-in-progress: false | |
env: | |
PYTHON_VERSION: "3.10" | |
# CI_SLACK_CHANNEL: ${{ secrets.CI_DOCKER_CHANNEL }} | |
jobs: | |
latest-cpu: | |
name: "Build CPU" | |
runs-on: ubuntu-latest | |
steps: | |
- name: Cleanup disk | |
run: | | |
sudo df -h | |
# sudo ls -l /usr/local/lib/ | |
# sudo ls -l /usr/share/ | |
sudo du -sh /usr/local/lib/ | |
sudo du -sh /usr/share/ | |
sudo rm -rf /usr/local/lib/android | |
sudo rm -rf /usr/share/dotnet | |
sudo du -sh /usr/local/lib/ | |
sudo du -sh /usr/share/ | |
sudo df -h | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Select local envs dependencies # HACK(aliberts): to be removed for release | |
run: cp -t . .github/poetry/ci/pyproject.toml .github/poetry/ci/poetry.lock | |
- name: Checkout gym-aloha | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-aloha | |
path: envs/gym-aloha | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Checkout gym-xarm | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-xarm | |
path: envs/gym-xarm | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Checkout gym-pusht | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-pusht | |
path: envs/gym-pusht | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Login to DockerHub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Build and Push CPU | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
file: ./docker/lerobot-cpu/Dockerfile | |
push: true | |
tags: huggingface/lerobot-cpu | |
build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }} | |
# - name: Post to a Slack channel | |
# id: slack | |
# #uses: slackapi/[email protected] | |
# uses: slackapi/slack-github-action@6c661ce58804a1a20f6dc5fbee7f0381b469e001 | |
# with: | |
# # Slack channel id, channel name, or user id to post message. | |
# # See also: https://api.slack.com/methods/chat.postMessage#channels | |
# channel-id: ${{ env.CI_SLACK_CHANNEL }} | |
# # For posting a rich message using Block Kit | |
# payload: | | |
# { | |
# "text": "lerobot-cpu Docker Image build result: ${{ job.status }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}", | |
# "blocks": [ | |
# { | |
# "type": "section", | |
# "text": { | |
# "type": "mrkdwn", | |
# "text": "lerobot-cpu Docker Image build result: ${{ job.status }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}" | |
# } | |
# } | |
# ] | |
# } | |
# env: | |
# SLACK_BOT_TOKEN: ${{ secrets.SLACK_CIFEEDBACK_BOT_TOKEN }} | |
latest-cuda: | |
name: "Build GPU" | |
runs-on: ubuntu-latest | |
steps: | |
- name: Cleanup disk | |
run: | | |
sudo df -h | |
# sudo ls -l /usr/local/lib/ | |
# sudo ls -l /usr/share/ | |
sudo du -sh /usr/local/lib/ | |
sudo du -sh /usr/share/ | |
sudo rm -rf /usr/local/lib/android | |
sudo rm -rf /usr/share/dotnet | |
sudo du -sh /usr/local/lib/ | |
sudo du -sh /usr/share/ | |
sudo df -h | |
- name: Set up Docker Buildx | |
uses: docker/setup-buildx-action@v3 | |
- name: Check out code | |
uses: actions/checkout@v4 | |
- name: Select local envs dependencies # HACK(aliberts): to be removed for release | |
run: cp -t . .github/poetry/ci/pyproject.toml .github/poetry/ci/poetry.lock | |
- name: Checkout gym-aloha | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-aloha | |
path: envs/gym-aloha | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Checkout gym-xarm | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-xarm | |
path: envs/gym-xarm | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Checkout gym-pusht | |
uses: actions/checkout@v4 | |
with: | |
repository: huggingface/gym-pusht | |
path: envs/gym-pusht | |
ssh-key: ${{ secrets.SSH_PRIVATE_KEY }} | |
- name: Login to DockerHub | |
uses: docker/login-action@v3 | |
with: | |
username: ${{ secrets.DOCKERHUB_USERNAME }} | |
password: ${{ secrets.DOCKERHUB_PASSWORD }} | |
- name: Build and Push GPU | |
uses: docker/build-push-action@v5 | |
with: | |
context: . | |
file: ./docker/lerobot-gpu/Dockerfile | |
push: true | |
tags: huggingface/lerobot-gpu | |
build-args: PYTHON_VERSION=${{ env.PYTHON_VERSION }} | |
# - name: Post to a Slack channel | |
# id: slack | |
# #uses: slackapi/[email protected] | |
# uses: slackapi/slack-github-action@6c661ce58804a1a20f6dc5fbee7f0381b469e001 | |
# with: | |
# # Slack channel id, channel name, or user id to post message. | |
# # See also: https://api.slack.com/methods/chat.postMessage#channels | |
# channel-id: ${{ env.CI_SLACK_CHANNEL }} | |
# # For posting a rich message using Block Kit | |
# payload: | | |
# { | |
# "text": "lerobot-gpu Docker Image build result: ${{ job.status }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}", | |
# "blocks": [ | |
# { | |
# "type": "section", | |
# "text": { | |
# "type": "mrkdwn", | |
# "text": "lerobot-gpu Docker Image build result: ${{ job.status }}\n${{ github.event.pull_request.html_url || github.event.head_commit.url }}" | |
# } | |
# } | |
# ] | |
# } | |
# env: | |
# SLACK_BOT_TOKEN: ${{ secrets.SLACK_CIFEEDBACK_BOT_TOKEN }} |