Installing graalvm and usage to build binary for deploying, need some improvements
This commit is contained in:
parent
afb0f46545
commit
623e8a9d72
4 changed files with 67 additions and 10 deletions
22
build.gradle
22
build.gradle
|
@ -10,6 +10,7 @@ plugins {
|
||||||
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
|
id 'io.spring.dependency-management' version '1.0.15.RELEASE'
|
||||||
id 'java'
|
id 'java'
|
||||||
id 'com.vaadin'
|
id 'com.vaadin'
|
||||||
|
id 'org.graalvm.buildtools.native' version '0.10.2'
|
||||||
}
|
}
|
||||||
|
|
||||||
repositories {
|
repositories {
|
||||||
|
@ -43,3 +44,24 @@ dependencyManagement {
|
||||||
test{
|
test{
|
||||||
useJUnitPlatform()
|
useJUnitPlatform()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
java {
|
||||||
|
toolchain {
|
||||||
|
languageVersion = JavaLanguageVersion.of(17)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
graalvmNative {
|
||||||
|
binaries {
|
||||||
|
main {
|
||||||
|
imageName.set('ModeratorElection')
|
||||||
|
javaLauncher.set(javaToolchains.launcherFor {
|
||||||
|
languageVersion.set(JavaLanguageVersion.of(17))
|
||||||
|
//vendor.set(JvmVendorSpec.GRAAL_VM)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
testSupport = false
|
||||||
|
toolchainDetection = false
|
||||||
|
}
|
||||||
|
|
||||||
|
|
|
@ -10,8 +10,18 @@ java -jar build/libs/ModeratorElection.jar -> localhost:6333 "White Label..."-Er
|
||||||
..in ide dev: ./gradlew clean vaadinPrepareFrontend
|
..in ide dev: ./gradlew clean vaadinPrepareFrontend
|
||||||
```
|
```
|
||||||
|
|
||||||
|
```
|
||||||
|
For production:
|
||||||
|
* install.sh
|
||||||
|
git clone --single-branch --branch MEapp-development https://repo.prod.meissa.de/meissa/ModeratorElection.git /usr/local/src/ModeratorElection
|
||||||
|
=> --branch main
|
||||||
|
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
build graalvm binary
|
build graalvm binary
|
||||||
|
./gradlew nativeCompile failed, need for some improvements!
|
||||||
```
|
```
|
||||||
|
|
||||||
```
|
```
|
||||||
|
|
2
gradle/wrapper/gradle-wrapper.properties
vendored
2
gradle/wrapper/gradle-wrapper.properties
vendored
|
@ -1,6 +1,6 @@
|
||||||
distributionBase=GRADLE_USER_HOME
|
distributionBase=GRADLE_USER_HOME
|
||||||
distributionPath=wrapper/dists
|
distributionPath=wrapper/dists
|
||||||
distributionUrl=https\://services.gradle.org/distributions/gradle-8.4-bin.zip
|
distributionUrl=https\://services.gradle.org/distributions/gradle-8.8-bin.zip
|
||||||
networkTimeout=10000
|
networkTimeout=10000
|
||||||
validateDistributionUrl=true
|
validateDistributionUrl=true
|
||||||
zipStoreBase=GRADLE_USER_HOME
|
zipStoreBase=GRADLE_USER_HOME
|
||||||
|
|
|
@ -5,9 +5,11 @@ set -exo pipefail
|
||||||
function main()
|
function main()
|
||||||
{
|
{
|
||||||
upgradeSystem
|
upgradeSystem
|
||||||
apt-get -qqy install openjdk-17-jdk-headless git curl unzip
|
#openjdk-17-jdk-headless, no need, we are installing graalvm
|
||||||
|
apt-get -qqy install git curl unzip
|
||||||
mkdir /usr/local/src/ModeratorElection
|
mkdir /usr/local/src/ModeratorElection
|
||||||
git clone --single-branch --branch main https://repo.prod.meissa.de/meissa/ModeratorElection.git /usr/local/src/ModeratorElection
|
#change to main branch for production
|
||||||
|
git clone --single-branch --branch MEapp-development https://repo.prod.meissa.de/meissa/ModeratorElection.git /usr/local/src/ModeratorElection
|
||||||
cp /tmp/MEMBERNAMES /usr/local/src/ModeratorElection
|
cp /tmp/MEMBERNAMES /usr/local/src/ModeratorElection
|
||||||
|
|
||||||
#download gradle
|
#download gradle
|
||||||
|
@ -15,16 +17,35 @@ function main()
|
||||||
#curl -SsLo /tmp/gradle-${gradle_version}-bin.zip https://services.gradle.org/distributions/gradle-${gradle_version}-bin.zip
|
#curl -SsLo /tmp/gradle-${gradle_version}-bin.zip https://services.gradle.org/distributions/gradle-${gradle_version}-bin.zip
|
||||||
#curl -SsLo /tmp/gradle-${gradle_version}-bin.zip.sha256 https://services.gradle.org/distributions/gradle-${gradle_version}-bin.zip.sha256
|
#curl -SsLo /tmp/gradle-${gradle_version}-bin.zip.sha256 https://services.gradle.org/distributions/gradle-${gradle_version}-bin.zip.sha256
|
||||||
|
|
||||||
#checksum gradle
|
#download graalvm
|
||||||
#checksum
|
#oracle graalvm-jdk, v17.0.11, 2024-06-14
|
||||||
|
graalvm_JDK_version="17"
|
||||||
|
curl -SsLo /tmp/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz https://download.oracle.com/graalvm/${graalvm_JDK_version}/latest/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz
|
||||||
|
curl -SsLo /tmp/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz.sha256 https://download.oracle.com/graalvm/${graalvm_JDK_version}/latest/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz.sha256
|
||||||
|
|
||||||
|
#graalvm-community-jdk, v17.0.8, 2023-07-25
|
||||||
|
#graalvm_jdk_version="17.0.8"
|
||||||
|
#curl -SsLo /tmp/graalvm-community-jdk.tar.gz https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${graalvm_jdk_version}/graalvm-community-jdk-${graalvm_jdk_version}_linux-x64_bin.tar.gz
|
||||||
|
#curl -SsLo /tmp/graalvm-checksum https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${graalvm_jdk_version}/graalvm-community-jdk-${graalvm_jdk_version}_linux-x64_bin.tar.gz.sha256
|
||||||
|
|
||||||
|
#checksum gradle, graalvm
|
||||||
|
checksum
|
||||||
|
|
||||||
#install gradle
|
#install gradle
|
||||||
#mkdir /opt/gradle
|
#mkdir /opt/gradle
|
||||||
#unzip -qqd /opt/gradle /tmp/gradle-${gradle_version}-bin.zip
|
#unzip -qqd /opt/gradle /tmp/gradle-${gradle_version}-bin.zip
|
||||||
#export PATH=$PATH:/opt/gradle/gradle-${gradle_version}/bin
|
#export PATH=$PATH:/opt/gradle/gradle-${gradle_version}/bin
|
||||||
|
|
||||||
|
#install graalvm -- ToDo: need to be checked, graalvm after installing available as default-jvm?
|
||||||
|
tar -C /usr/lib/jvm/ -xzf graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz
|
||||||
|
dirname_graalvm=$(ls /usr/lib/jvm/|grep -e graa)
|
||||||
|
ln -s /usr/lib/jvm/$dirname_graalvm /usr/lib/jvm/graalvm
|
||||||
|
ln -s /usr/lib/jvm/graalvm/bin/gu /usr/local/bin
|
||||||
|
update-alternatives --install /usr/bin/java java /usr/lib/jvm/graalvm/bin/java 2
|
||||||
|
|
||||||
#ToDo install graalvm, put graalvm binary here
|
|
||||||
|
|
||||||
|
#ToDo install by graalvm, put graalvm binary here
|
||||||
#install -m 0700 /tmp/entrypoint-start-and-wait.sh /
|
#install -m 0700 /tmp/entrypoint-start-and-wait.sh /
|
||||||
|
|
||||||
#install -m 0700 /tmp/init.sh /usr/local/bin/
|
#install -m 0700 /tmp/init.sh /usr/local/bin/
|
||||||
|
@ -37,14 +58,18 @@ function main()
|
||||||
|
|
||||||
function checksum() {
|
function checksum() {
|
||||||
#gradle
|
#gradle
|
||||||
echo " /tmp/gradle-${gradle_version}-bin.zip"|tee -a /tmp/gradle-${gradle_version}-bin.zip.sha256
|
#echo " /tmp/gradle-${gradle_version}-bin.zip"|tee -a /tmp/gradle-${gradle_version}-bin.zip.sha256
|
||||||
sha256sum -c --status /tmp/gradle-${gradle_version}-bin.zip.sha256
|
#sha256sum -c --status /tmp/gradle-${gradle_version}-bin.zip.sha256
|
||||||
|
|
||||||
|
#graalvm
|
||||||
|
echo " /tmp/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz"|tee -a /tmp/graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz.sha256
|
||||||
|
sha256sum -c --status graalvm-jdk-${graalvm_JDK_version}_linux-x64_bin.tar.gz.sha256
|
||||||
}
|
}
|
||||||
|
|
||||||
source /tmp/install_functions_debian.sh
|
source /tmp/install_functions_debian.sh
|
||||||
DEBIAN_FRONTEND=noninteractive DEBCONF_NOWARNINGS=yes main
|
DEBIAN_FRONTEND=noninteractive DEBCONF_NOWARNINGS=yes main
|
||||||
|
|
||||||
cd /usr/local/src/ModeratorElection
|
#cd /usr/local/src/ModeratorElection
|
||||||
#npm install -g npm@latest
|
#npm install -g npm@latest
|
||||||
#npm audit fix
|
#npm audit fix
|
||||||
#npm ci --omit=dev
|
#npm ci --omit=dev
|
||||||
|
|
Loading…
Reference in a new issue