diff --git a/.github/workflows/CI.yml b/.github/workflows/CI.yml new file mode 100644 index 0000000000..5cdd4871c2 --- /dev/null +++ b/.github/workflows/CI.yml @@ -0,0 +1,32 @@ +name: CI + +on: [ push, pull_request ] + +jobs: + build: + runs-on: ubuntu-20.04 + + steps: + - name: Checkout + uses: actions/checkout@v2 + + - name: Cache + uses: actions/cache@v2 + with: + path: | + ~/.m2/repository + ~/.cache/runelite + key: ${{ runner.os }}-cache-${{ hashFiles('**/pom.xml', '**/build.sh') }} + restore-keys: | + ${{ runner.os }}-cache- + + - name: Set up JDK 11 + uses: actions/setup-java@v1 + with: + java-version: 11 + + - name: Build + run: ./ci/build.sh + + - name: Remove build artifacts + run: rm -rf ~/.m2/repository/net/runelite diff --git a/.travis.yml b/.travis.yml deleted file mode 100644 index 0382d59f37..0000000000 --- a/.travis.yml +++ /dev/null @@ -1,19 +0,0 @@ -language: java -os: linux -dist: xenial -cache: - directories: - - $HOME/.m2 -env: - global: - - JAVA_TOOL_OPTIONS=-Dhttps.protocols=TLSv1.2 -jdk: -- openjdk8 -- openjdk11 -install: true -script: ./travis/build.sh -notifications: - irc: - channels: - # "irc.rizon.net#runelite" - - secure: "mWQqHYRviyGWM5qQmQ3wtfUg2kFPNwC3ISbqsZhQiHiMLBxZoONMQVHIFgc09h1EqnM1mOLDAh6TSxsxNW1FR7j70pWc3hPOu8Lk1iu1vzLs/RN4dgKH8eQ0u1CpB5oaqHqC3X2CFGrytd92M7GUzHencY0twsze8m0592XRyK/3cuQwCRHFKN0uI7KNqF6n0M3/335sivB8gfy/zy5nKQmgL+r7Z2p4VrrUrSvdM3hKGhbixHijNB+5LONJpRpc/Z2Hgb5H5zmEcHBPRkHakmn5XtPYaC6eFqENi4lh99HYsN9q+ifarV0uQBdXNtJt0BFPFk0CnsnHD9QHRYOiRxROI7axISXmzA+3uoYuIMkwEcHivMkWXbgRLZaMvkjuIBKaKypTvVm+zWEPAdsNfCrWrqBuAwac6L/D++cri4f+00dKMXSE4TYSUV5mQj2WFBZ3se37UJGns4NHhcDe8SHoy6vnmIwaqGoylMmeTO80EVfFzkZxjH/YrRdwsuyCeQG9Tgv0FIDkhxwpsY/ek/TE/SHgO5U5gtKpFfB0cFc5RWfXxKat7PI31Ln5r5XahizScUi0FcdVD1cbGWug5/2vG0AEkyrgyFRJZuSxjCVidrX6vLitCNLGVvMC+BpZBSiDVZvyeQJ10SIwZnKDF+SlgSNv2+aEWnhunZ6GBb8=" diff --git a/README.md b/README.md index 2c0c749e1f..d6352d432d 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![](https://runelite.net/img/logo.png) -# runelite [![Travis](https://img.shields.io/travis/runelite/runelite.svg)](https://travis-ci.org/runelite/runelite) [![Discord](https://img.shields.io/discord/301497432909414422.svg)](https://discord.gg/mePCs8U) +# runelite ![CI](https://github.com/runelite/runelite/workflows/CI/badge.svg) [![Discord](https://img.shields.io/discord/301497432909414422.svg)](https://discord.gg/mePCs8U) RuneLite is a free, open source OldSchool RuneScape client. diff --git a/ci/build.sh b/ci/build.sh new file mode 100755 index 0000000000..15282adc6f --- /dev/null +++ b/ci/build.sh @@ -0,0 +1,18 @@ +#!/bin/bash + +set -e -x + +CACHEDIR="$HOME/.cache/runelite" +mkdir -p "${CACHEDIR}" +GLSLANG_ARCHIVE="${CACHEDIR}/glslang.zip" +GLSLANG_DIR="${CACHEDIR}/glslang" +GLSLANG_RELEASE='https://github.com/KhronosGroup/glslang/releases/download/8.13.3559/glslang-master-linux-Release.zip' +GLSLANG_CHECKSUM='9adcfdef5b52275e61068aafbb62747936c6c18ab6dc32a6ef707cfc7b0df423' + +if [ ! -f "${GLSLANG_ARCHIVE}" ] || [ ! -d "${GLSLANG_DIR}" ] || ! echo "${GLSLANG_CHECKSUM} ${GLSLANG_ARCHIVE}" | sha256sum -c -; then + wget -O "${GLSLANG_ARCHIVE}" "${GLSLANG_RELEASE}" + echo "${GLSLANG_CHECKSUM} ${GLSLANG_ARCHIVE}" | sha256sum -c + unzip -o -q "${GLSLANG_ARCHIVE}" -d "${GLSLANG_DIR}" +fi + +mvn clean install --settings ci/settings.xml -Dglslang.path="${GLSLANG_DIR}/bin/glslangValidator" diff --git a/travis/settings.xml b/ci/settings.xml similarity index 100% rename from travis/settings.xml rename to ci/settings.xml diff --git a/travis/build.sh b/travis/build.sh deleted file mode 100755 index d86e56f113..0000000000 --- a/travis/build.sh +++ /dev/null @@ -1,9 +0,0 @@ -#!/bin/bash - -set -e -x - -wget -O/tmp/glslang.zip 'https://github.com/KhronosGroup/glslang/releases/download/8.13.3559/glslang-master-linux-Release.zip' -echo '9adcfdef5b52275e61068aafbb62747936c6c18ab6dc32a6ef707cfc7b0df423 /tmp/glslang.zip' | sha256sum -c -unzip -q /tmp/glslang.zip -d /tmp/glslang - -mvn clean install --settings travis/settings.xml -Dglslang.path=/tmp/glslang/bin/glslangValidator