Browse Source

Convert CI to GitHub Actions

Travis has unfortunately been severely rate limited by Docker Hub so we
have to switch to GitHub, which has an agreement with Docker to avoid
the rate limiting.
tags/v1.11.90
Pierre Ossman 2 years ago
parent
commit
abcabc5a9e

.travis/bionic/Dockerfile → .github/containers/bionic/Dockerfile View File


.travis/bionic/build.sh → .github/containers/bionic/build.sh View File


.travis/centos7/Dockerfile → .github/containers/centos7/Dockerfile View File


.travis/centos7/build.sh → .github/containers/centos7/build.sh View File


.travis/centos8/Dockerfile → .github/containers/centos8/Dockerfile View File


.travis/centos8/build.sh → .github/containers/centos8/build.sh View File


.travis/focal/Dockerfile → .github/containers/focal/Dockerfile View File


.travis/focal/build.sh → .github/containers/focal/build.sh View File


.travis/xenial/Dockerfile → .github/containers/xenial/Dockerfile View File


.travis/xenial/build.sh → .github/containers/xenial/build.sh View File


+ 73
- 1
.github/workflows/build.yml View File

@@ -3,7 +3,79 @@ name: Build
on: [push, pull_request]

jobs:
build:
build-linux:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
sudo apt-get update
sudo apt-get install -y libgnutls28-dev libfltk1.3-dev fluid gettext
sudo apt-get install -y libxtst-dev libxdamage-dev libxfixes-dev libxrandr-dev libpam-dev
- name: Configure
run: cmake -DCMAKE_BUILD_TYPE=Debug -S . -B build
- name: Build
working-directory: build
run: make
- name: Install
working-directory: build
run: make tarball

build-windows:
runs-on: windows-latest
defaults:
run:
shell: msys2 {0}
steps:
- uses: actions/checkout@v2
- uses: msys2/setup-msys2@v2
- name: Install dependencies
run: |
pacman --sync --noconfirm --needed make mingw-w64-x86_64-toolchain mingw-w64-x86_64-cmake
pacman --sync --noconfirm --needed mingw-w64-x86_64-fltk mingw-w64-x86_64-libjpeg-turbo mingw-w64-x86_64-gnutls mingw-w64-x86_64-pixman
- name: Configure
run: cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug -S . -B build
- name: Build
working-directory: build
run: make
- name: Install
working-directory: build
env:
MSYS2_PATH_TYPE: inherit
run: make installer winvnc_installer

build-macos:
runs-on: macos-latest
steps:
- uses: actions/checkout@v2
- name: Install dependencies
run: |
brew install fltk pixman
- name: Configure
run: cmake -DCMAKE_BUILD_TYPE=Debug -S . -B build
- name: Build
working-directory: build
run: make
- name: Install
working-directory: build
run: make dmg

build-packages:
strategy:
matrix:
target:
- centos8
- centos7
- xenial
- bionic
- focal
fail-fast: false
runs-on: ubuntu-latest
env:
DOCKER: ${{ matrix.target }}
steps:
- uses: actions/checkout@v2
- name: Build image
run: docker build -t tigervnc/$DOCKER .github/containers/$DOCKER
- name: Build packages
run: .github/containers/$DOCKER/build.sh

+ 0
- 82
.travis.yml View File

@@ -1,82 +0,0 @@
dist: xenial
language: minimal

env:
- DOCKER=centos8
- DOCKER=centos7
- DOCKER=xenial
- DOCKER=bionic
- DOCKER=focal

matrix:
include:
- language: cpp
env:
before_install:
- sudo apt-get install -y libgnutls-dev libfltk1.3-dev fluid
- sudo apt-get install -y libxtst-dev libxdamage-dev libxfixes-dev libxrandr-dev
script:
- cmake -DCMAKE_BUILD_TYPE=Debug . && make && make tarball

- language: cpp
os: windows
env:
# From https://docs.travis-ci.com/user/reference/windows/
before_install:
- |-
choco install --no-progress -y innosetup
[[ ! -f C:/tools/msys64/msys2_shell.cmd ]] && rm -rf C:/tools/msys64
choco uninstall -y mingw
choco upgrade --no-progress -y msys2
export msys2='cmd //C RefreshEnv.cmd '
export msys2+='& set MSYS=winsymlinks:nativestrict '
export msys2+='& C:\\tools\\msys64\\msys2_shell.cmd -defterm -no-start'
export mingw64="$msys2 -mingw64 -full-path -here -c "\"\$@"\" --"
export msys2+=" -msys2 -c "\"\$@"\" --"
$msys2 pacman --sync --noconfirm --needed mingw-w64-x86_64-toolchain
$msys2 pacman --sync --noconfirm --needed mingw-w64-x86_64-fltk mingw-w64-x86_64-libjpeg-turbo mingw-w64-x86_64-gnutls mingw-w64-x86_64-pixman
taskkill //IM gpg-agent.exe //F # https://travis-ci.community/t/4967
export PATH=/C/tools/msys64/mingw64/bin:$PATH
export MAKE=mingw32-make # so that Autotools can find it
script:
- cmake -G "MSYS Makefiles" -DCMAKE_BUILD_TYPE=Debug -DCMAKE_MAKE_PROGRAM=mingw32-make -DCMAKE_C_COMPILER=gcc -DCMAKE=CXX_COMPILER=g++ . && mingw32-make && mingw32-make installer winvnc_installer
before_cache:
- |-
# https://unix.stackexchange.com/a/137322/107554
$msys2 pacman --sync --clean --noconfirm
cache:
directories:
- $HOME/AppData/Local/Temp/chocolatey
- /C/tools/msys64

- language: cpp
os: osx
# The default image is buggy ATM, use the latest
osx_image: xcode11.5
env:
addons:
homebrew:
packages:
- gettext
- fltk
before_install:
script:
- cmake -DCMAKE_BUILD_TYPE=Debug . && make && make dmg

- language: java
# compile with java 8 for backwards compatibility
dist: xenial
env:
jdk: openjdk8
before_install:
- sudo apt-get -y install openjdk-8-jdk
addons:
apt:
update: true
script:
- cd java && cmake . && make

before_install:
- docker build -t tigervnc/$DOCKER .travis/$DOCKER
script:
- .travis/$DOCKER/build.sh

Loading…
Cancel
Save