Skip to content

Feature/split repos (#348) #1320

Feature/split repos (#348)

Feature/split repos (#348) #1320

Workflow file for this run

name: build_and_push_docker
on:
workflow_dispatch:
schedule:
- cron: 0 0 * * *
push:
branches:
- master
pull_request:
release:
types: [published]
jobs:
l4t_opencv:
name: build and push wamvtan/l4t_opencv
runs-on: ubuntu-22.04
timeout-minutes: 360
strategy:
matrix:
opencv_version: ["4.4.0", "4.5.0"]
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: ./.github/workflows/docker/l4t_opencv
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
opencv_version: ${{ matrix.opencv_version }}
# dev_container:
# name: build and push wamvtan/dev_container and wamvtan/dev_container_vnc
# runs-on: ubuntu-22.04
# timeout-minutes: 120
# strategy:
# fail-fast: false
# max-parallel: 8
# matrix:
# # gui: [novnc, vnc]
# gui: [novnc]
# include:
# - docker_image: wamvtan/dev_container
# base_image: ubuntu:22.04
# gui: novnc
# entrypoint: entrypoint.sh
# - docker_image: wamvtan/dev_container_vnc
# base_image: tiryoh/ros2-desktop-vnc:humble-amd64-20230115T1406
# gui: vnc
# entrypoint: entrypoint_vnc.sh
# steps:
# - uses: actions/checkout@v4
# - uses: ./.github/workflows/actions/cleanup_runner
# - uses: ./.github/workflows/docker/dev_container
# with:
# docker_username: ${{ secrets.DOCKER_USERNAME }}
# docker_password: ${{ secrets.DOCKER_PASSWORD }}
# image_name: ${{ matrix.docker_image }}
# base_image: ${{ matrix.base_image }}
# entrypoint: ${{ matrix.entrypoint }}
yolox:
name: build and push wamvtan/yolox
runs-on: ubuntu-22.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: ./.github/workflows/docker/yolox
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
yolox_trainer:
name: build and push wamvtan/yolox_trainer
runs-on: ubuntu-22.04
timeout-minutes: 30
needs: yolox
strategy:
matrix:
os: [linux-x64]
runner_version: [2.295.0]
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: ./.github/workflows/docker/yolox_trainer
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
github_actions_runner_version: ${{ matrix.runner_version }}
os_version: ${{ matrix.os }}
vrx:
name: build and push wamvtan/vrx
runs-on: ubuntu-22.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: ./.github/workflows/docker/vrx
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
auto_logger:
name: build and push wamvtan/auto_logger
runs-on: ubuntu-22.04
timeout-minutes: 30
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: ./.github/workflows/docker/vrx
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
export_wamv_repos:
name: export_wamv_repos
runs-on: ubuntu-22.04
timeout-minutes: 360
strategy:
matrix:
module: ["perception", "control", "drivers", "localization", "planning"]
steps:
- uses: actions/checkout@v4
- name: basic install
run: |
sudo apt install ansible
- name: Export repos file
run: ansible-playbook -i ansible/hosts/localhost.ini ansible/export_repos.yml --connection local -t ${{ matrix.module }} -t utility --become -e ansible_user=ubuntu
- uses: actions/upload-artifact@v3
with:
name: repos_file_${{ matrix.module }}
path: |
ansible/packages.repos
ansible/packages_exact.repos
wamv:
needs: export_wamv_repos
name: build and push wamvtan/wamv
runs-on: ubuntu-22.04
timeout-minutes: 360
strategy:
matrix:
module: ["perception", "control", "drivers", "localization", "planning"]
steps:
- uses: actions/checkout@v4
- uses: ./.github/workflows/actions/cleanup_runner
- uses: actions/download-artifact@v3
with:
name: repos_file_${{ matrix.module }}
path: ./.github/workflows/docker/wamv/repos
- run: ls ./.github/workflows/docker/wamv/repos
- run: cat ./.github/workflows/docker/wamv/repos/packages_exact.repos
- uses: ./.github/workflows/docker/wamv
with:
docker_username: ${{ secrets.DOCKER_USERNAME }}
docker_password: ${{ secrets.DOCKER_PASSWORD }}
module: ${{ matrix.module }}