Make heading of documentation a little nicer (#37) #166
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
name: docker-img-latest | |
on: | |
push: | |
branches: [ "main" ] | |
pull_request: | |
branches: [ "main" ] | |
jobs: | |
build: | |
runs-on: ubuntu-latest | |
############################################################## | |
## Configurations | |
############################################################## | |
env: | |
builder_ns: ghcr.io/open-rmf/rmf_deployment_template | |
base_registry: docker.io | |
domain_url: rmf-deployment-template.open-rmf.org | |
ros_distro: humble | |
tag: latest | |
############################################################## | |
steps: | |
# ### | |
# Login to github packages, our container registry | |
# ### | |
- name: Login to Github Packages | |
uses: docker/login-action@v1 | |
with: | |
registry: ghcr.io | |
username: ${{ github.actor }} | |
password: ${{ secrets.GHCR_PAT }} | |
- | |
name: Checkout | |
uses: actions/checkout@v3 | |
- | |
name: Install and run vcs import rmf | |
run: | | |
curl -sSL https://raw.githubusercontent.com/ros/rosdistro/master/ros.key -o /usr/share/keyrings/ros-archive-keyring.gpg | |
echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/ros-archive-keyring.gpg] http://packages.ros.org/ros2/ubuntu $(lsb_release -cs) main" | \ | |
sudo tee /etc/apt/sources.list.d/ros2.list > /dev/null | |
sudo apt update | |
sudo apt install python3-vcstool -y | |
mkdir rmf-src | |
vcs import rmf-src < rmf/rmf.repos | |
# ### | |
# build rosdep builder image | |
# ### | |
- | |
name: Build builder-rosdep | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf/builder-rosdep.Dockerfile | |
build-args: | | |
BASE_REGISTRY=${{ env.base_registry }} | |
ROS_DISTRO=${{ env.ros_distro }} | |
# push: true | |
tags: ${{ env.builder_ns }}/builder-rosdep:${{ env.tag }} | |
# ### | |
# build rmf image | |
# ### | |
- | |
name: Build rmf | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf/rmf.Dockerfile | |
build-args: | | |
BUILDER_NS=${{ env.builder_ns }} | |
TAG=${{ env.tag }} | |
push: true | |
tags: ${{ env.builder_ns }}/rmf:${{ env.tag }} | |
# ### | |
# build rmf simulation images | |
# ### | |
- | |
name: run vcs import rmf-simulation | |
run: | | |
mkdir rmf-simulation-src | |
vcs import rmf-simulation-src < rmf-simulation/rmf-simulation.repos | |
- | |
name: Build rmf-simulation | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf-simulation/rmf-simulation.Dockerfile | |
build-args: | | |
BUILDER_NS=${{ env.builder_ns }} | |
TAG=${{ env.tag }} | |
push: true | |
tags: ${{ env.builder_ns }}/rmf-simulation:${{ env.tag }} | |
# ### | |
# build rmf web images | |
# ### | |
- | |
name: run vcs import rmf-web | |
run: | | |
mkdir rmf-web-src | |
vcs import rmf-web-src < rmf-web/rmf-web.repos | |
- | |
name: Build builder-rmf-web | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf-web/builder-rmf-web.Dockerfile | |
build-args: | | |
BUILDER_NS=${{ env.builder_ns }} | |
TAG=${{ env.tag }} | |
# push: true | |
tags: ${{ env.builder_ns }}/builder-rmf-web:${{ env.tag }} | |
- | |
name: Build rmf-web-rmf-server | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf-web/rmf-web-rmf-server.Dockerfile | |
build-args: | | |
BUILDER_NS=${{ env.builder_ns }} | |
TAG=${{ env.tag }} | |
push: true | |
tags: ${{ env.builder_ns }}/rmf-web-rmf-server:${{ env.tag }} | |
- | |
name: Build rmf-web-dashboard | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf-web/rmf-web-dashboard.Dockerfile | |
build-args: | | |
BASE_REGISTRY=${{ env.base_registry }} | |
TAG=${{ env.tag }} | |
DOMAIN_URL=${{ env.domain_url }} | |
BUILDER_NS=${{ env.builder_ns }} | |
push: true | |
tags: ${{ env.builder_ns }}/rmf-web-dashboard:${{ env.tag }} | |
- | |
## Dashboard without custom url, use defaults env for react app | |
name: Build rmf-web-dashboard without auth | |
uses: docker/build-push-action@v3 | |
with: | |
context: . | |
file: rmf-web/rmf-web-dashboard.Dockerfile | |
build-args: | | |
BASE_REGISTRY=${{ env.base_registry }} | |
TAG=${{ env.tag }} | |
DOMAIN_URL=${{ env.domain_url }} | |
BUILDER_NS=${{ env.builder_ns }} | |
REACT_APP_TRAJECTORY_SERVER=ws://localhost:8006 | |
REACT_APP_RMF_SERVER=http://localhost:8000 | |
REACT_APP_AUTH_PROVIDER= | |
REACT_APP_KEYCLOAK_CONFIG= | |
push: true | |
tags: ${{ env.builder_ns }}/rmf-web-dashboard-local:${{ env.tag }} |