]> source.dussan.org Git - tigervnc.git/commitdiff
Convert CI to GitHub Actions 1266/head
authorPierre Ossman <ossman@cendio.se>
Mon, 7 Jun 2021 15:09:15 +0000 (17:09 +0200)
committerPierre Ossman <ossman@cendio.se>
Tue, 8 Jun 2021 09:17:16 +0000 (11:17 +0200)
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.

22 files changed:
.github/containers/bionic/Dockerfile [new file with mode: 0644]
.github/containers/bionic/build.sh [new file with mode: 0755]
.github/containers/centos7/Dockerfile [new file with mode: 0644]
.github/containers/centos7/build.sh [new file with mode: 0755]
.github/containers/centos8/Dockerfile [new file with mode: 0644]
.github/containers/centos8/build.sh [new file with mode: 0755]
.github/containers/focal/Dockerfile [new file with mode: 0644]
.github/containers/focal/build.sh [new file with mode: 0755]
.github/containers/xenial/Dockerfile [new file with mode: 0644]
.github/containers/xenial/build.sh [new file with mode: 0755]
.github/workflows/build.yml
.travis.yml [deleted file]
.travis/bionic/Dockerfile [deleted file]
.travis/bionic/build.sh [deleted file]
.travis/centos7/Dockerfile [deleted file]
.travis/centos7/build.sh [deleted file]
.travis/centos8/Dockerfile [deleted file]
.travis/centos8/build.sh [deleted file]
.travis/focal/Dockerfile [deleted file]
.travis/focal/build.sh [deleted file]
.travis/xenial/Dockerfile [deleted file]
.travis/xenial/build.sh [deleted file]

