Skip to content

Commit

Permalink
Fallback message if unable to get git revision (#142)
Browse files Browse the repository at this point in the history
Fix http://build.ros.org/job/Nbin_uF64__ypspur__ubuntu_focal_amd64__binary/5/

Uses `-C <path>` when calling `git rev-parse`
Set failure message when unable to get a git revision

Co-authored-by: Shane Loretz <[email protected]>
  • Loading branch information
at-wat and sloretz authored Jul 31, 2020
1 parent 80fd27a commit 0ac580c
Show file tree
Hide file tree
Showing 4 changed files with 38 additions and 21 deletions.
1 change: 0 additions & 1 deletion .dockerignore

This file was deleted.

9 changes: 7 additions & 2 deletions .test.Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,11 @@ FROM ubuntu:${UBUNTU_VERSION}
ENV DEBIAN_FRONTEND=noninteractive

RUN apt-get -qq update \
&& apt-get install -y --no-install-recommends build-essential cmake libgtest-dev
&& apt-get install -y --no-install-recommends \
build-essential \
cmake \
git \
libgtest-dev
# don't clean apt-cache to reuse later

ENV CTEST_OUTPUT_ON_FAILURE=1
Expand All @@ -29,6 +33,7 @@ RUN apt-get install -y --no-install-recommends libreadline-dev

RUN mkdir -p /yp-spur/build-readline
WORKDIR /yp-spur/build-readline
RUN cmake .. && make -j && make test && make install
RUN cmake .. && make -j && make test && make install && ldconfig
# check that ypspur-interpreter is built with readline
RUN ldd ypspur-interpreter | grep libreadline.so
RUN ypspur-coordinator --version
5 changes: 5 additions & 0 deletions .travis.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,9 +19,14 @@ env:
- USE_DOCKER=true UBUNTU_VERSION=xenial
- USE_DOCKER=true UBUNTU_VERSION=bionic
- USE_DOCKER=true UBUNTU_VERSION=focal
- USE_DOCKER=true UBUNTU_VERSION=focal WITHOUT_GIT=true
- USE_MINGW=true

before_install:
- |
if [ x${WITHOUT_GIT} == xtrue ]; then
mv .git .git2
fi
- |
if [ x${USE_MINGW} == xtrue ]; then
sudo apt-get update -y -qq
Expand Down
44 changes: 26 additions & 18 deletions cmake/modules/GetGitRevision.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -2,25 +2,33 @@

function(get_git_revision)

find_program(GIT
NAMES git
)
find_program(GIT
NAMES git
)

if(NOT GIT)
set(GIT_REVISION_SHORT "Snapshot" PARENT_SCOPE)
set(GIT_REVISION "Failed to get git revision." PARENT_SCOPE)
endif(NOT GIT)
if(NOT GIT)
set(GIT_REVISION_SHORT "Snapshot" PARENT_SCOPE)
set(GIT_REVISION "Failed to get git revision." PARENT_SCOPE)
else()
exec_program(${GIT} -C "${CMAKE_CURRENT_SOURCE_DIR}"
ARGS "rev-parse HEAD"
OUTPUT_VARIABLE REVISION
RETURN_VALUE rev_parse_ret
)
exec_program(${GIT} -C "${CMAKE_CURRENT_SOURCE_DIR}"
ARGS "rev-parse --short HEAD"
OUTPUT_VARIABLE REVISION_SHORT
RETURN_VALUE rev_parse_short_ret
)

exec_program(${GIT} ${CMAKE_CURRENT_SOURCE_DIR}
ARGS "rev-parse HEAD"
OUTPUT_VARIABLE REVISION
)
exec_program(${GIT} ${CMAKE_CURRENT_SOURCE_DIR}
ARGS "rev-parse --short HEAD"
OUTPUT_VARIABLE REVISION_SHORT
)

set(GIT_REVISION_SHORT ${REVISION_SHORT} PARENT_SCOPE)
set(GIT_REVISION ${REVISION} PARENT_SCOPE)
message(WARNING "${rev_parse_ret} ${rev_parse_short_ret}")
if((NOT ${rev_parse_ret} EQUAL "0") OR (NOT ${rev_parse_short_ret} EQUAL "0"))
set(GIT_REVISION_SHORT "Snapshot" PARENT_SCOPE)
set(GIT_REVISION "Failed to get git revision." PARENT_SCOPE)
else()
set(GIT_REVISION_SHORT ${REVISION_SHORT} PARENT_SCOPE)
set(GIT_REVISION ${REVISION} PARENT_SCOPE)
endif()
endif()

endfunction(get_git_revision)

0 comments on commit 0ac580c

Please sign in to comment.