Skip to content

Commit

Permalink
Add CI
Browse files Browse the repository at this point in the history
  • Loading branch information
propensive committed Jan 17, 2022
1 parent 788e69d commit 1ff2b39
Show file tree
Hide file tree
Showing 4 changed files with 56 additions and 3 deletions.
16 changes: 16 additions & 0 deletions .github/workflows/main.yml
Original file line number Diff line number Diff line change
@@ -0,0 1,16 @@
name: Build
on:
push:
branches: [ main ]
pull_request:
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Checkout
uses: actions/checkout@v2
with:
submodules: recursive
- name: Build
run: ./vex
4 changes: 4 additions & 0 deletions build.vex
Original file line number Diff line number Diff line change
@@ -1,4 1,8 @@
{
"repos": [
{ "base": "../gossamer", "url": "https://github.com/propensive/gossamer" },
{ "base": "../clairvoyant", "url": "https://github.com/propensive/clairvoyant" }
],
"imports": ["../gossamer/build.vex", "../clairvoyant/build.vex"],
"config": {
"scalac": {
Expand Down
7 changes: 4 additions & 3 deletions readme.md
Original file line number Diff line number Diff line change
@@ -1,3 1,4 @@
[<img alt="GitHub Workflow" src="https://img.shields.io/github/workflow/status/propensive/xylophone/Build/main?style=for-the-badge" height="24">](https://github.com/propensive/xylophone/actions)
[<img src="https://img.shields.io/discord/633198088311537684?color=8899f7&label=DISCORD&style=for-the-badge" height="24">](https://discord.gg/v7CjtbnwDq)
[<img src="https://vent.dev/badge/propensive/xylophone" height="24">](https://vent.dev/)
<img src="/doc/images/github.png" valign="middle">
Expand Down Expand Up @@ -219,7 220,7 @@ Xylophone is classified as __fledgling__. Propensive defines the following five
- _dependable_: production-ready, subject to controlled ongoing maintenance and enhancement; tagged as version `1.0` or later
- _adamantine_: proven, reliable and production-ready, with no further breaking changes ever anticipated

Xylophone is designed to be _small_. Its entire source code currently consists of 599 lines of code.
Xylophone is designed to be _small_. Its entire source code currently consists of 598 lines of code.

## Availability

Expand All @@ -242,7 243,7 @@ src="https://img.shields.io/badge/-good first issue-67b6d0.svg" valign="midd
We suggest that all contributors read the [Contributing Guide](/contributing.md) to make the process of
contributing to Xylophone easier.

Please __do not__ contact project maintainers privately with questions. While it can be tempting to respond to
Please __do not__ contact project maintainers privately with questions. While it can be tempting to repsond to
such questions, private answers cannot be shared with a wider audience, and it can result in duplication of
effort.

Expand All @@ -259,5 260,5 @@ A _xylophone_ is a musical instrument made from wood ("xylo-") or trees, and it

## License

Xylophone is copyright &copy; 2021 Jon Pretty & Propensive O&Uuml;, and is made available under the
Xylophone is copyright &copy; 2021-22 Jon Pretty & Propensive O&Uuml;, and is made available under the
[Apache 2.0 License](/license.md).
32 changes: 32 additions & 0 deletions vex
Original file line number Diff line number Diff line change
@@ -0,0 1,32 @@
#!/bin/sh
# --------------------------
# Vex Launcher version 0.2.0
# --------------------------
#
# Vex is a simplistic build tool for Scala. This launcher script will download and run Vex, replacing this
# script in the process.
#
# For more information, see https://github.com/propensive/vex/
#
# Vex, version 0.2.0. Copyright 2021 Jon Pretty, Propensive OÜ.

if [ ! "$(command -v java)" ]
then
echo "It does not look like Java is installed. The 'java' command must be available on the path."
elif [ "$(java -version 2>&1 | head -n1 | awk -F '"' '{print $2}' | awk -F '.' '{print $1}')" -lt "11" ]
then
echo "It looks like the install version of Java is not recent enough. Java 11 is required to run Vex."
elif [ ! "$(command -v curl)" ]
then
echo "The 'curl' command must be available to download Vex. Please install Curl and try again."
else
echo "Downloading Vex 0.2.0..."
curl -Lso "$0.tmp" "https://github.com/propensive/vex/releases/download/v0.2.0/vex-0.2.0"
echo "Downloaded $(du -sh "$0.tmp" | cut -d' ' -f1)"
echo 'Launching Vex for the first time...'
chmod x "$0.tmp"
mv "$0.tmp" "$0"
exec "$0" "$@"
fi
echo "Please install Java version 11 or later. See https://adoptium.net/ for free OpenJDK distributions."
exit 1

0 comments on commit 1ff2b39

Please sign in to comment.