Inceptum/.gitlab-ci.yml

93 lines
2.9 KiB
YAML
Raw Normal View History

2021-11-11 20:11:20 +01:00
image: gradle:jdk17
2021-10-28 23:32:57 +02:00
variables:
GRADLE_OPTS: "-Dorg.gradle.daemon=false"
before_script:
- export GRADLE_USER_HOME=`pwd`/.gradle
2021-10-31 13:37:07 +01:00
stages:
- build
2021-11-24 15:03:34 +01:00
- portable
2021-10-31 13:37:07 +01:00
- deploy
2021-10-28 23:32:57 +02:00
build_test:
2021-10-31 13:37:07 +01:00
stage: build
2021-10-28 23:32:57 +02:00
script:
2021-11-28 18:28:51 +01:00
- TIMESTAMP=$(date +%s)
- gradle --build-cache build publish -Pflavor=nogui -Ppublic -Ptimestamp=$TIMESTAMP
- gradle --build-cache build publish -Pflavor=fat -Ppublic -Ptimestamp=$TIMESTAMP
- gradle --build-cache build publish -Pflavor=windows -Ppublic -Ptimestamp=$TIMESTAMP
- gradle --build-cache build publish -Pflavor=linux -Ppublic -Ptimestamp=$TIMESTAMP
- gradle --build-cache build publish -Pflavor=macos -Ppublic -Ptimestamp=$TIMESTAMP
2022-01-20 18:30:06 +01:00
- cp build/libs/*-*-*-*.jar ./
- cp wrapper/build/libs/* build/libs/
- cp wrapper/build/libs/*.exe wrapper.exe
- cp wrapper/build/libs/*-all.jar wrapper.jar
- for f in *-*-*.jar; do mv "$f" "latest-${f##*-}";done
- mv latest-fat.jar latest.jar
- unzip -p latest.jar version.json > version.json
2021-10-28 23:32:57 +02:00
artifacts:
paths:
- build/libs
- latest.jar
2021-10-31 17:30:51 +01:00
- wrapper.jar
- wrapper.exe
2022-01-20 18:13:37 +01:00
- latest-*.jar
- version.json
2021-11-17 15:26:18 +01:00
expire_in: 2 days
2021-10-28 23:32:57 +02:00
only:
- master
2021-10-31 13:37:07 +01:00
2021-11-24 15:03:34 +01:00
portable:
stage: portable
image: archlinux:latest
script:
- pacman -Sy p7zip curl jq --noconfirm
- mkdir -p portable/run/libraries/io/gitlab/jfronny/inceptum/Inceptum
- mkdir -p portable/jvm
- cp wrapper.jar portable/
- main="$(find build/libs/ -type f -iname "Inceptum-*-windows.jar")"
- dir="${main##*/Inceptum-}"
- dir="portable/run/libraries/io/gitlab/jfronny/inceptum/Inceptum/${dir%%-windows*}"
- mkdir -p "$dir"
- mv "$main" "$dir/${main##*/}"
2022-01-19 21:36:45 +01:00
- curl -L "https://github.com/pal1000/mesa-dist-win/releases/download/21.2.5/mesa3d-21.2.5-release-msvc.7z" --output mesa.7z
2021-11-24 15:03:34 +01:00
- 7z e mesa.7z -oportable/run/natives/forceload x64/dxil.dll x64/libglapi.dll x64/opengl32.dll
- curl -L "https://api.adoptium.net/v3/binary/latest/17/ga/windows/x64/jdk/hotspot/normal/eclipse?project=jdk" --output jvm.zip
- 7z x jvm.zip -oportable/
- mv portable/jdk*/* portable/jvm/
- rm -r portable/jdk*
2022-01-20 18:13:37 +01:00
- cp packaging/windows/launch.bat portable/
2021-11-24 15:03:34 +01:00
- cd portable
- 7z a ../portable.7z * -mx9
artifacts:
paths:
- portable.7z
expire_in: 2 days
only:
- master
2021-10-31 13:37:07 +01:00
deploy:
rules:
- if: $CI_COMMIT_TAG && '$CI_MERGE_REQUEST_SOURCE_BRANCH_NAME =~ /^master/'
stage: deploy
script:
- gradle --build-cache build publish -Pflavor=nogui -Ppublic -Prelease
- gradle --build-cache build publish -Pflavor=fat -Ppublic -Prelease
- gradle --build-cache build publish -Pflavor=windows -Ppublic -Prelease
- gradle --build-cache build publish -Pflavor=linux -Ppublic -Prelease
- gradle --build-cache build publish -Pflavor=macos -Ppublic -Prelease
2022-01-20 18:13:37 +01:00
pages:
image: python:3.8-buster
stage: deploy
script:
- pip install mkdocs
- mkdocs build
artifacts:
paths:
- public
only:
- master