Skip to content

Commit

Permalink
feat(docker): run vcs import outside Dockerfile (#11)
Browse files Browse the repository at this point in the history
* introduce src-imported stage

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* empty

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* chore(docker): separate `rosdep install` and `colcon build` RUN commands (#4719)

* reuse load-env.yaml to load env

* update base_image

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* fix base_image

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* vcs import outside dockerfile

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* refactor(ci): reuse `load-env.yaml` to load env (#4734)

* reuse load-env.yaml to load env

* update base_image

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* fix base_image

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

---------

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* install jq

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* copy src

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* revert format

* generate install package lists

* append || true

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* cat packages

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* chore(docker): separate `rosdep install` and `colcon build` RUN commands (#4719)

* wip

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* wip

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* Update Dockerfile

* Update Dockerfile

* install pacmod

* rename

* Revert "install pacmod"

This reverts commit ebff10f.

* install pacmod3

* register pamod3 repos

* ignore hadolint

* revert

* run set-dev-env.sh

* pip install

* copy

* rosdep update

* not use ros container

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* not use ros container

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>

* Update docker-build-and-push-main.yaml

* remove register

* format

* not remove src

---------

Signed-off-by: Yutaka Kondo <yutaka.kondo@youtalk.jp>
  • Loading branch information
youtalk authored May 21, 2024
1 parent 3daf304 commit c96f5ad
Show file tree
Hide file tree
Showing 3 changed files with 35 additions and 7 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/docker-build-and-push-main-self-hosted.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -56,9 +56,25 @@ jobs:
- name: Check out repository
uses: actions/checkout@v4

- name: Install vcstool
run: |
sudo apt-get -y update
sudo apt-get -y install python3-pip
pip install --no-cache-dir vcstool
- name: Set git config
uses: autowarefoundation/autoware-github-actions/set-git-config@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}

- name: Free disk space
uses: ./.github/actions/free-disk-space

- name: Run vcs import
run: |
mkdir src
vcs import src < autoware.repos
- name: Build 'autoware-openadk'
uses: ./.github/actions/docker-build-and-push
with:
Expand Down
16 changes: 16 additions & 0 deletions .github/workflows/docker-build-and-push-main.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -58,6 +58,22 @@ jobs:
- name: Check out repository
uses: actions/checkout@v4

- name: Install vcstool
run: |
sudo apt-get -y update
sudo apt-get -y install python3-pip
pip install --no-cache-dir vcstool
- name: Set git config
uses: autowarefoundation/autoware-github-actions/set-git-config@v1
with:
token: ${{ secrets.GITHUB_TOKEN }}

- name: Run vcs import
run: |
mkdir src
vcs import src < autoware.repos
- name: Build 'autoware-openadk'
if: steps.author-check.outputs.author-found == 'true' || ${{ github.event_name == 'workflow_dispatch' }}
uses: ./.github/actions/docker-build-and-push
Expand Down
10 changes: 3 additions & 7 deletions docker/autoware-openadk/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -50,14 +50,10 @@ WORKDIR /autoware
RUN --mount=type=ssh \
./setup-dev-env.sh -y rosdep \
&& pip uninstall -y ansible ansible-core \
&& pip install --no-cache-dir vcstool \
&& apt-get autoremove -y && apt-get clean -y && rm -rf /var/lib/apt/lists/* "$HOME"/.cache

WORKDIR /autoware
COPY autoware.repos /autoware/
RUN --mount=type=ssh \
mkdir src \
&& vcs import src < autoware.repos
# Copy repository files
COPY src /autoware/src

# Generate install package lists
RUN rosdep update && rosdep keys --ignore-src --from-paths src \
Expand Down Expand Up @@ -110,7 +106,7 @@ RUN source /opt/ros/"$ROS_DISTRO"/setup.bash \
-DCMAKE_EXPORT_COMPILE_COMMANDS=ON \
&& find /autoware/install -type d -exec chmod 777 {} \; \
&& chmod -R 777 /var/tmp/ccache \
&& rm -rf /autoware/build /autoware/src
&& rm -rf /autoware/build

CMD ["/bin/bash"]

Expand Down

0 comments on commit c96f5ad

Please sign in to comment.