From f440cc21cb8f4a3568893d57956c7e6f50279486 Mon Sep 17 00:00:00 2001 From: Wolfgang Hess Date: Wed, 29 Jun 2022 10:39:10 +0200 Subject: [PATCH] Move to GitHub Actions for CI. (#1884) This moves away from travis-ci.org which no longer works. Signed-off-by: Wolfgang Hess --- .dockerignore | 1 - .github/workflows/ci-bionic.yaml | 15 +++++++++++++ .github/workflows/ci-buster.yaml | 15 +++++++++++++ .github/workflows/ci-focal.yaml | 15 +++++++++++++ .travis.yml | 36 -------------------------------- README.rst | 6 +++--- scripts/load_docker_cache.sh | 26 ----------------------- scripts/save_docker_cache.sh | 30 -------------------------- 8 files changed, 48 insertions(+), 96 deletions(-) create mode 100644 .github/workflows/ci-bionic.yaml create mode 100644 .github/workflows/ci-buster.yaml create mode 100644 .github/workflows/ci-focal.yaml delete mode 100644 .travis.yml delete mode 100755 scripts/load_docker_cache.sh delete mode 100755 scripts/save_docker_cache.sh diff --git a/.dockerignore b/.dockerignore index 6647fc9..39ba3cc 100644 --- a/.dockerignore +++ b/.dockerignore @@ -1,4 +1,3 @@ **/Dockerfile* **/.dockerignore **/.git -**/.travis.yml diff --git a/.github/workflows/ci-bionic.yaml b/.github/workflows/ci-bionic.yaml new file mode 100644 index 0000000..76b6c90 --- /dev/null +++ b/.github/workflows/ci-bionic.yaml @@ -0,0 +1,15 @@ +name: Ubuntu 18.04 CI + +on: + push: + branches: ["master"] + pull_request: + branches: ["master"] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Run the Dockerfile + run: docker build . -f Dockerfile.bionic diff --git a/.github/workflows/ci-buster.yaml b/.github/workflows/ci-buster.yaml new file mode 100644 index 0000000..0faf26e --- /dev/null +++ b/.github/workflows/ci-buster.yaml @@ -0,0 +1,15 @@ +name: Debian Buster CI + +on: + push: + branches: ["master"] + pull_request: + branches: ["master"] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Run the Dockerfile + run: docker build . -f Dockerfile.buster diff --git a/.github/workflows/ci-focal.yaml b/.github/workflows/ci-focal.yaml new file mode 100644 index 0000000..e1bc5cb --- /dev/null +++ b/.github/workflows/ci-focal.yaml @@ -0,0 +1,15 @@ +name: Ubuntu 20.04 CI + +on: + push: + branches: ["master"] + pull_request: + branches: ["master"] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - name: Run the Dockerfile + run: docker build . -f Dockerfile.focal diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 8dc1031..0000000 --- a/.travis.yml +++ /dev/null @@ -1,36 +0,0 @@ -# Copyright 2016 The Cartographer Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -sudo: required -services: docker - -# Cache intermediate Docker layers. For a description of how this works, see: -# https://giorgos.sealabs.net/docker-cache-on-travis-and-docker-112.html -cache: - directories: - - /home/travis/docker/ - -env: - - LSB_RELEASE=bionic DOCKER_CACHE_FILE=/home/travis/docker/bionic-cache.tar.gz CC=gcc CXX=g++ - - LSB_RELEASE=focal DOCKER_CACHE_FILE=/home/travis/docker/focal-cache.tar.gz CC=gcc CXX=g++ - - LSB_RELEASE=stretch DOCKER_CACHE_FILE=/home/travis/docker/stretch-cache.tar.gz CC=gcc CXX=g++ - - LSB_RELEASE=buster DOCKER_CACHE_FILE=/home/travis/docker/buster-cache.tar.gz CC=gcc CXX=g++ - -before_install: scripts/load_docker_cache.sh - -install: true -script: - - docker build ${TRAVIS_BUILD_DIR} -t cartographer:${LSB_RELEASE} -f Dockerfile.${LSB_RELEASE} - --build-arg cc=$CC --build-arg cxx=$CXX - - scripts/save_docker_cache.sh diff --git a/README.rst b/README.rst index 1b216cb..9995a49 100644 --- a/README.rst +++ b/README.rst @@ -83,10 +83,10 @@ Slides of these Cartographer Open House meetings are listed below. - June 22, 2017: `Slides `_ - June 8, 2017: `Slides `_ -.. |build| image:: https://travis-ci.org/cartographer-project/cartographer.svg?branch=master - :alt: Build Status +.. |build| image:: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml/badge.svg + :alt: Ubuntu 20.04 Build Status :scale: 100% - :target: https://travis-ci.org/cartographer-project/cartographer + :target: https://github.com/cartographer-project/cartographer/actions/workflows/ci-focal.yaml .. |docs| image:: https://readthedocs.org/projects/google-cartographer/badge/?version=latest :alt: Documentation Status :scale: 100% diff --git a/scripts/load_docker_cache.sh b/scripts/load_docker_cache.sh deleted file mode 100755 index 4c37247..0000000 --- a/scripts/load_docker_cache.sh +++ /dev/null @@ -1,26 +0,0 @@ -#!/bin/bash - -# Copyright 2016 The Cartographer Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Cache intermediate Docker layers. For a description of how this works, see: -# https://giorgos.sealabs.net/docker-cache-on-travis-and-docker-112.html - -set -o errexit -set -o verbose -set -o pipefail - -if [ -f ${DOCKER_CACHE_FILE} ]; then - gunzip -c ${DOCKER_CACHE_FILE} | docker load; -fi diff --git a/scripts/save_docker_cache.sh b/scripts/save_docker_cache.sh deleted file mode 100755 index 7b2000e..0000000 --- a/scripts/save_docker_cache.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/bin/bash - -# Copyright 2016 The Cartographer Authors -# -# Licensed under the Apache License, Version 2.0 (the "License"); -# you may not use this file except in compliance with the License. -# You may obtain a copy of the License at -# -# http://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, software -# distributed under the License is distributed on an "AS IS" BASIS, -# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. -# See the License for the specific language governing permissions and -# limitations under the License. - -# Cache intermediate Docker layers. For a description of how this works, see: -# https://giorgos.sealabs.net/docker-cache-on-travis-and-docker-112.html - -set -o errexit -set -o verbose -set -o pipefail - -if [[ ${TRAVIS_BRANCH} == "master" ]] && - [[ ${TRAVIS_PULL_REQUEST} == "false" ]]; then - mkdir -p $(dirname ${DOCKER_CACHE_FILE}) - IMAGE_NAMES=$(docker history -q cartographer:${LSB_RELEASE} | grep -v '') - docker save ${IMAGE_NAMES} | gzip > ${DOCKER_CACHE_FILE}.new - mv ${DOCKER_CACHE_FILE}.new ${DOCKER_CACHE_FILE} -fi