diff options
author | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2021-06-01 00:44:49 +0200 |
---|---|---|
committer | Robin Haberkorn <robin.haberkorn@googlemail.com> | 2021-06-01 00:44:49 +0200 |
commit | f1b17f7d2bf03ed798520c3a5f322c0d79f3787c (patch) | |
tree | 002a0fd030efccf66b8b8015068d5b8c38dc004e | |
parent | 0dcfb82c706585d1ed5bd700a88cc9ddc6a8751d (diff) | |
download | sciteco-f1b17f7d2bf03ed798520c3a5f322c0d79f3787c.tar.gz |
Continuous Integration artifacts are now built only once a day (nightly builds) and include Gtk+ versions
* The CI tests are unchanged. The workflow file has been renamed to ci.yml, though.
* Nightly builds are described by nightly.yml and are built at 4:13.
* Nightly Ubuntu package builds now include the Gtk+ 3 packages.
-rw-r--r-- | .github/workflows/ci.yml (renamed from .github/workflows/continuous-integration.yml) | 52 | ||||
-rw-r--r-- | .github/workflows/nightly.yml | 58 | ||||
-rw-r--r-- | README | 5 |
3 files changed, 62 insertions, 53 deletions
diff --git a/.github/workflows/continuous-integration.yml b/.github/workflows/ci.yml index cbe7837..4351a0c 100644 --- a/.github/workflows/continuous-integration.yml +++ b/.github/workflows/ci.yml @@ -7,7 +7,7 @@ on: branches: [ master ] jobs: - build-and-test: + build: strategy: matrix: os: [ubuntu-18.04, ubuntu-20.04] @@ -55,53 +55,3 @@ jobs: # run: xvfb-run -a make distcheck - name: Build Source Tarball run: make dist - - # This is a separate job since we don't need to build Debian packages - # using Clang and there is no need to run "make all". - debian-packages: - strategy: - matrix: - os: [ubuntu-18.04, ubuntu-20.04] - - runs-on: ${{ matrix.os }} - - steps: - - - name: Recursive Git Clone - uses: actions/checkout@v2 - with: - submodules: recursive - - - name: Update Repositories - run: sudo apt-get update - - name: Install Build Dependencies - run: > - sudo apt-get install -y - devscripts build-essential lintian debhelper - autoconf automake libtool - libglib2.0-dev libncurses-dev - groff-base - - # NOTE: We need to configure the build directory only to generate distribute.mk. - - name: Configure Build - run: | - autoreconf -i - ./configure - - # NOTE: Packages are left in debian-temp/. - - name: Build Debian Package - run: ./distribute.mk debian-binary - # FIXME: For doing Windows builds, we need a few manually built packages - # (PDCurses, Glib...). - # Perhaps they can be uploaded to Sourceforge and simply downloaded here. - # Alternatively, we could manually prepare a Docker container image or - # even build them from scratch here. -# - name: Build Windows Bundle -# run: ./distribute.mk mingw-binary - - # NOTE: There is no way to prevent Github zipping the artifact. - - name: Archive Debian Package (ncurses) - uses: actions/upload-artifact@v2 - with: - name: ${{ matrix.os }} package (ncurses) - path: debian-temp/*.deb diff --git a/.github/workflows/nightly.yml b/.github/workflows/nightly.yml new file mode 100644 index 0000000..6795c67 --- /dev/null +++ b/.github/workflows/nightly.yml @@ -0,0 +1,58 @@ +name: Nightly Builds + +on: + schedule: + # Daily at 3:14 + - cron: '14 3 * * *' + +jobs: + debian-packages: + strategy: + matrix: + os: [ubuntu-18.04, ubuntu-20.04] + + runs-on: ${{ matrix.os }} + + steps: + + - name: Recursive Git Clone + uses: actions/checkout@v2 + with: + submodules: recursive + + - name: Update Repositories + run: sudo apt-get update + - name: Install Build Dependencies + run: > + sudo apt-get install -y + devscripts build-essential lintian debhelper dh-exec + autoconf automake libtool + libglib2.0-dev libncurses-dev libgtk-3-dev gob2 xvfb + groff-base + + # NOTE: We need to configure the build directory only to generate distribute.mk. + - name: Configure Build + run: | + autoreconf -i + ./configure + + # NOTE: The debian package build rules already use xvfb-run to emulate an XServer + # when necessary since the PPA build servers might also be headless. + # NOTE: Packages are left in debian-temp/. + - name: Build Debian/Ubuntu Packages + run: ./distribute.mk debian-binary + + # FIXME: For doing Windows builds, we need a few manually built packages + # (PDCurses, Glib...). + # Perhaps they can be uploaded to Sourceforge and simply downloaded here. + # Alternatively, we could manually prepare a Docker container image or + # even build them from scratch here. +# - name: Build Windows Bundle +# run: ./distribute.mk mingw-binary + + # NOTE: There is no way to prevent Github from zipping the artifact. + - name: Archive Debian/Ubuntu Packages + uses: actions/upload-artifact@v2 + with: + name: ${{ matrix.os }} packages (ncurses and GTK+ 3) + path: debian-temp/*.deb @@ -1,4 +1,4 @@ -[](https://github.com/rhaberkorn/sciteco/actions/workflows/continuous-integration.yml) +[](https://github.com/rhaberkorn/sciteco/actions/workflows/ci.yml) [](https://github.com/rhaberkorn/sciteco/actions/workflows/nightly.yml) Overview ======== @@ -115,8 +115,9 @@ There are prebuilt binary packages and source bundles for your convenience: * The official [SciTECO homepage](http://sciteco.sf.net/) is a live demo. These releases may be quite outdated, so you may also give a try to the -[nightly Ubuntu packages](https://nightly.link/rhaberkorn/sciteco/workflows/continuous-integration/master) - +[nightly Ubuntu packages](https://nightly.link/rhaberkorn/sciteco/workflows/nightly/master) - they represent the repository's HEAD commit but may well be instable. +Both ncurses and Gtk+ packages are provided. If everything fails, you can try building from source. See [`INSTALL`](INSTALL) for more details. |