1
0
mirror of https://github.com/skuro/plantuml-mode.git synced 2024-06-28 07:40:58 +02:00
plantuml-mode/.circleci/config.yml
Carlo Sciolla 689c6a6950
CI downloads plantuml (#94)
Fixes #73

Now the latest version of PlantUML is downloaded as part of the CI script. This has two consequences:

we always test against the latest and greatest PlantUML version.
PlantUML evolves at a much higher pace than plantuml-mode. This allows for some sanity check of our code with the upstream project.

builds are not reproducible
As a side effect of always downloading a (potentially) new PlantUML version, re-running the build for an old commit can lead to different outcomes. This is usually a big no-no but given the limited efforts currently spent on plantuml-mode I find it more convenient to immediately raise a flag if a new version of PlantUML causes issues.
2019-05-06 12:14:25 +02:00

57 lines
1.4 KiB
YAML

version: 2.0
# Default actions to perform on each Emacs version
default: &default-steps
steps:
- checkout
- run:
# Note: this makes it hard to reproduce builds but easier to spot incompatibilities with
# newer PlantUML releases. Current trade off seems acceptable.
name: Download the latest PlantUML release
command: sh ./bin/download-plantuml.sh
- run:
name: Update APT packages
command: apt-get update
- run:
name: Install prerequisites
command: apt-get install -y openjdk-8-jre make python git
- run:
name: Install cask
command: curl -fsSL https://raw.githubusercontent.com/cask/cask/master/go | python
- run:
name: Make Cask available on the path
command: echo 'export PATH="/root/.cask/bin:$PATH"' >> $BASH_ENV
- run:
name: Run the tests
command: make
# Enumerated list of Emacs versions
jobs:
test-emacs-25:
docker:
- image: silex/emacs:25
entrypoint: bash
<<: *default-steps
test-emacs-26:
docker:
- image: silex/emacs:26.0
entrypoint: bash
<<: *default-steps
test-emacs-master:
docker:
- image: silex/emacs:master
entrypoint: bash
<<: *default-steps
# Executing in parallel
workflows:
version: 2
ci-test-matrix:
jobs:
- test-emacs-25
- test-emacs-26
# Testing against master currently hangs on CircleCI
#- test-emacs-master