diff --git a/.github/workflows/buildPrerelease.yml b/.github/workflows/buildPrerelease.yml index 6f9d869..b3d55e8 100644 --- a/.github/workflows/buildPrerelease.yml +++ b/.github/workflows/buildPrerelease.yml @@ -15,6 +15,11 @@ jobs: steps: - uses: actions/checkout@v1 + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 17 - name: extract branch id: extract_branch run: echo "##[set-output name=branch;]$(echo ${GITHUB_REF#refs/heads/})" diff --git a/.github/workflows/promote.yml b/.github/workflows/promote.yml index 11f8223..debb6f0 100644 --- a/.github/workflows/promote.yml +++ b/.github/workflows/promote.yml @@ -9,6 +9,11 @@ jobs: runs-on: ubuntu-latest steps: + - name: Set up JDK 17 + uses: actions/setup-java@v4 + with: + distribution: 'temurin' + java-version: 17 - name: extract variable id: extract_variable run: echo "::set-output name=pr_number::${{ github.event.pull_request.number }}";echo "::set-output name=repo::${{ github.event.pull_request.number }}" diff --git a/build.gradle.kts b/build.gradle.kts index 687be3b..e6a0511 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -30,19 +30,10 @@ plugins { id("base") id("net.thauvin.erik.gradle.semver") version "1.0.4" id("com.bmuschko.docker-remote-api") version "6.1.1" - id("org.kordamp.gradle.project") version "0.38.0" - + id("org.kordamp.gradle.project") version "0.54.0" + id("com.saagie.technologies") version "1.3.18" } - -buildscript { - repositories { - mavenLocal() - } - dependencies { - classpath("com.saagie:technologiesplugin:1.2.13") - } -} apply() config { diff --git a/gradle/wrapper/gradle-wrapper.jar b/gradle/wrapper/gradle-wrapper.jar index f3d88b1..e708b1c 100644 Binary files a/gradle/wrapper/gradle-wrapper.jar and b/gradle/wrapper/gradle-wrapper.jar differ diff --git a/gradle/wrapper/gradle-wrapper.properties b/gradle/wrapper/gradle-wrapper.properties index 1f3fdbc..e1adfb4 100644 --- a/gradle/wrapper/gradle-wrapper.properties +++ b/gradle/wrapper/gradle-wrapper.properties @@ -1,5 +1,5 @@ distributionBase=GRADLE_USER_HOME distributionPath=wrapper/dists -distributionUrl=https\://services.gradle.org/distributions/gradle-6.7.1-all.zip +distributionUrl=https\://services.gradle.org/distributions/gradle-8.10-bin.zip zipStoreBase=GRADLE_USER_HOME zipStorePath=wrapper/dists diff --git a/gradlew b/gradlew index 2fe81a7..4f906e0 100755 --- a/gradlew +++ b/gradlew @@ -82,6 +82,7 @@ esac CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar + # Determine the Java command to use to start the JVM. if [ -n "$JAVA_HOME" ] ; then if [ -x "$JAVA_HOME/jre/sh/java" ] ; then @@ -129,6 +130,7 @@ fi if [ "$cygwin" = "true" -o "$msys" = "true" ] ; then APP_HOME=`cygpath --path --mixed "$APP_HOME"` CLASSPATH=`cygpath --path --mixed "$CLASSPATH"` + JAVACMD=`cygpath --unix "$JAVACMD"` # We build the pattern for arguments to be converted via cygpath diff --git a/gradlew.bat b/gradlew.bat index 9109989..ac1b06f 100644 --- a/gradlew.bat +++ b/gradlew.bat @@ -40,7 +40,7 @@ if defined JAVA_HOME goto findJavaFromJavaHome set JAVA_EXE=java.exe %JAVA_EXE% -version >NUL 2>&1 -if "%ERRORLEVEL%" == "0" goto init +if "%ERRORLEVEL%" == "0" goto execute echo. echo ERROR: JAVA_HOME is not set and no 'java' command could be found in your PATH. @@ -54,7 +54,7 @@ goto fail set JAVA_HOME=%JAVA_HOME:"=% set JAVA_EXE=%JAVA_HOME%/bin/java.exe -if exist "%JAVA_EXE%" goto init +if exist "%JAVA_EXE%" goto execute echo. echo ERROR: JAVA_HOME is set to an invalid directory: %JAVA_HOME% @@ -64,28 +64,14 @@ echo location of your Java installation. goto fail -:init -@rem Get command-line arguments, handling Windows variants - -if not "%OS%" == "Windows_NT" goto win9xME_args - -:win9xME_args -@rem Slurp the command line arguments. -set CMD_LINE_ARGS= -set _SKIP=2 - -:win9xME_args_slurp -if "x%~1" == "x" goto execute - -set CMD_LINE_ARGS=%* - :execute @rem Setup the command line set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar + @rem Execute Gradle -"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %CMD_LINE_ARGS% +"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %* :end @rem End local scope for the variables with windows NT shell diff --git a/settings.gradle.kts b/settings.gradle.kts index a0650ab..03e4ce4 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -1,7 +1,7 @@ /* * SPDX-License-Identifier: Apache-2.0 * - * Copyright 2019 Pierre Leresteux. + * Copyright 2019-2025. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. @@ -22,14 +22,17 @@ pluginManagement { } } plugins { - id("com.gradle.enterprise") version "3.0" - id("org.kordamp.gradle.settings") version "0.38.0" + id("com.gradle.develocity") version "3.18" + id("org.kordamp.gradle.settings") version "0.54.0" } -gradleEnterprise { +apply() + +develocity { buildScan { - termsOfServiceUrl = "https://gradle.com/terms-of-service" - termsOfServiceAgree = "yes" + termsOfUseUrl = "https://gradle.com/terms-of-service" + termsOfUseAgree = "yes" + publishing.onlyIf { false } } } rootProject.name = "technologies" @@ -45,8 +48,8 @@ File(rootDir.path + "/technologies").walkTopDown().forEach { } } configure { - layout.set("multi-level") + setLayout("multi-level") enforceNamingConvention.set(false) directories.set(allProjects) } -fun File.isAGradleModule(): Boolean = this.isDirectory && File(this.absolutePath + "/build.gradle.kts").exists() +fun File.isAGradleModule(): Boolean = this.isDirectory && File(this.absolutePath + "/build.gradle.kts").exists() \ No newline at end of file diff --git a/technologies/app/minio/Dockerfile b/technologies/app/minio/Dockerfile new file mode 100644 index 0000000..3601e45 --- /dev/null +++ b/technologies/app/minio/Dockerfile @@ -0,0 +1,3 @@ +FROM minio/minio:RELEASE.2024-12-18T13-15-44Z + +CMD ["minio", "server", "/data" , "--console-address", ":9001"] \ No newline at end of file diff --git a/technologies/app/minio/README.MD b/technologies/app/minio/README.MD new file mode 100644 index 0000000..f4408dd --- /dev/null +++ b/technologies/app/minio/README.MD @@ -0,0 +1,18 @@ +# Minio + +MinIO is a High Performance Object Storage released under GNU Affero General Public License v3.0. +It is API compatible with Amazon S3 cloud storage service. +Use MinIO to build high performance infrastructure for machine learning, analytics and application data workloads. + +## Deployment + +For this app to function properly, +make sure the following environment variables are configured in the app environment variables: + +- `MINIO_BROWSER_REDIRECT_URL` : The external URL to access the console. +To obtain this variable, run the app inside Saagie, then in the Overview page, under the paragraph "HTTP ports", +copy the external url of the port 9001. Once the variable is created, restart the app. + +- `MINIO_ROOT_USER` : The username of the root user. + +- `MINIO_ROOT_PASSWORD` : The password of the root user. diff --git a/technologies/app/minio/metadata.yml b/technologies/app/minio/metadata.yml new file mode 100644 index 0000000..4e8b478 --- /dev/null +++ b/technologies/app/minio/metadata.yml @@ -0,0 +1,32 @@ +version: v1 +type: APP +id: minio +label: Minio +baseline: "Important : Set the variable MINIO_BROWSER_REDIRECT_URL to the Console UI external URL for Minio to + work properly. More details in the README. MinIO is a High Performance Object Storage released under + GNU Affero General Public License v3.0. + It is API compatible with Amazon S3 cloud storage service. + Use MinIO to build high performance infrastructure for machine learning, analytics and application data workloads." +description: "Important : Set the variable MINIO_BROWSER_REDIRECT_URL to the Console UI external URL for Minio to + work properly. More details in the README." +available: true +iconPath: minio.png +backgroundColor: "#75aadb" +customFlags: [] +contexts: + - id: minio-2024-12-18 + label: minio 2024-12-18 + releaseNotes: "" + available: true + trustLevel: stable + ports: + - port: 9001 + name: Console UI + rewriteUrl: true + - port: 9000 + name: API + rewriteUrl: true + dockerInfo: + image: saagie/minio + version: RELEASE.2024-12-18T13-15-44Z + volumes: ["/data"] \ No newline at end of file diff --git a/technologies/app/minio/minio.png b/technologies/app/minio/minio.png new file mode 100644 index 0000000..760937b Binary files /dev/null and b/technologies/app/minio/minio.png differ diff --git a/version.properties b/version.properties index 1ce19fe..58325a3 100644 --- a/version.properties +++ b/version.properties @@ -1,6 +1,6 @@ -version.buildmeta= +version.buildmeta=feature/minio version.major=0 version.minor=94 version.patch=0 -version.prerelease= -version.semver=0.94.0 +version.prerelease=BETA +version.semver=0.94.0-BETA+feature/minio