diff --git a/.github/containers/bionic/Dockerfile b/.github/containers/bionic/Dockerfile
new file mode 100644 (file)
index 0000000..b390837
--- /dev/null
@@ -0,0 +1,13 @@
+FROM ubuntu:bionic
+
+ARG DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update
+RUN apt-get -y install packaging-dev equivs
+
+RUN useradd -s /bin/bash -m deb
+RUN echo >> /etc/sudoers
+RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER deb
+WORKDIR /home/deb
diff --git a/.github/containers/bionic/build.sh b/.github/containers/bionic/build.sh
new file mode 100755 (executable)
index 0000000..82cf2d9
--- /dev/null
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+set -e
+set -x
+
+## Basic variables
+
+CURDIR=$(dirname $(readlink -f $0))
+TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
+
+DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-bionic
+
+VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
+
+## Prepare the build directory
+
+rm -rf ${CURDIR}/build
+mkdir -p ${CURDIR}/build
+chmod a+w ${CURDIR}/build
+[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
+
+## Copy over the source code
+
+(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
+
+## Copy over the packaging files
+
+cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
+
+chmod a+x ${CURDIR}/build/debian/rules
+
+# Assemble a fake changelog entry to get the correct version
+
+cat - > ${CURDIR}/build/debian/changelog << EOT
+tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
+
+  * Automated build for TigerVNC
+
+ -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
+
+EOT
+cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
+
+## Start the build
+
+docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
+       bash -c "
+       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
+       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
+       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
+       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
+       sudo apt-get update &&
+       sudo apt-get -f install -y &&
+       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
+       "
diff --git a/.github/containers/centos7/Dockerfile b/.github/containers/centos7/Dockerfile
new file mode 100644 (file)
index 0000000..36e86fb
--- /dev/null
@@ -0,0 +1,13 @@
+FROM centos:7
+
+RUN yum -y groupinstall 'Development Tools'
+RUN yum -y install centos-packager
+
+RUN yum -y install sudo
+
+RUN useradd -s /bin/bash -m rpm
+RUN echo >> /etc/sudoers
+RUN echo "rpm ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER rpm
+WORKDIR /home/rpm
diff --git a/.github/containers/centos7/build.sh b/.github/containers/centos7/build.sh
new file mode 100755 (executable)
index 0000000..55ad810
--- /dev/null
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+set -e
+set -x
+
+## Basic variables
+
+CURDIR=$(dirname $(readlink -f $0))
+TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
+
+RPMDIR=${TOPDIR}/contrib/packages/rpm/el7
+
+VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
+
+## Prepare the build directory
+
+rm -rf ${CURDIR}/rpmbuild
+mkdir -p ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,SOURCES,SPECS,RPMS}
+chmod a+w ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,RPMS}
+[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/rpmbuild
+
+## Copy over the packaging files
+
+cp ${RPMDIR}/SOURCES/* ${CURDIR}/rpmbuild/SOURCES
+cp ${RPMDIR}/SPECS/tigervnc.spec ${CURDIR}/rpmbuild/SPECS
+sed -i "s/@VERSION@/${VERSION}/" ${CURDIR}/rpmbuild/SPECS/tigervnc.spec
+
+## Copy over the source code
+
+(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | bzip2 > ${CURDIR}/rpmbuild/SOURCES/tigervnc-${VERSION}.tar.bz2
+
+## Start the build
+
+docker run --volume ${CURDIR}/rpmbuild:/home/rpm/rpmbuild --interactive --rm tigervnc/${DOCKER} \
+       bash -c "
+       sudo yum-builddep -y ~/rpmbuild/SPECS/tigervnc.spec &&
+        sudo chown 0.0 ~/rpmbuild/SOURCES/* &&
+        sudo chown 0.0 ~/rpmbuild/SPECS/* &&
+       rpmbuild -ba ~/rpmbuild/SPECS/tigervnc.spec
+       "
diff --git a/.github/containers/centos8/Dockerfile b/.github/containers/centos8/Dockerfile
new file mode 100644 (file)
index 0000000..8beec7e
--- /dev/null
@@ -0,0 +1,17 @@
+FROM centos:8
+
+RUN dnf -y group install 'Development Tools'
+RUN dnf -y install sudo
+RUN dnf -y install dnf-plugins-core
+RUN dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
+RUN dnf config-manager --set-enabled powertools
+RUN dnf -y install xorg-x11-server-source
+# Too old in image so breaks cmake
+RUN dnf -y update libarchive
+
+RUN useradd -s /bin/bash -m rpm
+RUN echo >> /etc/sudoers
+RUN echo "rpm ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER rpm
+WORKDIR /home/rpm
diff --git a/.github/containers/centos8/build.sh b/.github/containers/centos8/build.sh
new file mode 100755 (executable)
index 0000000..91caffb
--- /dev/null
@@ -0,0 +1,40 @@
+#!/bin/bash
+
+set -e
+set -x
+
+## Basic variables
+
+CURDIR=$(dirname $(readlink -f $0))
+TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
+
+RPMDIR=${TOPDIR}/contrib/packages/rpm/el8
+
+VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
+
+## Prepare the build directory
+
+rm -rf ${CURDIR}/rpmbuild
+mkdir -p ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,SOURCES,SPECS,RPMS}
+chmod a+w ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,RPMS}
+[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/rpmbuild
+
+## Copy over the packaging files
+
+cp ${RPMDIR}/SOURCES/* ${CURDIR}/rpmbuild/SOURCES
+cp ${RPMDIR}/SPECS/tigervnc.spec ${CURDIR}/rpmbuild/SPECS
+sed -i "s/@VERSION@/${VERSION}/" ${CURDIR}/rpmbuild/SPECS/tigervnc.spec
+
+## Copy over the source code
+
+(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | bzip2 > ${CURDIR}/rpmbuild/SOURCES/tigervnc-${VERSION}.tar.bz2
+
+## Start the build
+
+docker run --volume ${CURDIR}/rpmbuild:/home/rpm/rpmbuild --interactive --rm tigervnc/${DOCKER} \
+       bash -c "
+       sudo dnf builddep -y ~/rpmbuild/SPECS/tigervnc.spec &&
+        sudo chown 0.0 ~/rpmbuild/SOURCES/* &&
+        sudo chown 0.0 ~/rpmbuild/SPECS/* &&
+       rpmbuild -ba ~/rpmbuild/SPECS/tigervnc.spec
+       "
diff --git a/.github/containers/focal/Dockerfile b/.github/containers/focal/Dockerfile
new file mode 100644 (file)
index 0000000..7fea0d1
--- /dev/null
@@ -0,0 +1,13 @@
+FROM ubuntu:focal
+
+ARG DEBIAN_FRONTEND=noninteractive
+
+RUN apt-get update
+RUN apt-get -y install packaging-dev equivs
+
+RUN useradd -s /bin/bash -m deb
+RUN echo >> /etc/sudoers
+RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER deb
+WORKDIR /home/deb
diff --git a/.github/containers/focal/build.sh b/.github/containers/focal/build.sh
new file mode 100755 (executable)
index 0000000..3b68e70
--- /dev/null
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+set -e
+set -x
+
+## Basic variables
+
+CURDIR=$(dirname $(readlink -f $0))
+TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
+
+DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-focal
+
+VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
+
+## Prepare the build directory
+
+rm -rf ${CURDIR}/build
+mkdir -p ${CURDIR}/build
+chmod a+w ${CURDIR}/build
+[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
+
+## Copy over the source code
+
+(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
+
+## Copy over the packaging files
+
+cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
+
+chmod a+x ${CURDIR}/build/debian/rules
+
+# Assemble a fake changelog entry to get the correct version
+
+cat - > ${CURDIR}/build/debian/changelog << EOT
+tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
+
+  * Automated build for TigerVNC
+
+ -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
+
+EOT
+cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
+
+## Start the build
+
+docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
+       bash -c "
+       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
+       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
+       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
+       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
+       sudo apt-get update &&
+       sudo apt-get -f install -y &&
+       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
+       "
diff --git a/.github/containers/xenial/Dockerfile b/.github/containers/xenial/Dockerfile
new file mode 100644 (file)
index 0000000..ad5414f
--- /dev/null
@@ -0,0 +1,11 @@
+FROM ubuntu:xenial
+
+RUN apt-get update
+RUN apt-get -y install packaging-dev equivs
+
+RUN useradd -s /bin/bash -m deb
+RUN echo >> /etc/sudoers
+RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
+
+USER deb
+WORKDIR /home/deb
diff --git a/.github/containers/xenial/build.sh b/.github/containers/xenial/build.sh
new file mode 100755 (executable)
index 0000000..60949ee
--- /dev/null
@@ -0,0 +1,55 @@
+#!/bin/bash
+
+set -e
+set -x
+
+## Basic variables
+
+CURDIR=$(dirname $(readlink -f $0))
+TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
+
+DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-xenial
+
+VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
+
+## Prepare the build directory
+
+rm -rf ${CURDIR}/build
+mkdir -p ${CURDIR}/build
+chmod a+w ${CURDIR}/build
+[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
+
+## Copy over the source code
+
+(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
+
+## Copy over the packaging files
+
+cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
+
+chmod a+x ${CURDIR}/build/debian/rules
+
+# Assemble a fake changelog entry to get the correct version
+
+cat - > ${CURDIR}/build/debian/changelog << EOT
+tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
+
+  * Automated build for TigerVNC
+
+ -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
+
+EOT
+cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
+
+## Start the build
+
+docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
+       bash -c "
+       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
+       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
+       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
+       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
+       sudo apt-get update &&
+       sudo apt-get -f install -y &&
+       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
+       "
index 7979e529c721b78f86d627b1d69969316ffbf99d..98a71d1b501315af3cfd14b8428843232319fb81 100644 (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
diff --git a/.travis.yml b/.travis.yml
deleted file mode 100644 (file)
index fcf79c5..0000000
+++ /dev/null
@@ -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
diff --git a/.travis/bionic/Dockerfile b/.travis/bionic/Dockerfile
deleted file mode 100644 (file)
index b390837..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM ubuntu:bionic
-
-ARG DEBIAN_FRONTEND=noninteractive
-
-RUN apt-get update
-RUN apt-get -y install packaging-dev equivs
-
-RUN useradd -s /bin/bash -m deb
-RUN echo >> /etc/sudoers
-RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
-
-USER deb
-WORKDIR /home/deb
diff --git a/.travis/bionic/build.sh b/.travis/bionic/build.sh
deleted file mode 100755 (executable)
index 82cf2d9..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-## Basic variables
-
-CURDIR=$(dirname $(readlink -f $0))
-TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
-
-DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-bionic
-
-VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
-
-## Prepare the build directory
-
-rm -rf ${CURDIR}/build
-mkdir -p ${CURDIR}/build
-chmod a+w ${CURDIR}/build
-[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
-
-## Copy over the source code
-
-(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
-
-## Copy over the packaging files
-
-cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
-
-chmod a+x ${CURDIR}/build/debian/rules
-
-# Assemble a fake changelog entry to get the correct version
-
-cat - > ${CURDIR}/build/debian/changelog << EOT
-tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
-
-  * Automated build for TigerVNC
-
- -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
-
-EOT
-cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
-
-## Start the build
-
-docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
-       bash -c "
-       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
-       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
-       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
-       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
-       sudo apt-get update &&
-       sudo apt-get -f install -y &&
-       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
-       "
diff --git a/.travis/centos7/Dockerfile b/.travis/centos7/Dockerfile
deleted file mode 100644 (file)
index 36e86fb..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM centos:7
-
-RUN yum -y groupinstall 'Development Tools'
-RUN yum -y install centos-packager
-
-RUN yum -y install sudo
-
-RUN useradd -s /bin/bash -m rpm
-RUN echo >> /etc/sudoers
-RUN echo "rpm ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
-
-USER rpm
-WORKDIR /home/rpm
diff --git a/.travis/centos7/build.sh b/.travis/centos7/build.sh
deleted file mode 100755 (executable)
index 55ad810..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-## Basic variables
-
-CURDIR=$(dirname $(readlink -f $0))
-TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
-
-RPMDIR=${TOPDIR}/contrib/packages/rpm/el7
-
-VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
-
-## Prepare the build directory
-
-rm -rf ${CURDIR}/rpmbuild
-mkdir -p ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,SOURCES,SPECS,RPMS}
-chmod a+w ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,RPMS}
-[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/rpmbuild
-
-## Copy over the packaging files
-
-cp ${RPMDIR}/SOURCES/* ${CURDIR}/rpmbuild/SOURCES
-cp ${RPMDIR}/SPECS/tigervnc.spec ${CURDIR}/rpmbuild/SPECS
-sed -i "s/@VERSION@/${VERSION}/" ${CURDIR}/rpmbuild/SPECS/tigervnc.spec
-
-## Copy over the source code
-
-(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | bzip2 > ${CURDIR}/rpmbuild/SOURCES/tigervnc-${VERSION}.tar.bz2
-
-## Start the build
-
-docker run --volume ${CURDIR}/rpmbuild:/home/rpm/rpmbuild --interactive --rm tigervnc/${DOCKER} \
-       bash -c "
-       sudo yum-builddep -y ~/rpmbuild/SPECS/tigervnc.spec &&
-        sudo chown 0.0 ~/rpmbuild/SOURCES/* &&
-        sudo chown 0.0 ~/rpmbuild/SPECS/* &&
-       rpmbuild -ba ~/rpmbuild/SPECS/tigervnc.spec
-       "
diff --git a/.travis/centos8/Dockerfile b/.travis/centos8/Dockerfile
deleted file mode 100644 (file)
index 8beec7e..0000000
+++ /dev/null
@@ -1,17 +0,0 @@
-FROM centos:8
-
-RUN dnf -y group install 'Development Tools'
-RUN dnf -y install sudo
-RUN dnf -y install dnf-plugins-core
-RUN dnf -y install https://dl.fedoraproject.org/pub/epel/epel-release-latest-8.noarch.rpm
-RUN dnf config-manager --set-enabled powertools
-RUN dnf -y install xorg-x11-server-source
-# Too old in image so breaks cmake
-RUN dnf -y update libarchive
-
-RUN useradd -s /bin/bash -m rpm
-RUN echo >> /etc/sudoers
-RUN echo "rpm ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
-
-USER rpm
-WORKDIR /home/rpm
diff --git a/.travis/centos8/build.sh b/.travis/centos8/build.sh
deleted file mode 100755 (executable)
index 91caffb..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-## Basic variables
-
-CURDIR=$(dirname $(readlink -f $0))
-TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
-
-RPMDIR=${TOPDIR}/contrib/packages/rpm/el8
-
-VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
-
-## Prepare the build directory
-
-rm -rf ${CURDIR}/rpmbuild
-mkdir -p ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,SOURCES,SPECS,RPMS}
-chmod a+w ${CURDIR}/rpmbuild/{BUILD,BUILDROOT,SRPMS,RPMS}
-[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/rpmbuild
-
-## Copy over the packaging files
-
-cp ${RPMDIR}/SOURCES/* ${CURDIR}/rpmbuild/SOURCES
-cp ${RPMDIR}/SPECS/tigervnc.spec ${CURDIR}/rpmbuild/SPECS
-sed -i "s/@VERSION@/${VERSION}/" ${CURDIR}/rpmbuild/SPECS/tigervnc.spec
-
-## Copy over the source code
-
-(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | bzip2 > ${CURDIR}/rpmbuild/SOURCES/tigervnc-${VERSION}.tar.bz2
-
-## Start the build
-
-docker run --volume ${CURDIR}/rpmbuild:/home/rpm/rpmbuild --interactive --rm tigervnc/${DOCKER} \
-       bash -c "
-       sudo dnf builddep -y ~/rpmbuild/SPECS/tigervnc.spec &&
-        sudo chown 0.0 ~/rpmbuild/SOURCES/* &&
-        sudo chown 0.0 ~/rpmbuild/SPECS/* &&
-       rpmbuild -ba ~/rpmbuild/SPECS/tigervnc.spec
-       "
diff --git a/.travis/focal/Dockerfile b/.travis/focal/Dockerfile
deleted file mode 100644 (file)
index 7fea0d1..0000000
+++ /dev/null
@@ -1,13 +0,0 @@
-FROM ubuntu:focal
-
-ARG DEBIAN_FRONTEND=noninteractive
-
-RUN apt-get update
-RUN apt-get -y install packaging-dev equivs
-
-RUN useradd -s /bin/bash -m deb
-RUN echo >> /etc/sudoers
-RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
-
-USER deb
-WORKDIR /home/deb
diff --git a/.travis/focal/build.sh b/.travis/focal/build.sh
deleted file mode 100755 (executable)
index 3b68e70..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-## Basic variables
-
-CURDIR=$(dirname $(readlink -f $0))
-TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
-
-DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-focal
-
-VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
-
-## Prepare the build directory
-
-rm -rf ${CURDIR}/build
-mkdir -p ${CURDIR}/build
-chmod a+w ${CURDIR}/build
-[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
-
-## Copy over the source code
-
-(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
-
-## Copy over the packaging files
-
-cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
-
-chmod a+x ${CURDIR}/build/debian/rules
-
-# Assemble a fake changelog entry to get the correct version
-
-cat - > ${CURDIR}/build/debian/changelog << EOT
-tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
-
-  * Automated build for TigerVNC
-
- -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
-
-EOT
-cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
-
-## Start the build
-
-docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
-       bash -c "
-       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
-       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
-       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
-       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
-       sudo apt-get update &&
-       sudo apt-get -f install -y &&
-       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
-       "
diff --git a/.travis/xenial/Dockerfile b/.travis/xenial/Dockerfile
deleted file mode 100644 (file)
index ad5414f..0000000
+++ /dev/null
@@ -1,11 +0,0 @@
-FROM ubuntu:xenial
-
-RUN apt-get update
-RUN apt-get -y install packaging-dev equivs
-
-RUN useradd -s /bin/bash -m deb
-RUN echo >> /etc/sudoers
-RUN echo "deb ALL=(ALL) NOPASSWD:ALL" >> /etc/sudoers
-
-USER deb
-WORKDIR /home/deb
diff --git a/.travis/xenial/build.sh b/.travis/xenial/build.sh
deleted file mode 100755 (executable)
index 60949ee..0000000
+++ /dev/null
@@ -1,55 +0,0 @@
-#!/bin/bash
-
-set -e
-set -x
-
-## Basic variables
-
-CURDIR=$(dirname $(readlink -f $0))
-TOPDIR=$(git rev-parse --show-toplevel 2>/dev/null)
-
-DEBDIR=${TOPDIR}/contrib/packages/deb/ubuntu-xenial
-
-VERSION=$(grep '^set(VERSION ' ${TOPDIR}/CMakeLists.txt | sed 's@^set(VERSION \(.*\))@\1@')
-
-## Prepare the build directory
-
-rm -rf ${CURDIR}/build
-mkdir -p ${CURDIR}/build
-chmod a+w ${CURDIR}/build
-[ -x /usr/sbin/selinuxenabled ] && /usr/sbin/selinuxenabled && chcon -Rt container_file_t ${CURDIR}/build
-
-## Copy over the source code
-
-(cd ${TOPDIR} && git archive --prefix tigervnc-${VERSION}/ HEAD) | xz > ${CURDIR}/build/tigervnc_${VERSION}.orig.tar.xz
-
-## Copy over the packaging files
-
-cp -r ${DEBDIR}/debian ${CURDIR}/build/debian
-
-chmod a+x ${CURDIR}/build/debian/rules
-
-# Assemble a fake changelog entry to get the correct version
-
-cat - > ${CURDIR}/build/debian/changelog << EOT
-tigervnc (${VERSION}-1ubuntu1) UNRELEASED; urgency=low
-
-  * Automated build for TigerVNC
-
- -- Build bot <tigervncbot@tigervnc.org>  $(date -R)
-
-EOT
-cat ${DEBDIR}/debian/changelog >> ${CURDIR}/build/debian/changelog
-
-## Start the build
-
-docker run --volume ${CURDIR}/build:/home/deb/build --interactive --rm tigervnc/${DOCKER} \
-       bash -c "
-       tar -C ~/build -axf ~/build/tigervnc_${VERSION}.orig.tar.xz &&
-       cp -a ~/build/debian ~/build/tigervnc-${VERSION}/debian &&
-       mk-build-deps ~/build/tigervnc-${VERSION}/debian/control &&
-       sudo dpkg --unpack ~/tigervnc-build-deps_*.deb &&
-       sudo apt-get update &&
-       sudo apt-get -f install -y &&
-       cd ~/build/tigervnc-${VERSION} && dpkg-buildpackage
-       "