File tree 2 files changed +95
-0
lines changed
2 files changed +95
-0
lines changed Original file line number Diff line number Diff line change
1
+ # https://help.github.com/en/articles/workflow-syntax-for-github-actions
2
+
3
+ name : CI Downstream
4
+
5
+ on :
6
+ push :
7
+ branches :
8
+ - " **"
9
+ paths-ignore :
10
+ - " .github/workflows/cache_*.yml"
11
+ - " docker/dev/**"
12
+ pull_request :
13
+ branches :
14
+ - " **"
15
+ paths-ignore :
16
+ - " .github/workflows/cache_*.yml"
17
+ - " docker/dev/**"
18
+ schedule :
19
+ # Cron syntax: [minute hour day_of_the_month month day_of_the_week]
20
+ - cron : " 0 2 * * 0,3" # Run every Sunday and Wednesday at 02:00
21
+ workflow_dispatch :
22
+
23
+ env :
24
+ DOCKER_REPO : jslee02/dart-dev # https://hub.docker.com/repository/docker/jslee02/dart-dev
25
+
26
+ jobs :
27
+ tracy :
28
+ name : gazebo
29
+ runs-on : ubuntu-latest
30
+ strategy :
31
+ fail-fast : false
32
+ matrix :
33
+ dart_version : [v6.14]
34
+ build_min : [ON]
35
+ env :
36
+ OS_VERSION : gazebo
37
+ DART_VERSION : ${{ matrix.dart_version }}
38
+ steps :
39
+ # https://github.com/marketplace/actions/docker-setup-qemu
40
+ - name : Set up QEMU
41
+ uses : docker/setup-qemu-action@v3
42
+ # https://github.com/marketplace/actions/docker-setup-buildx
43
+ - name : Set up Docker Buildx
44
+ uses : docker/setup-buildx-action@v3
45
+ # https://github.com/marketplace/actions/docker-login
46
+ - name : Login to DockerHub
47
+ uses : docker/login-action@v3
48
+ with :
49
+ username : ${{ secrets.DOCKER_USERNAME }}
50
+ password : ${{ secrets.DOCKER_PASSWORD }}
51
+ # https://github.com/marketplace/actions/build-and-push-docker-images
52
+ - name : Build and push
53
+ id : docker_build
54
+ uses : docker/build-push-action@v5
55
+ with :
56
+ file : ./docker/dev/${{ env.DART_VERSION }}/Dockerfile.${{ env.OS_VERSION }}
57
+ push : true
58
+ tags : ${{ env.DOCKER_REPO }}:${{ env.OS_VERSION }}-${{ env.DART_VERSION }}
59
+ - name : Image digest
60
+ run : echo ${{ steps.docker_build.outputs.digest }}
Original file line number Diff line number Diff line change
1
+ # Use an Ubuntu base image
2
+ FROM jslee02/dart-dev:ubuntu-jammy-v6.14
3
+
4
+ # Avoid warnings by switching to noninteractive
5
+ ENV DEBIAN_FRONTEND=noninteractive
6
+
7
+ WORKDIR /ws
8
+
9
+ # Compile and install DART and dartpy
10
+ COPY . /ws/dart
11
+ RUN rm -rf /ws/dart/build
12
+ RUN cmake \
13
+ -S dart \
14
+ -B dart/build \
15
+ -DCMAKE_INSTALL_PREFIX=/usr/ \
16
+ -DCMAKE_BUILD_TYPE=Release .. \
17
+ -DBUILD_SHARED_LIBS=ON \
18
+ && cmake \
19
+ --build dart/build \
20
+ --target install \
21
+ -j16
22
+
23
+ # Install Gazebo from source
24
+ ENV IGNITION_PHYSICS_VERSION=7
25
+ RUN apt-add-repository -s "deb http://packages.osrfoundation.org/gazebo/ubuntu-stable $(lsb_release -c -s) main"
26
+ RUN apt-get build-dep -y ignition-physics${IGNITION_PHYSICS_VERSION}-dev
27
+ RUN clone https://github.com/ignitionrobotics/ign-physics -b ign-physics${IGNITION_PHYSICS_VERSION}
28
+ RUN cmake \
29
+ -S ign-physics \
30
+ -B ign-physics/build \
31
+ -DCMAKE_BUILD_TYPE=Release .. \
32
+ && cmake \
33
+ --build build \
34
+ --target install \
35
+ -j16
You can’t perform that action at this time.
0 commit comments