204 lines
6.6 KiB
YAML
204 lines
6.6 KiB
YAML
# Inspired by
|
|
# https://github.com/huggingface/peft/blob/main/.github/workflows/build_docker_images.yml
|
|
name: Builds
|
|
|
|
on:
|
|
workflow_dispatch:
|
|
workflow_call:
|
|
schedule:
|
|
- cron: "0 1 * * *"
|
|
|
|
env:
|
|
PYTHON_VERSION: "3.10"
|
|
# CI_SLACK_CHANNEL: ${{ secrets.CI_DOCKER_CHANNEL }}
|
|
|
|
jobs:
|
|
latest-cpu:
|
|
name: 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
|
|
|
|
# HACK(aliberts): to be removed for release
|
|
# -----------------------------------------
|
|
- 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: Set up Python 3.10
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.10"
|
|
|
|
- name: Change envs dependencies as local path
|
|
run: python .github/scripts/dep_build.py
|
|
# -----------------------------------------
|
|
|
|
- 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/slack-github-action@v1.25.0
|
|
# 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: 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
|
|
|
|
# HACK(aliberts): to be removed for release
|
|
# -----------------------------------------
|
|
- 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: Set up Python 3.10
|
|
uses: actions/setup-python@v5
|
|
with:
|
|
python-version: "3.10"
|
|
|
|
- name: Change envs dependencies as local path
|
|
run: python .github/scripts/dep_build.py
|
|
# -----------------------------------------
|
|
|
|
- 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/slack-github-action@v1.25.0
|
|
# 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 }}
|