Skip to content

Bunch of fixes

Bunch of fixes #84

Workflow file for this run

# Automatically build the project and run any configured tests for every push
# and submitted pull request. This can help catch issues that only occur on
# certain platforms or Java versions, and provides a first line of defence
# against bad commits.
name: build
on: [push]
jobs:
build-linux:
strategy:
matrix:
# Use these Java versions
java: [
17 # Minimum supported
]
os: [ubuntu-22.04]
runs-on: ${{ matrix.os }}
name: Build on ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Validate gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Setup JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Make gradle wrapper executable
run: chmod +x ./gradlew
- name: Build
run: ./gradlew :desktop-merge:jpackage --info
env:
GITHUB_BUILD_NUMBER: ${{ github.run_number }}
- name: Capture the build artifacts
uses: actions/upload-artifact@v2
with:
name: Bubble Blaster Linux Build ${{ github.run_number }}
path: desktop-merge/build/dist
# build-linux-other-archs:
# # The host should always be linux
# runs-on: ubuntu-22.04
# name: Build on ${{ matrix.distro }} ${{ matrix.arch }}
# # Run steps on a matrix of 4 arch/distro combinations
# strategy:
# matrix:
# include:
# - arch: aarch64
# distro: ubuntu22.04
# # - arch: armv7
# # distro: ubuntu22.04
# # - arch: ppc64le
# # distro: ubuntu22.04
# # - arch: s390x
# # distro: ubuntu22.04
# steps:
# - uses: actions/checkout@v3
# - name: Make gradle wrapper executable
# run: chmod +x ./gradlew
# - uses: uraimo/run-on-arch-action@v2
# name: Build artifact
# id: build
# with:
# arch: ${{ matrix.arch }}
# distro: ${{ matrix.distro }}
# # Not required, but speeds up builds
# githubToken: ${{ github.token }}
# # Create an artifacts directory
# setup: |
# mkdir -p "${PWD}/artifacts"
# # Mount the artifacts directory as /artifacts in the container
# dockerRunArgs: |
# --volume "${PWD}/artifacts:/artifacts"
# # Pass some environment variables to the container
# env: | # YAML, but pipe character is necessary
# artifact_name: git-${{ matrix.distro }}_${{ matrix.arch }}
# # The shell to run commands with in the container
# shell: /bin/sh
# # Install some dependencies in the container. This speeds up builds if
# # you are also using githubToken. Any dependencies installed here will
# # be part of the container image that gets cached, so subsequent
# # builds don't have to re-install them. The image layer is cached
# # publicly in your project's package repository, so it is vital that
# # no secrets are present in the container state or logs.
# install: |
# case "${{ matrix.distro }}" in
# ubuntu*|jessie|stretch|buster|bullseye)
# apt-get update -q -y
# apt-get install -q -y git wget coreutils
# wget -q https://github.com/adoptium/temurin17-binaries/releases/download/jdk-17.0.8%2B7/OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.8_7.tar.gz
# tar -xf OpenJDK17U-jdk_aarch64_linux_hotspot_17.0.8_7.tar.gz
# mkdir /usr/lib/jvm && mv jdk-17.0.8+7 /usr/lib/jvm/jdk-17.0.8+7
# export JAVA_HOME=/usr/lib/jvm/jdk-17.0.8+7
# export PATH=/usr/lib/jvm/jdk-17.0.8+7/bin
# java -version
# ;;
# fedora*)
# dnf -y update
# dnf -y install git which openjdk-17
# ;;
# alpine*)
# apk update
# apk add git openjdk-17
# ;;
# esac
# # Produce a binary artifact and place it in the mounted volume
# run: |
# export JAVA_HOME=/usr/lib/jvm/jdk-17.0.8+7
# export PATH=/usr/lib/jvm/jdk-17.0.8+7/bin
# ./gradlew :desktop-merge:jpackage --info
# cp $(which git)/desktop-merge/build/dist "/artifacts/${artifact_name}"
# echo "Produced artifact at /artifacts/${artifact_name}"
# - name: Show the artifact
# # Items placed in /artifacts in the container will be in
# # ${PWD}/artifacts on the host.
# run: |
# ls -al "${PWD}/artifacts"
# - name: Capture the build artifacts
# uses: actions/upload-artifact@v2
# with:
# name: Bubble Blaster Linux ${{ matrix.arch }} Build ${{ github.run_number }}
# path: artifacts/
build-macos:
strategy:
matrix:
# Use these Java versions
java: [
17 # Minimum supported
]
os: [macOS-11]
runs-on: ${{ matrix.os }}
name: Build on ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Validate gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Setup JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Make gradle wrapper executable
run: chmod +x ./gradlew
- name: Build
run: ./gradlew :desktop-merge:jpackage --info
env:
GITHUB_BUILD_NUMBER: ${{ github.run_number }}
- name: Capture the build artifacts
uses: actions/upload-artifact@v2
with:
name: Bubble Blaster MacOS Build ${{ github.run_number }}
path: desktop-merge/build/dist
build-windows:
strategy:
matrix:
# Use these Java versions
java: [
17 # Minimum supported
]
os: [windows-2022]
runs-on: ${{ matrix.os }}
name: Build on ${{ matrix.os }}
steps:
- name: Checkout repository
uses: actions/checkout@v2
- name: Validate gradle wrapper
uses: gradle/wrapper-validation-action@v1
- name: Setup JDK ${{ matrix.java }}
uses: actions/setup-java@v1
with:
java-version: ${{ matrix.java }}
- name: Build
run: cmd /c "gradlew.bat jpackage --info"
env:
GITHUB_BUILD_NUMBER: ${{ github.run_number }}
- name: Capture the build artifacts
uses: actions/upload-artifact@v2
with:
name: Bubble Blaster Windows Build ${{ github.run_number }}
path: desktop-merge/build/dist