diff --git a/bubbles/bubbles-backend/.dockerignore b/bubbles/bubbles-backend/.dockerignore deleted file mode 100644 index 94810d00..00000000 --- a/bubbles/bubbles-backend/.dockerignore +++ /dev/null @@ -1,5 +0,0 @@ -* -!target/*-runner -!target/*-runner.jar -!target/lib/* -!target/quarkus-app/* \ No newline at end of file diff --git a/bubbles/bubbles-backend/.gitignore b/bubbles/bubbles-backend/.gitignore deleted file mode 100644 index bdf57ce3..00000000 --- a/bubbles/bubbles-backend/.gitignore +++ /dev/null @@ -1,39 +0,0 @@ -#Maven -target/ -pom.xml.tag -pom.xml.releaseBackup -pom.xml.versionsBackup -release.properties - -# Eclipse -.project -.classpath -.settings/ -bin/ - -# IntelliJ -.idea -*.ipr -*.iml -*.iws - -# NetBeans -nb-configuration.xml - -# Visual Studio Code -.vscode -.factorypath - -# OSX -.DS_Store - -# Vim -*.swp -*.swo - -# patch -*.orig -*.rej - -# Local environment -.env diff --git a/bubbles/bubbles-backend/.mvn/wrapper/MavenWrapperDownloader.java b/bubbles/bubbles-backend/.mvn/wrapper/MavenWrapperDownloader.java deleted file mode 100644 index e76d1f32..00000000 --- a/bubbles/bubbles-backend/.mvn/wrapper/MavenWrapperDownloader.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright 2007-present the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import java.net.*; -import java.io.*; -import java.nio.channels.*; -import java.util.Properties; - -public class MavenWrapperDownloader { - - private static final String WRAPPER_VERSION = "0.5.6"; - /** - * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided. - */ - private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" - + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; - - /** - * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to - * use instead of the default one. - */ - private static final String MAVEN_WRAPPER_PROPERTIES_PATH = - ".mvn/wrapper/maven-wrapper.properties"; - - /** - * Path where the maven-wrapper.jar will be saved to. - */ - private static final String MAVEN_WRAPPER_JAR_PATH = - ".mvn/wrapper/maven-wrapper.jar"; - - /** - * Name of the property which should be used to override the default download url for the wrapper. - */ - private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; - - public static void main(String args[]) { - System.out.println("- Downloader started"); - File baseDirectory = new File(args[0]); - System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); - - // If the maven-wrapper.properties exists, read it and check if it contains a custom - // wrapperUrl parameter. - File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); - String url = DEFAULT_DOWNLOAD_URL; - if(mavenWrapperPropertyFile.exists()) { - FileInputStream mavenWrapperPropertyFileInputStream = null; - try { - mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); - Properties mavenWrapperProperties = new Properties(); - mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); - url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); - } catch (IOException e) { - System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); - } finally { - try { - if(mavenWrapperPropertyFileInputStream != null) { - mavenWrapperPropertyFileInputStream.close(); - } - } catch (IOException e) { - // Ignore ... - } - } - } - System.out.println("- Downloading from: " + url); - - File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); - if(!outputFile.getParentFile().exists()) { - if(!outputFile.getParentFile().mkdirs()) { - System.out.println( - "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); - } - } - System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); - try { - downloadFileFromURL(url, outputFile); - System.out.println("Done"); - System.exit(0); - } catch (Throwable e) { - System.out.println("- Error downloading"); - e.printStackTrace(); - System.exit(1); - } - } - - private static void downloadFileFromURL(String urlString, File destination) throws Exception { - if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { - String username = System.getenv("MVNW_USERNAME"); - char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); - Authenticator.setDefault(new Authenticator() { - @Override - protected PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication(username, password); - } - }); - } - URL website = new URL(urlString); - ReadableByteChannel rbc; - rbc = Channels.newChannel(website.openStream()); - FileOutputStream fos = new FileOutputStream(destination); - fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); - fos.close(); - rbc.close(); - } - -} diff --git a/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.jar b/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index 2cc7d4a5..00000000 Binary files a/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.jar and /dev/null differ diff --git a/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.properties b/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index ffdc10e5..00000000 --- a/bubbles/bubbles-backend/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,2 +0,0 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.1/apache-maven-3.8.1-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/bubbles/bubbles-backend/README.md b/bubbles/bubbles-backend/README.md deleted file mode 100644 index c42b11a7..00000000 --- a/bubbles/bubbles-backend/README.md +++ /dev/null @@ -1,60 +0,0 @@ -# bubbles-backend Project - -This project uses Quarkus, the Supersonic Subatomic Java Framework. - -If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ . - -## Running the application in dev mode - -You can run your application in dev mode that enables live coding using: -```shell script -./mvnw compile quarkus:dev -``` - -> **_NOTE:_** Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/. - -## Packaging and running the application - -The application can be packaged using: -```shell script -./mvnw package -``` -It produces the `quarkus-run.jar` file in the `target/quarkus-app/` directory. -Be aware that it’s not an _über-jar_ as the dependencies are copied into the `target/quarkus-app/lib/` directory. - -The application is now runnable using `java -jar target/quarkus-app/quarkus-run.jar`. - -If you want to build an _über-jar_, execute the following command: -```shell script -./mvnw package -Dquarkus.package.type=uber-jar -``` - -The application, packaged as an _über-jar_, is now runnable using `java -jar target/*-runner.jar`. - -## Creating a native executable - -You can create a native executable using: -```shell script -./mvnw package -Pnative -``` - -Or, if you don't have GraalVM installed, you can run the native executable build in a container using: -```shell script -./mvnw package -Pnative -Dquarkus.native.container-build=true -``` - -You can then execute your native executable with: `./target/bubbles-backend-1.0.0-SNAPSHOT-runner` - -If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.html. - -## Related Guides - -- RESTEasy JAX-RS ([guide](https://quarkus.io/guides/rest-json)): REST endpoint framework implementing JAX-RS and more - -## Provided Code - -### RESTEasy JAX-RS - -Easily start your RESTful Web Services - -[Related guide section...](https://quarkus.io/guides/getting-started#the-jax-rs-resources) diff --git a/bubbles/bubbles-backend/mvnw b/bubbles/bubbles-backend/mvnw deleted file mode 100755 index a16b5431..00000000 --- a/bubbles/bubbles-backend/mvnw +++ /dev/null @@ -1,310 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` - fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" - - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi - done - - saveddir=`pwd` - - M2_HOME=`dirname "$PRG"`/.. - - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` - - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`which java`" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` - fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" - fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi -else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -exec "$JAVACMD" \ - $MAVEN_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/bubbles/bubbles-backend/mvnw.cmd b/bubbles/bubbles-backend/mvnw.cmd deleted file mode 100755 index c8d43372..00000000 --- a/bubbles/bubbles-backend/mvnw.cmd +++ /dev/null @@ -1,182 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM https://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" -if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - -FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" -if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%" == "on" pause - -if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% - -exit /B %ERROR_CODE% diff --git a/bubbles/bubbles-backend/pom.xml b/bubbles/bubbles-backend/pom.xml deleted file mode 100644 index 4621598e..00000000 --- a/bubbles/bubbles-backend/pom.xml +++ /dev/null @@ -1,135 +0,0 @@ - - - 4.0.0 - org.acme - bubbles-backend - 1.0.0-SNAPSHOT - - 3.8.1 - true - 11 - 11 - UTF-8 - UTF-8 - quarkus-bom - io.quarkus.platform - 2.4.1.Final - 3.0.0-M5 - - - - - ${quarkus.platform.group-id} - ${quarkus.platform.artifact-id} - ${quarkus.platform.version} - pom - import - - - - - - io.quarkus - quarkus-resteasy - - - io.quarkus - quarkus-kubernetes - - - io.quarkus - quarkus-container-image-jib - - - io.quarkus - quarkus-arc - - - io.quarkus - quarkus-resteasy-jsonb - - - io.quarkus - quarkus-junit5 - test - - - io.rest-assured - rest-assured - test - - - - - - ${quarkus.platform.group-id} - quarkus-maven-plugin - ${quarkus.platform.version} - true - - - - build - generate-code - generate-code-tests - - - - - - maven-compiler-plugin - ${compiler-plugin.version} - - ${maven.compiler.parameters} - - - - maven-surefire-plugin - ${surefire-plugin.version} - - - org.jboss.logmanager.LogManager - ${maven.home} - - - - - - - - native - - - native - - - - - - maven-failsafe-plugin - ${surefire-plugin.version} - - - - integration-test - verify - - - - ${project.build.directory}/${project.build.finalName}-runner - org.jboss.logmanager.LogManager - ${maven.home} - - - - - - - - - native - - - - diff --git a/bubbles/bubbles-backend/src/main/argorollouts/Service-canary.yaml b/bubbles/bubbles-backend/src/main/argorollouts/Service-canary.yaml deleted file mode 100644 index 95a709fa..00000000 --- a/bubbles/bubbles-backend/src/main/argorollouts/Service-canary.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: bubble-backend-canary - labels: - app: bubblebackend -spec: - ports: - - name: http - port: 8080 - selector: - app: bubblebackend \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/argorollouts/Service.yaml b/bubbles/bubbles-backend/src/main/argorollouts/Service.yaml deleted file mode 100644 index 43bc029b..00000000 --- a/bubbles/bubbles-backend/src/main/argorollouts/Service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: bubble-backend - labels: - app: bubblebackend -spec: - ports: - - name: http - port: 8080 - selector: - app: bubblebackend diff --git a/bubbles/bubbles-backend/src/main/argorollouts/rollout-v2.yaml b/bubbles/bubbles-backend/src/main/argorollouts/rollout-v2.yaml deleted file mode 100644 index 394e1d9f..00000000 --- a/bubbles/bubbles-backend/src/main/argorollouts/rollout-v2.yaml +++ /dev/null @@ -1,55 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Rollout -metadata: - name: bubblebackend - labels: - app: bubblebackend -spec: - strategy: - canary: - steps: - - setWeight: 20 - - pause: - duration: "1m" - - setWeight: 50 - - pause: - duration: "2m" - canaryService: bubble-backend-canary - stableService: bubble-backend - trafficRouting: - istio: - virtualService: - name: bubble-backend - routes: - - primary - replicas: 1 - revisionHistoryLimit: 2 - selector: - matchLabels: - app: bubblebackend - version: v1 - template: - metadata: - labels: - app: bubblebackend - version: v1 - annotations: - sidecar.istio.io/inject: "true" - spec: - containers: - - name: bubblebackend - image: quay.io/rhdevelopers/bubble-backend:v1.0 - env: - - name: BUBBLE_COLOR - value: blue - imagePullPolicy: Always - ports: - - name: web - containerPort: 8080 - resources: - requests: - memory: "64Mi" - cpu: "100m" - limits: - memory: "128Mi" - cpu: "140m" \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/argorollouts/rollout.yaml b/bubbles/bubbles-backend/src/main/argorollouts/rollout.yaml deleted file mode 100644 index 19fcb8b7..00000000 --- a/bubbles/bubbles-backend/src/main/argorollouts/rollout.yaml +++ /dev/null @@ -1,52 +0,0 @@ -apiVersion: argoproj.io/v1alpha1 -kind: Rollout -metadata: - name: bubblebackend - labels: - app: bubblebackend -spec: - strategy: - canary: - steps: - - setWeight: 20 - - pause: - duration: "1m" - - setWeight: 50 - - pause: - duration: "2m" - canaryService: bubble-backend-canary - stableService: bubble-backend - trafficRouting: - istio: - virtualService: - name: bubble-backend - routes: - - primary - replicas: 1 - revisionHistoryLimit: 2 - selector: - matchLabels: - app: bubblebackend - version: v1 - template: - metadata: - labels: - app: bubblebackend - version: v1 - annotations: - sidecar.istio.io/inject: "true" - spec: - containers: - - name: bubblebackend - image: quay.io/rhdevelopers/bubble-backend:v1.0 - imagePullPolicy: Always - ports: - - name: web - containerPort: 8080 - resources: - requests: - memory: "64Mi" - cpu: "100m" - limits: - memory: "128Mi" - cpu: "140m" \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/argorollouts/virtual-service-bubble-backend-v1_and_v2_100_0.yaml b/bubbles/bubbles-backend/src/main/argorollouts/virtual-service-bubble-backend-v1_and_v2_100_0.yaml deleted file mode 100644 index 8502697e..00000000 --- a/bubbles/bubbles-backend/src/main/argorollouts/virtual-service-bubble-backend-v1_and_v2_100_0.yaml +++ /dev/null @@ -1,16 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - weight: 100 - - destination: - host: bubble-backend-canary - weight: 0 - name: primary \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/docker/Dockerfile.jvm b/bubbles/bubbles-backend/src/main/docker/Dockerfile.jvm deleted file mode 100644 index 73ccca61..00000000 --- a/bubbles/bubbles-backend/src/main/docker/Dockerfile.jvm +++ /dev/null @@ -1,55 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode -# -# Before building the container image run: -# -# ./mvnw package -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.jvm -t quarkus/bubbles-backend-jvm . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-backend-jvm -# -# If you want to include the debug port into your docker image -# you will have to expose the debug port (default 5005) like this : EXPOSE 8080 5005 -# -# Then run the container using : -# -# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/bubbles-backend-jvm -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 - -ARG JAVA_PACKAGE=java-11-openjdk-headless -ARG RUN_JAVA_VERSION=1.3.8 -ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' -# Install java and the run-java script -# Also set up permissions for user `1001` -RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ - && microdnf update \ - && microdnf clean all \ - && mkdir /deployments \ - && chown 1001 /deployments \ - && chmod "g+rwX" /deployments \ - && chown 1001:root /deployments \ - && curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \ - && chown 1001 /deployments/run-java.sh \ - && chmod 540 /deployments/run-java.sh \ - && echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/conf/security/java.security - -# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. -ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -# We make four distinct layers so if there are application changes the library layers can be re-used -COPY --chown=1001 target/quarkus-app/lib/ /deployments/lib/ -COPY --chown=1001 target/quarkus-app/*.jar /deployments/ -COPY --chown=1001 target/quarkus-app/app/ /deployments/app/ -COPY --chown=1001 target/quarkus-app/quarkus/ /deployments/quarkus/ - -EXPOSE 8080 -USER 1001 - -ENTRYPOINT [ "/deployments/run-java.sh" ] - diff --git a/bubbles/bubbles-backend/src/main/docker/Dockerfile.legacy-jar b/bubbles/bubbles-backend/src/main/docker/Dockerfile.legacy-jar deleted file mode 100644 index d484c851..00000000 --- a/bubbles/bubbles-backend/src/main/docker/Dockerfile.legacy-jar +++ /dev/null @@ -1,51 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode -# -# Before building the container image run: -# -# ./mvnw package -Dquarkus.package.type=legacy-jar -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.legacy-jar -t quarkus/bubbles-backend-legacy-jar . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-backend-legacy-jar -# -# If you want to include the debug port into your docker image -# you will have to expose the debug port (default 5005) like this : EXPOSE 8080 5005 -# -# Then run the container using : -# -# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/bubbles-backend-legacy-jar -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 - -ARG JAVA_PACKAGE=java-11-openjdk-headless -ARG RUN_JAVA_VERSION=1.3.8 -ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' -# Install java and the run-java script -# Also set up permissions for user `1001` -RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ - && microdnf update \ - && microdnf clean all \ - && mkdir /deployments \ - && chown 1001 /deployments \ - && chmod "g+rwX" /deployments \ - && chown 1001:root /deployments \ - && curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \ - && chown 1001 /deployments/run-java.sh \ - && chmod 540 /deployments/run-java.sh \ - && echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/conf/security/java.security - -# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. -ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -COPY target/lib/* /deployments/lib/ -COPY target/*-runner.jar /deployments/app.jar - -EXPOSE 8080 -USER 1001 - -ENTRYPOINT [ "/deployments/run-java.sh" ] diff --git a/bubbles/bubbles-backend/src/main/docker/Dockerfile.native b/bubbles/bubbles-backend/src/main/docker/Dockerfile.native deleted file mode 100644 index 545f9b13..00000000 --- a/bubbles/bubbles-backend/src/main/docker/Dockerfile.native +++ /dev/null @@ -1,27 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in native (no JVM) mode -# -# Before building the container image run: -# -# ./mvnw package -Pnative -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.native -t quarkus/bubbles-backend . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-backend -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 -WORKDIR /work/ -RUN chown 1001 /work \ - && chmod "g+rwX" /work \ - && chown 1001:root /work -COPY --chown=1001:root target/*-runner /work/application - -EXPOSE 8080 -USER 1001 - -CMD ["./application", "-Dquarkus.http.host=0.0.0.0"] diff --git a/bubbles/bubbles-backend/src/main/docker/Dockerfile.native-distroless b/bubbles/bubbles-backend/src/main/docker/Dockerfile.native-distroless deleted file mode 100644 index 0a4f8041..00000000 --- a/bubbles/bubbles-backend/src/main/docker/Dockerfile.native-distroless +++ /dev/null @@ -1,23 +0,0 @@ -#### -# This Dockerfile is used in order to build a distroless container that runs the Quarkus application in native (no JVM) mode -# -# Before building the container image run: -# -# ./mvnw package -Pnative -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.native-distroless -t quarkus/bubbles-backend . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-backend -# -### -FROM quay.io/quarkus/quarkus-distroless-image:1.0 -COPY target/*-runner /application - -EXPOSE 8080 -USER nonroot - -CMD ["./application", "-Dquarkus.http.host=0.0.0.0"] diff --git a/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-cb.yaml b/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-cb.yaml deleted file mode 100644 index 530ec2e0..00000000 --- a/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-cb.yaml +++ /dev/null @@ -1,25 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: DestinationRule -metadata: - name: bubble-backend -spec: - host: bubble-backend - subsets: - - labels: - version: v1 - name: version-v1 - - labels: - version: v2 - name: version-v2 - trafficPolicy: - connectionPool: - http: - http1MaxPendingRequests: 1 - maxRequestsPerConnection: 1 - tcp: - maxConnections: 1 - outlierDetection: - baseEjectionTime: 3m - consecutive5xxErrors: 1 - interval: 1s - maxEjectionPercent: 100 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-v1-v2.yaml b/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-v1-v2.yaml deleted file mode 100644 index bb1252e2..00000000 --- a/bubbles/bubbles-backend/src/main/istio/destination-rule-bubble-backend-v1-v2.yaml +++ /dev/null @@ -1,13 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: DestinationRule -metadata: - name: bubble-backend -spec: - host: bubble-backend - subsets: - - labels: - version: v1 - name: version-v1 - - labels: - version: v2 - name: version-v2 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-timeout.yaml b/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-timeout.yaml deleted file mode 100644 index 5861600d..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-timeout.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - timeout: 1.000s \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1-mirror-v2.yml b/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1-mirror-v2.yml deleted file mode 100644 index 3c3b1721..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1-mirror-v2.yml +++ /dev/null @@ -1,15 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - subset: version-v1 - mirror: - host: bubble-backend - subset: version-v2 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_0_100.yaml b/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_0_100.yaml deleted file mode 100644 index 569d22e8..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_0_100.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - subset: version-v1 - weight: 0 - - destination: - host: bubble-backend - subset: version-v2 - weight: 100 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_100_0.yaml b/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_100_0.yaml deleted file mode 100644 index 969baa5f..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_100_0.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - subset: version-v1 - weight: 100 - - destination: - host: bubble-backend - subset: version-v2 - weight: 0 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_75_25.yaml b/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_75_25.yaml deleted file mode 100644 index d67635c2..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_75_25.yaml +++ /dev/null @@ -1,17 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - route: - - destination: - host: bubble-backend - subset: version-v1 - weight: 75 - - destination: - host: bubble-backend - subset: version-v2 - weight: 25 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/istio/virtual-service-safari-bubble-backend-v2.yml b/bubbles/bubbles-backend/src/main/istio/virtual-service-safari-bubble-backend-v2.yml deleted file mode 100644 index 5a309b87..00000000 --- a/bubbles/bubbles-backend/src/main/istio/virtual-service-safari-bubble-backend-v2.yml +++ /dev/null @@ -1,20 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-backend -spec: - hosts: - - bubble-backend - http: - - match: - - headers: - baggage-user-agent: - regex: .*Safari.* - route: - - destination: - host: bubble-backend - subset: version-v2 - - route: - - destination: - host: bubble-backend - subset: version-v1 \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/java/org/acme/Bubble.java b/bubbles/bubbles-backend/src/main/java/org/acme/Bubble.java deleted file mode 100644 index 64950c6d..00000000 --- a/bubbles/bubbles-backend/src/main/java/org/acme/Bubble.java +++ /dev/null @@ -1,14 +0,0 @@ -package org.acme; - -public class Bubble { - - public Bubble(String color, String hostname, long requests) { - this.color = color; - this.hostname = hostname; - this.requests = requests; - } - - public String color; - public String hostname; - public long requests; -} diff --git a/bubbles/bubbles-backend/src/main/java/org/acme/BubbleResource.java b/bubbles/bubbles-backend/src/main/java/org/acme/BubbleResource.java deleted file mode 100644 index 7cfd4bd6..00000000 --- a/bubbles/bubbles-backend/src/main/java/org/acme/BubbleResource.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.acme; - -import java.net.InetAddress; -import java.net.UnknownHostException; -import java.util.concurrent.TimeUnit; -import java.util.concurrent.atomic.AtomicInteger; -import java.util.concurrent.atomic.AtomicLong; - -import javax.json.Json; -import javax.json.JsonObject; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; -import javax.ws.rs.core.Response; - -import org.eclipse.microprofile.config.inject.ConfigProperty; - -@Path("/bubble") -public class BubbleResource { - - @ConfigProperty(name = "bubble.color") - String color; - - private boolean misbehave; - private boolean sleep; - - private AtomicLong counter = new AtomicLong(0); - - @GET - @Path("/sleep") - @Produces(MediaType.TEXT_PLAIN) - public String sleep() { - sleep = true; - return "Sleep Neo"; - } - - @GET - @Path("/awake") - @Produces(MediaType.TEXT_PLAIN) - public String awake() { - sleep = false; - return "Awaking"; - } - - @GET - @Path("/misbehave") - @Produces(MediaType.TEXT_PLAIN) - public String misbehave() { - misbehave = true; - return "Following calls will return a 5XX error code"; - } - - @GET - @Path("/behave") - @Produces(MediaType.TEXT_PLAIN) - public String behave() { - misbehave = false; - return "Back to normal"; - } - - @GET - public Response bubble() throws UnknownHostException { - - if (misbehave) { - - final Bubble b = new Bubble( "yellow", - InetAddress.getLocalHost().getHostName(), - counter.incrementAndGet() - ); - - return Response.ok(b) - .build(); - } - - if (sleep) { - try { - TimeUnit.SECONDS.sleep(3); - } catch (InterruptedException e) { - throw new RuntimeException(e); - } - } - - final Bubble b = new Bubble( color, - InetAddress.getLocalHost().getHostName(), - counter.incrementAndGet() - ); - - return Response.ok(b).build(); - } - -} \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/kubernetes/Deployment-v2.yaml b/bubbles/bubbles-backend/src/main/kubernetes/Deployment-v2.yaml deleted file mode 100644 index 564a6217..00000000 --- a/bubbles/bubbles-backend/src/main/kubernetes/Deployment-v2.yaml +++ /dev/null @@ -1,50 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - labels: - app: bubblebackend - version: v2 - name: bubblebackend-v2 -spec: - replicas: 1 - selector: - matchLabels: - app: bubblebackend - version: v2 - template: - metadata: - labels: - app: bubblebackend - version: v2 - annotations: - sidecar.istio.io/inject: "true" - spec: - containers: - - env: - - name: JAVA_OPTIONS - value: -Xms15m -Xmx15m -Xmn15m - - name: BUBBLE_COLOR - value: blue - name: bubblebackend - image: quay.io/rhdevelopers/bubble-backend:v1.0 - imagePullPolicy: Always - ports: - - containerPort: 8080 - name: http - protocol: TCP - - containerPort: 8778 - name: jolokia - protocol: TCP - - containerPort: 9779 - name: prometheus - protocol: TCP - resources: - requests: - memory: "80Mi" - cpu: "200m" # 1/5 core - limits: - memory: "120Mi" - cpu: "500m" - securityContext: - privileged: false - serviceAccount: "bubblebackend" \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/kubernetes/Deployment.yaml b/bubbles/bubbles-backend/src/main/kubernetes/Deployment.yaml deleted file mode 100644 index 10153fe5..00000000 --- a/bubbles/bubbles-backend/src/main/kubernetes/Deployment.yaml +++ /dev/null @@ -1,54 +0,0 @@ ---- -apiVersion: "v1" -kind: "ServiceAccount" -metadata: - name: "bubblebackend" ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - labels: - app: bubblebackend - version: v1 - name: bubblebackend-v1 -spec: - replicas: 1 - selector: - matchLabels: - app: bubblebackend - version: v1 - template: - metadata: - labels: - app: bubblebackend - version: v1 - annotations: - sidecar.istio.io/inject: "true" - spec: - containers: - - env: - - name: JAVA_OPTIONS - value: -Xms15m -Xmx15m -Xmn15m - name: bubblebackend - image: quay.io/rhdevelopers/bubble-backend:v1.0 - imagePullPolicy: Always - ports: - - containerPort: 8080 - name: http - protocol: TCP - - containerPort: 8778 - name: jolokia - protocol: TCP - - containerPort: 9779 - name: prometheus - protocol: TCP - resources: - requests: - memory: "80Mi" - cpu: "200m" # 1/5 core - limits: - memory: "120Mi" - cpu: "500m" - securityContext: - privileged: false - serviceAccount: "bubblebackend" \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/kubernetes/Service.yaml b/bubbles/bubbles-backend/src/main/kubernetes/Service.yaml deleted file mode 100644 index 43bc029b..00000000 --- a/bubbles/bubbles-backend/src/main/kubernetes/Service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: bubble-backend - labels: - app: bubblebackend -spec: - ports: - - name: http - port: 8080 - selector: - app: bubblebackend diff --git a/bubbles/bubbles-backend/src/main/resources/META-INF/resources/index.html b/bubbles/bubbles-backend/src/main/resources/META-INF/resources/index.html deleted file mode 100644 index 4c6b8619..00000000 --- a/bubbles/bubbles-backend/src/main/resources/META-INF/resources/index.html +++ /dev/null @@ -1,176 +0,0 @@ - - - - - bubbles-backend - 1.0.0-SNAPSHOT - - - - - - -
-
-

Congratulations, you have created a new Quarkus cloud application.

- -

What is this page?

- -

This page is served by Quarkus. The source is in - src/main/resources/META-INF/resources/index.html.

- -

What are your next steps?

- -

If not already done, run the application in dev mode using: ./mvnw compile quarkus:dev. -

- -
-

RESTEasy JAX-RS

-

Easily start your RESTful Web Services

-

@Path: /hello

-

Related guide section...

-
- -
-
-
-

Application

-
    -
  • GroupId: org.acme
  • -
  • ArtifactId: bubbles-backend
  • -
  • Version: 1.0.0-SNAPSHOT
  • -
  • Quarkus Version: 2.4.1.Final
  • -
-
-
-

Do you like Quarkus?

-
    -
  • Go give it a star on GitHub.
  • -
-
-
-

Selected extensions guides

- -
- -
-
- - \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/main/resources/application.properties b/bubbles/bubbles-backend/src/main/resources/application.properties deleted file mode 100644 index a5a34746..00000000 --- a/bubbles/bubbles-backend/src/main/resources/application.properties +++ /dev/null @@ -1,8 +0,0 @@ -bubble.color=red - -quarkus.http.cors=true - -quarkus.container-image.group=rhdevelopers -quarkus.container-image.registry=quay.io -quarkus.container-image.tag=v1.0 -quarkus.container-image.name=bubble-backend \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/test/java/org/acme/GreetingResourceTest.java b/bubbles/bubbles-backend/src/test/java/org/acme/GreetingResourceTest.java deleted file mode 100644 index 87fbd5c6..00000000 --- a/bubbles/bubbles-backend/src/test/java/org/acme/GreetingResourceTest.java +++ /dev/null @@ -1,21 +0,0 @@ -package org.acme; - -import io.quarkus.test.junit.QuarkusTest; -import org.junit.jupiter.api.Test; - -import static io.restassured.RestAssured.given; -import static org.hamcrest.CoreMatchers.is; - -@QuarkusTest -public class GreetingResourceTest { - - @Test - public void testHelloEndpoint() { - given() - .when().get("/hello") - .then() - .statusCode(200) - .body(is("Hello RESTEasy")); - } - -} \ No newline at end of file diff --git a/bubbles/bubbles-backend/src/test/java/org/acme/NativeGreetingResourceIT.java b/bubbles/bubbles-backend/src/test/java/org/acme/NativeGreetingResourceIT.java deleted file mode 100644 index 043ae182..00000000 --- a/bubbles/bubbles-backend/src/test/java/org/acme/NativeGreetingResourceIT.java +++ /dev/null @@ -1,9 +0,0 @@ -package org.acme; - -import io.quarkus.test.junit.NativeImageTest; - -@NativeImageTest -public class NativeGreetingResourceIT extends GreetingResourceTest { - - // Execute the same tests but in native mode. -} \ No newline at end of file diff --git a/bubbles/bubbles-frontend/.dockerignore b/bubbles/bubbles-frontend/.dockerignore deleted file mode 100644 index 94810d00..00000000 --- a/bubbles/bubbles-frontend/.dockerignore +++ /dev/null @@ -1,5 +0,0 @@ -* -!target/*-runner -!target/*-runner.jar -!target/lib/* -!target/quarkus-app/* \ No newline at end of file diff --git a/bubbles/bubbles-frontend/.gitignore b/bubbles/bubbles-frontend/.gitignore deleted file mode 100644 index bdf57ce3..00000000 --- a/bubbles/bubbles-frontend/.gitignore +++ /dev/null @@ -1,39 +0,0 @@ -#Maven -target/ -pom.xml.tag -pom.xml.releaseBackup -pom.xml.versionsBackup -release.properties - -# Eclipse -.project -.classpath -.settings/ -bin/ - -# IntelliJ -.idea -*.ipr -*.iml -*.iws - -# NetBeans -nb-configuration.xml - -# Visual Studio Code -.vscode -.factorypath - -# OSX -.DS_Store - -# Vim -*.swp -*.swo - -# patch -*.orig -*.rej - -# Local environment -.env diff --git a/bubbles/bubbles-frontend/.mvn/wrapper/MavenWrapperDownloader.java b/bubbles/bubbles-frontend/.mvn/wrapper/MavenWrapperDownloader.java deleted file mode 100644 index e76d1f32..00000000 --- a/bubbles/bubbles-frontend/.mvn/wrapper/MavenWrapperDownloader.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright 2007-present the original author or authors. - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * https://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -import java.net.*; -import java.io.*; -import java.nio.channels.*; -import java.util.Properties; - -public class MavenWrapperDownloader { - - private static final String WRAPPER_VERSION = "0.5.6"; - /** - * Default URL to download the maven-wrapper.jar from, if no 'downloadUrl' is provided. - */ - private static final String DEFAULT_DOWNLOAD_URL = "https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/" - + WRAPPER_VERSION + "/maven-wrapper-" + WRAPPER_VERSION + ".jar"; - - /** - * Path to the maven-wrapper.properties file, which might contain a downloadUrl property to - * use instead of the default one. - */ - private static final String MAVEN_WRAPPER_PROPERTIES_PATH = - ".mvn/wrapper/maven-wrapper.properties"; - - /** - * Path where the maven-wrapper.jar will be saved to. - */ - private static final String MAVEN_WRAPPER_JAR_PATH = - ".mvn/wrapper/maven-wrapper.jar"; - - /** - * Name of the property which should be used to override the default download url for the wrapper. - */ - private static final String PROPERTY_NAME_WRAPPER_URL = "wrapperUrl"; - - public static void main(String args[]) { - System.out.println("- Downloader started"); - File baseDirectory = new File(args[0]); - System.out.println("- Using base directory: " + baseDirectory.getAbsolutePath()); - - // If the maven-wrapper.properties exists, read it and check if it contains a custom - // wrapperUrl parameter. - File mavenWrapperPropertyFile = new File(baseDirectory, MAVEN_WRAPPER_PROPERTIES_PATH); - String url = DEFAULT_DOWNLOAD_URL; - if(mavenWrapperPropertyFile.exists()) { - FileInputStream mavenWrapperPropertyFileInputStream = null; - try { - mavenWrapperPropertyFileInputStream = new FileInputStream(mavenWrapperPropertyFile); - Properties mavenWrapperProperties = new Properties(); - mavenWrapperProperties.load(mavenWrapperPropertyFileInputStream); - url = mavenWrapperProperties.getProperty(PROPERTY_NAME_WRAPPER_URL, url); - } catch (IOException e) { - System.out.println("- ERROR loading '" + MAVEN_WRAPPER_PROPERTIES_PATH + "'"); - } finally { - try { - if(mavenWrapperPropertyFileInputStream != null) { - mavenWrapperPropertyFileInputStream.close(); - } - } catch (IOException e) { - // Ignore ... - } - } - } - System.out.println("- Downloading from: " + url); - - File outputFile = new File(baseDirectory.getAbsolutePath(), MAVEN_WRAPPER_JAR_PATH); - if(!outputFile.getParentFile().exists()) { - if(!outputFile.getParentFile().mkdirs()) { - System.out.println( - "- ERROR creating output directory '" + outputFile.getParentFile().getAbsolutePath() + "'"); - } - } - System.out.println("- Downloading to: " + outputFile.getAbsolutePath()); - try { - downloadFileFromURL(url, outputFile); - System.out.println("Done"); - System.exit(0); - } catch (Throwable e) { - System.out.println("- Error downloading"); - e.printStackTrace(); - System.exit(1); - } - } - - private static void downloadFileFromURL(String urlString, File destination) throws Exception { - if (System.getenv("MVNW_USERNAME") != null && System.getenv("MVNW_PASSWORD") != null) { - String username = System.getenv("MVNW_USERNAME"); - char[] password = System.getenv("MVNW_PASSWORD").toCharArray(); - Authenticator.setDefault(new Authenticator() { - @Override - protected PasswordAuthentication getPasswordAuthentication() { - return new PasswordAuthentication(username, password); - } - }); - } - URL website = new URL(urlString); - ReadableByteChannel rbc; - rbc = Channels.newChannel(website.openStream()); - FileOutputStream fos = new FileOutputStream(destination); - fos.getChannel().transferFrom(rbc, 0, Long.MAX_VALUE); - fos.close(); - rbc.close(); - } - -} diff --git a/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.jar b/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.jar deleted file mode 100644 index 2cc7d4a5..00000000 Binary files a/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.jar and /dev/null differ diff --git a/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.properties b/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.properties deleted file mode 100644 index ffdc10e5..00000000 --- a/bubbles/bubbles-frontend/.mvn/wrapper/maven-wrapper.properties +++ /dev/null @@ -1,2 +0,0 @@ -distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.1/apache-maven-3.8.1-bin.zip -wrapperUrl=https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar diff --git a/bubbles/bubbles-frontend/README.md b/bubbles/bubbles-frontend/README.md deleted file mode 100644 index f49d9ad2..00000000 --- a/bubbles/bubbles-frontend/README.md +++ /dev/null @@ -1,56 +0,0 @@ -# bubbles-frontend Project - -This project uses Quarkus, the Supersonic Subatomic Java Framework. - -If you want to learn more about Quarkus, please visit its website: https://quarkus.io/ . - -## Running the application in dev mode - -You can run your application in dev mode that enables live coding using: -```shell script -./mvnw compile quarkus:dev -``` - -> **_NOTE:_** Quarkus now ships with a Dev UI, which is available in dev mode only at http://localhost:8080/q/dev/. - -## Packaging and running the application - -The application can be packaged using: -```shell script -./mvnw package -``` -It produces the `quarkus-run.jar` file in the `target/quarkus-app/` directory. -Be aware that it’s not an _über-jar_ as the dependencies are copied into the `target/quarkus-app/lib/` directory. - -The application is now runnable using `java -jar target/quarkus-app/quarkus-run.jar`. - -If you want to build an _über-jar_, execute the following command: -```shell script -./mvnw package -Dquarkus.package.type=uber-jar -``` - -The application, packaged as an _über-jar_, is now runnable using `java -jar target/*-runner.jar`. - -## Creating a native executable - -You can create a native executable using: -```shell script -./mvnw package -Pnative -``` - -Or, if you don't have GraalVM installed, you can run the native executable build in a container using: -```shell script -./mvnw package -Pnative -Dquarkus.native.container-build=true -``` - -You can then execute your native executable with: `./target/bubbles-frontend-1.0.0-SNAPSHOT-runner` - -If you want to learn more about building native executables, please consult https://quarkus.io/guides/maven-tooling.html. - -## Provided Code - -### RESTEasy JAX-RS - -Easily start your RESTful Web Services - -[Related guide section...](https://quarkus.io/guides/getting-started#the-jax-rs-resources) diff --git a/bubbles/bubbles-frontend/mvnw b/bubbles/bubbles-frontend/mvnw deleted file mode 100755 index a16b5431..00000000 --- a/bubbles/bubbles-frontend/mvnw +++ /dev/null @@ -1,310 +0,0 @@ -#!/bin/sh -# ---------------------------------------------------------------------------- -# Licensed to the Apache Software Foundation (ASF) under one -# or more contributor license agreements. See the NOTICE file -# distributed with this work for additional information -# regarding copyright ownership. The ASF licenses this file -# to you under the Apache License, Version 2.0 (the -# "License"); you may not use this file except in compliance -# with the License. You may obtain a copy of the License at -# -# https://www.apache.org/licenses/LICENSE-2.0 -# -# Unless required by applicable law or agreed to in writing, -# software distributed under the License is distributed on an -# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -# KIND, either express or implied. See the License for the -# specific language governing permissions and limitations -# under the License. -# ---------------------------------------------------------------------------- - -# ---------------------------------------------------------------------------- -# Maven Start Up Batch script -# -# Required ENV vars: -# ------------------ -# JAVA_HOME - location of a JDK home dir -# -# Optional ENV vars -# ----------------- -# M2_HOME - location of maven2's installed home dir -# MAVEN_OPTS - parameters passed to the Java VM when running Maven -# e.g. to debug Maven itself, use -# set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -# MAVEN_SKIP_RC - flag to disable loading of mavenrc files -# ---------------------------------------------------------------------------- - -if [ -z "$MAVEN_SKIP_RC" ] ; then - - if [ -f /etc/mavenrc ] ; then - . /etc/mavenrc - fi - - if [ -f "$HOME/.mavenrc" ] ; then - . "$HOME/.mavenrc" - fi - -fi - -# OS specific support. $var _must_ be set to either true or false. -cygwin=false; -darwin=false; -mingw=false -case "`uname`" in - CYGWIN*) cygwin=true ;; - MINGW*) mingw=true;; - Darwin*) darwin=true - # Use /usr/libexec/java_home if available, otherwise fall back to /Library/Java/Home - # See https://developer.apple.com/library/mac/qa/qa1170/_index.html - if [ -z "$JAVA_HOME" ]; then - if [ -x "/usr/libexec/java_home" ]; then - export JAVA_HOME="`/usr/libexec/java_home`" - else - export JAVA_HOME="/Library/Java/Home" - fi - fi - ;; -esac - -if [ -z "$JAVA_HOME" ] ; then - if [ -r /etc/gentoo-release ] ; then - JAVA_HOME=`java-config --jre-home` - fi -fi - -if [ -z "$M2_HOME" ] ; then - ## resolve links - $0 may be a link to maven's home - PRG="$0" - - # need this for relative symlinks - while [ -h "$PRG" ] ; do - ls=`ls -ld "$PRG"` - link=`expr "$ls" : '.*-> \(.*\)$'` - if expr "$link" : '/.*' > /dev/null; then - PRG="$link" - else - PRG="`dirname "$PRG"`/$link" - fi - done - - saveddir=`pwd` - - M2_HOME=`dirname "$PRG"`/.. - - # make it fully qualified - M2_HOME=`cd "$M2_HOME" && pwd` - - cd "$saveddir" - # echo Using m2 at $M2_HOME -fi - -# For Cygwin, ensure paths are in UNIX format before anything is touched -if $cygwin ; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --unix "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --unix "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --unix "$CLASSPATH"` -fi - -# For Mingw, ensure paths are in UNIX format before anything is touched -if $mingw ; then - [ -n "$M2_HOME" ] && - M2_HOME="`(cd "$M2_HOME"; pwd)`" - [ -n "$JAVA_HOME" ] && - JAVA_HOME="`(cd "$JAVA_HOME"; pwd)`" -fi - -if [ -z "$JAVA_HOME" ]; then - javaExecutable="`which javac`" - if [ -n "$javaExecutable" ] && ! [ "`expr \"$javaExecutable\" : '\([^ ]*\)'`" = "no" ]; then - # readlink(1) is not available as standard on Solaris 10. - readLink=`which readlink` - if [ ! `expr "$readLink" : '\([^ ]*\)'` = "no" ]; then - if $darwin ; then - javaHome="`dirname \"$javaExecutable\"`" - javaExecutable="`cd \"$javaHome\" && pwd -P`/javac" - else - javaExecutable="`readlink -f \"$javaExecutable\"`" - fi - javaHome="`dirname \"$javaExecutable\"`" - javaHome=`expr "$javaHome" : '\(.*\)/bin'` - JAVA_HOME="$javaHome" - export JAVA_HOME - fi - fi -fi - -if [ -z "$JAVACMD" ] ; then - if [ -n "$JAVA_HOME" ] ; then - if [ -x "$JAVA_HOME/jre/sh/java" ] ; then - # IBM's JDK on AIX uses strange locations for the executables - JAVACMD="$JAVA_HOME/jre/sh/java" - else - JAVACMD="$JAVA_HOME/bin/java" - fi - else - JAVACMD="`which java`" - fi -fi - -if [ ! -x "$JAVACMD" ] ; then - echo "Error: JAVA_HOME is not defined correctly." >&2 - echo " We cannot execute $JAVACMD" >&2 - exit 1 -fi - -if [ -z "$JAVA_HOME" ] ; then - echo "Warning: JAVA_HOME environment variable is not set." -fi - -CLASSWORLDS_LAUNCHER=org.codehaus.plexus.classworlds.launcher.Launcher - -# traverses directory structure from process work directory to filesystem root -# first directory with .mvn subdirectory is considered project base directory -find_maven_basedir() { - - if [ -z "$1" ] - then - echo "Path not specified to find_maven_basedir" - return 1 - fi - - basedir="$1" - wdir="$1" - while [ "$wdir" != '/' ] ; do - if [ -d "$wdir"/.mvn ] ; then - basedir=$wdir - break - fi - # workaround for JBEAP-8937 (on Solaris 10/Sparc) - if [ -d "${wdir}" ]; then - wdir=`cd "$wdir/.."; pwd` - fi - # end of workaround - done - echo "${basedir}" -} - -# concatenates all lines of a file -concat_lines() { - if [ -f "$1" ]; then - echo "$(tr -s '\n' ' ' < "$1")" - fi -} - -BASE_DIR=`find_maven_basedir "$(pwd)"` -if [ -z "$BASE_DIR" ]; then - exit 1; -fi - -########################################################################################## -# Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -# This allows using the maven wrapper in projects that prohibit checking in binary data. -########################################################################################## -if [ -r "$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found .mvn/wrapper/maven-wrapper.jar" - fi -else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Couldn't find .mvn/wrapper/maven-wrapper.jar, downloading it ..." - fi - if [ -n "$MVNW_REPOURL" ]; then - jarUrl="$MVNW_REPOURL/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - else - jarUrl="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - fi - while IFS="=" read key value; do - case "$key" in (wrapperUrl) jarUrl="$value"; break ;; - esac - done < "$BASE_DIR/.mvn/wrapper/maven-wrapper.properties" - if [ "$MVNW_VERBOSE" = true ]; then - echo "Downloading from: $jarUrl" - fi - wrapperJarPath="$BASE_DIR/.mvn/wrapper/maven-wrapper.jar" - if $cygwin; then - wrapperJarPath=`cygpath --path --windows "$wrapperJarPath"` - fi - - if command -v wget > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found wget ... using wget" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - wget "$jarUrl" -O "$wrapperJarPath" - else - wget --http-user=$MVNW_USERNAME --http-password=$MVNW_PASSWORD "$jarUrl" -O "$wrapperJarPath" - fi - elif command -v curl > /dev/null; then - if [ "$MVNW_VERBOSE" = true ]; then - echo "Found curl ... using curl" - fi - if [ -z "$MVNW_USERNAME" ] || [ -z "$MVNW_PASSWORD" ]; then - curl -o "$wrapperJarPath" "$jarUrl" -f - else - curl --user $MVNW_USERNAME:$MVNW_PASSWORD -o "$wrapperJarPath" "$jarUrl" -f - fi - - else - if [ "$MVNW_VERBOSE" = true ]; then - echo "Falling back to using Java to download" - fi - javaClass="$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.java" - # For Cygwin, switch paths to Windows format before running javac - if $cygwin; then - javaClass=`cygpath --path --windows "$javaClass"` - fi - if [ -e "$javaClass" ]; then - if [ ! -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Compiling MavenWrapperDownloader.java ..." - fi - # Compiling the Java class - ("$JAVA_HOME/bin/javac" "$javaClass") - fi - if [ -e "$BASE_DIR/.mvn/wrapper/MavenWrapperDownloader.class" ]; then - # Running the downloader - if [ "$MVNW_VERBOSE" = true ]; then - echo " - Running MavenWrapperDownloader.java ..." - fi - ("$JAVA_HOME/bin/java" -cp .mvn/wrapper MavenWrapperDownloader "$MAVEN_PROJECTBASEDIR") - fi - fi - fi -fi -########################################################################################## -# End of extension -########################################################################################## - -export MAVEN_PROJECTBASEDIR=${MAVEN_BASEDIR:-"$BASE_DIR"} -if [ "$MVNW_VERBOSE" = true ]; then - echo $MAVEN_PROJECTBASEDIR -fi -MAVEN_OPTS="$(concat_lines "$MAVEN_PROJECTBASEDIR/.mvn/jvm.config") $MAVEN_OPTS" - -# For Cygwin, switch paths to Windows format before running java -if $cygwin; then - [ -n "$M2_HOME" ] && - M2_HOME=`cygpath --path --windows "$M2_HOME"` - [ -n "$JAVA_HOME" ] && - JAVA_HOME=`cygpath --path --windows "$JAVA_HOME"` - [ -n "$CLASSPATH" ] && - CLASSPATH=`cygpath --path --windows "$CLASSPATH"` - [ -n "$MAVEN_PROJECTBASEDIR" ] && - MAVEN_PROJECTBASEDIR=`cygpath --path --windows "$MAVEN_PROJECTBASEDIR"` -fi - -# Provide a "standardized" way to retrieve the CLI args that will -# work with both Windows and non-Windows executions. -MAVEN_CMD_LINE_ARGS="$MAVEN_CONFIG $@" -export MAVEN_CMD_LINE_ARGS - -WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -exec "$JAVACMD" \ - $MAVEN_OPTS \ - -classpath "$MAVEN_PROJECTBASEDIR/.mvn/wrapper/maven-wrapper.jar" \ - "-Dmaven.home=${M2_HOME}" "-Dmaven.multiModuleProjectDirectory=${MAVEN_PROJECTBASEDIR}" \ - ${WRAPPER_LAUNCHER} $MAVEN_CONFIG "$@" diff --git a/bubbles/bubbles-frontend/mvnw.cmd b/bubbles/bubbles-frontend/mvnw.cmd deleted file mode 100755 index c8d43372..00000000 --- a/bubbles/bubbles-frontend/mvnw.cmd +++ /dev/null @@ -1,182 +0,0 @@ -@REM ---------------------------------------------------------------------------- -@REM Licensed to the Apache Software Foundation (ASF) under one -@REM or more contributor license agreements. See the NOTICE file -@REM distributed with this work for additional information -@REM regarding copyright ownership. The ASF licenses this file -@REM to you under the Apache License, Version 2.0 (the -@REM "License"); you may not use this file except in compliance -@REM with the License. You may obtain a copy of the License at -@REM -@REM https://www.apache.org/licenses/LICENSE-2.0 -@REM -@REM Unless required by applicable law or agreed to in writing, -@REM software distributed under the License is distributed on an -@REM "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY -@REM KIND, either express or implied. See the License for the -@REM specific language governing permissions and limitations -@REM under the License. -@REM ---------------------------------------------------------------------------- - -@REM ---------------------------------------------------------------------------- -@REM Maven Start Up Batch script -@REM -@REM Required ENV vars: -@REM JAVA_HOME - location of a JDK home dir -@REM -@REM Optional ENV vars -@REM M2_HOME - location of maven2's installed home dir -@REM MAVEN_BATCH_ECHO - set to 'on' to enable the echoing of the batch commands -@REM MAVEN_BATCH_PAUSE - set to 'on' to wait for a keystroke before ending -@REM MAVEN_OPTS - parameters passed to the Java VM when running Maven -@REM e.g. to debug Maven itself, use -@REM set MAVEN_OPTS=-Xdebug -Xrunjdwp:transport=dt_socket,server=y,suspend=y,address=8000 -@REM MAVEN_SKIP_RC - flag to disable loading of mavenrc files -@REM ---------------------------------------------------------------------------- - -@REM Begin all REM lines with '@' in case MAVEN_BATCH_ECHO is 'on' -@echo off -@REM set title of command window -title %0 -@REM enable echoing by setting MAVEN_BATCH_ECHO to 'on' -@if "%MAVEN_BATCH_ECHO%" == "on" echo %MAVEN_BATCH_ECHO% - -@REM set %HOME% to equivalent of $HOME -if "%HOME%" == "" (set "HOME=%HOMEDRIVE%%HOMEPATH%") - -@REM Execute a user defined script before this one -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPre -@REM check for pre script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_pre.bat" call "%HOME%\mavenrc_pre.bat" -if exist "%HOME%\mavenrc_pre.cmd" call "%HOME%\mavenrc_pre.cmd" -:skipRcPre - -@setlocal - -set ERROR_CODE=0 - -@REM To isolate internal variables from possible post scripts, we use another setlocal -@setlocal - -@REM ==== START VALIDATION ==== -if not "%JAVA_HOME%" == "" goto OkJHome - -echo. -echo Error: JAVA_HOME not found in your environment. >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -:OkJHome -if exist "%JAVA_HOME%\bin\java.exe" goto init - -echo. -echo Error: JAVA_HOME is set to an invalid directory. >&2 -echo JAVA_HOME = "%JAVA_HOME%" >&2 -echo Please set the JAVA_HOME variable in your environment to match the >&2 -echo location of your Java installation. >&2 -echo. -goto error - -@REM ==== END VALIDATION ==== - -:init - -@REM Find the project base dir, i.e. the directory that contains the folder ".mvn". -@REM Fallback to current working directory if not found. - -set MAVEN_PROJECTBASEDIR=%MAVEN_BASEDIR% -IF NOT "%MAVEN_PROJECTBASEDIR%"=="" goto endDetectBaseDir - -set EXEC_DIR=%CD% -set WDIR=%EXEC_DIR% -:findBaseDir -IF EXIST "%WDIR%"\.mvn goto baseDirFound -cd .. -IF "%WDIR%"=="%CD%" goto baseDirNotFound -set WDIR=%CD% -goto findBaseDir - -:baseDirFound -set MAVEN_PROJECTBASEDIR=%WDIR% -cd "%EXEC_DIR%" -goto endDetectBaseDir - -:baseDirNotFound -set MAVEN_PROJECTBASEDIR=%EXEC_DIR% -cd "%EXEC_DIR%" - -:endDetectBaseDir - -IF NOT EXIST "%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config" goto endReadAdditionalConfig - -@setlocal EnableExtensions EnableDelayedExpansion -for /F "usebackq delims=" %%a in ("%MAVEN_PROJECTBASEDIR%\.mvn\jvm.config") do set JVM_CONFIG_MAVEN_PROPS=!JVM_CONFIG_MAVEN_PROPS! %%a -@endlocal & set JVM_CONFIG_MAVEN_PROPS=%JVM_CONFIG_MAVEN_PROPS% - -:endReadAdditionalConfig - -SET MAVEN_JAVA_EXE="%JAVA_HOME%\bin\java.exe" -set WRAPPER_JAR="%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.jar" -set WRAPPER_LAUNCHER=org.apache.maven.wrapper.MavenWrapperMain - -set DOWNLOAD_URL="https://repo.maven.apache.org/maven2/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - -FOR /F "tokens=1,2 delims==" %%A IN ("%MAVEN_PROJECTBASEDIR%\.mvn\wrapper\maven-wrapper.properties") DO ( - IF "%%A"=="wrapperUrl" SET DOWNLOAD_URL=%%B -) - -@REM Extension to allow automatically downloading the maven-wrapper.jar from Maven-central -@REM This allows using the maven wrapper in projects that prohibit checking in binary data. -if exist %WRAPPER_JAR% ( - if "%MVNW_VERBOSE%" == "true" ( - echo Found %WRAPPER_JAR% - ) -) else ( - if not "%MVNW_REPOURL%" == "" ( - SET DOWNLOAD_URL="%MVNW_REPOURL%/io/takari/maven-wrapper/0.5.6/maven-wrapper-0.5.6.jar" - ) - if "%MVNW_VERBOSE%" == "true" ( - echo Couldn't find %WRAPPER_JAR%, downloading it ... - echo Downloading from: %DOWNLOAD_URL% - ) - - powershell -Command "&{"^ - "$webclient = new-object System.Net.WebClient;"^ - "if (-not ([string]::IsNullOrEmpty('%MVNW_USERNAME%') -and [string]::IsNullOrEmpty('%MVNW_PASSWORD%'))) {"^ - "$webclient.Credentials = new-object System.Net.NetworkCredential('%MVNW_USERNAME%', '%MVNW_PASSWORD%');"^ - "}"^ - "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; $webclient.DownloadFile('%DOWNLOAD_URL%', '%WRAPPER_JAR%')"^ - "}" - if "%MVNW_VERBOSE%" == "true" ( - echo Finished downloading %WRAPPER_JAR% - ) -) -@REM End of extension - -@REM Provide a "standardized" way to retrieve the CLI args that will -@REM work with both Windows and non-Windows executions. -set MAVEN_CMD_LINE_ARGS=%* - -%MAVEN_JAVA_EXE% %JVM_CONFIG_MAVEN_PROPS% %MAVEN_OPTS% %MAVEN_DEBUG_OPTS% -classpath %WRAPPER_JAR% "-Dmaven.multiModuleProjectDirectory=%MAVEN_PROJECTBASEDIR%" %WRAPPER_LAUNCHER% %MAVEN_CONFIG% %* -if ERRORLEVEL 1 goto error -goto end - -:error -set ERROR_CODE=1 - -:end -@endlocal & set ERROR_CODE=%ERROR_CODE% - -if not "%MAVEN_SKIP_RC%" == "" goto skipRcPost -@REM check for post script, once with legacy .bat ending and once with .cmd ending -if exist "%HOME%\mavenrc_post.bat" call "%HOME%\mavenrc_post.bat" -if exist "%HOME%\mavenrc_post.cmd" call "%HOME%\mavenrc_post.cmd" -:skipRcPost - -@REM pause the script if MAVEN_BATCH_PAUSE is set to 'on' -if "%MAVEN_BATCH_PAUSE%" == "on" pause - -if "%MAVEN_TERMINATE_CMD%" == "on" exit %ERROR_CODE% - -exit /B %ERROR_CODE% diff --git a/bubbles/bubbles-frontend/pom.xml b/bubbles/bubbles-frontend/pom.xml deleted file mode 100644 index 8fd14ab0..00000000 --- a/bubbles/bubbles-frontend/pom.xml +++ /dev/null @@ -1,143 +0,0 @@ - - - 4.0.0 - org.acme - bubbles-frontend - 1.0.0-SNAPSHOT - - 3.8.1 - true - 11 - 11 - UTF-8 - UTF-8 - quarkus-bom - io.quarkus.platform - 2.4.1.Final - 3.0.0-M5 - - - - - ${quarkus.platform.group-id} - ${quarkus.platform.artifact-id} - ${quarkus.platform.version} - pom - import - - - - - - io.quarkus - quarkus-kubernetes - - - io.quarkus - quarkus-container-image-jib - - - io.quarkus - quarkus-arc - - - io.quarkus - quarkus-resteasy - - - io.quarkus - quarkus-rest-client - - - io.quarkus - quarkus-resteasy-jsonb - - - io.quarkus - quarkus-smallrye-fault-tolerance - - - io.quarkus - quarkus-junit5 - test - - - io.rest-assured - rest-assured - test - - - - - - ${quarkus.platform.group-id} - quarkus-maven-plugin - ${quarkus.platform.version} - true - - - - build - generate-code - generate-code-tests - - - - - - maven-compiler-plugin - ${compiler-plugin.version} - - ${maven.compiler.parameters} - - - - maven-surefire-plugin - ${surefire-plugin.version} - - - org.jboss.logmanager.LogManager - ${maven.home} - - - - - - - - native - - - native - - - - - - maven-failsafe-plugin - ${surefire-plugin.version} - - - - integration-test - verify - - - - ${project.build.directory}/${project.build.finalName}-runner - org.jboss.logmanager.LogManager - ${maven.home} - - - - - - - - - native - - - - diff --git a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.jvm b/bubbles/bubbles-frontend/src/main/docker/Dockerfile.jvm deleted file mode 100644 index 698072f5..00000000 --- a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.jvm +++ /dev/null @@ -1,55 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode -# -# Before building the container image run: -# -# ./mvnw package -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.jvm -t quarkus/bubbles-frontend-jvm . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-frontend-jvm -# -# If you want to include the debug port into your docker image -# you will have to expose the debug port (default 5005) like this : EXPOSE 8080 5005 -# -# Then run the container using : -# -# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/bubbles-frontend-jvm -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 - -ARG JAVA_PACKAGE=java-11-openjdk-headless -ARG RUN_JAVA_VERSION=1.3.8 -ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' -# Install java and the run-java script -# Also set up permissions for user `1001` -RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ - && microdnf update \ - && microdnf clean all \ - && mkdir /deployments \ - && chown 1001 /deployments \ - && chmod "g+rwX" /deployments \ - && chown 1001:root /deployments \ - && curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \ - && chown 1001 /deployments/run-java.sh \ - && chmod 540 /deployments/run-java.sh \ - && echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/conf/security/java.security - -# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. -ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -# We make four distinct layers so if there are application changes the library layers can be re-used -COPY --chown=1001 target/quarkus-app/lib/ /deployments/lib/ -COPY --chown=1001 target/quarkus-app/*.jar /deployments/ -COPY --chown=1001 target/quarkus-app/app/ /deployments/app/ -COPY --chown=1001 target/quarkus-app/quarkus/ /deployments/quarkus/ - -EXPOSE 8080 -USER 1001 - -ENTRYPOINT [ "/deployments/run-java.sh" ] - diff --git a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.legacy-jar b/bubbles/bubbles-frontend/src/main/docker/Dockerfile.legacy-jar deleted file mode 100644 index b34daf0e..00000000 --- a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.legacy-jar +++ /dev/null @@ -1,51 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in JVM mode -# -# Before building the container image run: -# -# ./mvnw package -Dquarkus.package.type=legacy-jar -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.legacy-jar -t quarkus/bubbles-frontend-legacy-jar . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-frontend-legacy-jar -# -# If you want to include the debug port into your docker image -# you will have to expose the debug port (default 5005) like this : EXPOSE 8080 5005 -# -# Then run the container using : -# -# docker run -i --rm -p 8080:8080 -p 5005:5005 -e JAVA_ENABLE_DEBUG="true" quarkus/bubbles-frontend-legacy-jar -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 - -ARG JAVA_PACKAGE=java-11-openjdk-headless -ARG RUN_JAVA_VERSION=1.3.8 -ENV LANG='en_US.UTF-8' LANGUAGE='en_US:en' -# Install java and the run-java script -# Also set up permissions for user `1001` -RUN microdnf install curl ca-certificates ${JAVA_PACKAGE} \ - && microdnf update \ - && microdnf clean all \ - && mkdir /deployments \ - && chown 1001 /deployments \ - && chmod "g+rwX" /deployments \ - && chown 1001:root /deployments \ - && curl https://repo1.maven.org/maven2/io/fabric8/run-java-sh/${RUN_JAVA_VERSION}/run-java-sh-${RUN_JAVA_VERSION}-sh.sh -o /deployments/run-java.sh \ - && chown 1001 /deployments/run-java.sh \ - && chmod 540 /deployments/run-java.sh \ - && echo "securerandom.source=file:/dev/urandom" >> /etc/alternatives/jre/conf/security/java.security - -# Configure the JAVA_OPTIONS, you can add -XshowSettings:vm to also display the heap size. -ENV JAVA_OPTIONS="-Dquarkus.http.host=0.0.0.0 -Djava.util.logging.manager=org.jboss.logmanager.LogManager" -COPY target/lib/* /deployments/lib/ -COPY target/*-runner.jar /deployments/app.jar - -EXPOSE 8080 -USER 1001 - -ENTRYPOINT [ "/deployments/run-java.sh" ] diff --git a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native b/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native deleted file mode 100644 index 79ec1cdc..00000000 --- a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native +++ /dev/null @@ -1,27 +0,0 @@ -#### -# This Dockerfile is used in order to build a container that runs the Quarkus application in native (no JVM) mode -# -# Before building the container image run: -# -# ./mvnw package -Pnative -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.native -t quarkus/bubbles-frontend . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-frontend -# -### -FROM registry.access.redhat.com/ubi8/ubi-minimal:8.4 -WORKDIR /work/ -RUN chown 1001 /work \ - && chmod "g+rwX" /work \ - && chown 1001:root /work -COPY --chown=1001:root target/*-runner /work/application - -EXPOSE 8080 -USER 1001 - -CMD ["./application", "-Dquarkus.http.host=0.0.0.0"] diff --git a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native-distroless b/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native-distroless deleted file mode 100644 index f2ae73f0..00000000 --- a/bubbles/bubbles-frontend/src/main/docker/Dockerfile.native-distroless +++ /dev/null @@ -1,23 +0,0 @@ -#### -# This Dockerfile is used in order to build a distroless container that runs the Quarkus application in native (no JVM) mode -# -# Before building the container image run: -# -# ./mvnw package -Pnative -# -# Then, build the image with: -# -# docker build -f src/main/docker/Dockerfile.native-distroless -t quarkus/bubbles-frontend . -# -# Then run the container using: -# -# docker run -i --rm -p 8080:8080 quarkus/bubbles-frontend -# -### -FROM quay.io/quarkus/quarkus-distroless-image:1.0 -COPY target/*-runner /application - -EXPOSE 8080 -USER nonroot - -CMD ["./application", "-Dquarkus.http.host=0.0.0.0"] diff --git a/bubbles/bubbles-frontend/src/main/istio/Gateway.yaml b/bubbles/bubbles-frontend/src/main/istio/Gateway.yaml deleted file mode 100644 index ca78ba6c..00000000 --- a/bubbles/bubbles-frontend/src/main/istio/Gateway.yaml +++ /dev/null @@ -1,35 +0,0 @@ -apiVersion: networking.istio.io/v1alpha3 -kind: Gateway -metadata: - name: bubble-gateway -spec: - selector: - istio: ingressgateway # use istio default controller - servers: - - port: - number: 80 - name: http - protocol: HTTP - hosts: - - "*" ---- -apiVersion: networking.istio.io/v1alpha3 -kind: VirtualService -metadata: - name: bubble-gateway -spec: - hosts: - - "*" - gateways: - - bubble-gateway - http: - - match: - - uri: - prefix: /bubble - rewrite: - uri: / - route: - - destination: - host: bubble-frontend - port: - number: 8080 \ No newline at end of file diff --git a/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleResource.java b/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleResource.java deleted file mode 100644 index 22043f7f..00000000 --- a/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleResource.java +++ /dev/null @@ -1,35 +0,0 @@ -package org.acme; - -import java.net.UnknownHostException; -import java.util.Map; - -import javax.inject.Inject; -import javax.json.JsonObject; -import javax.ws.rs.GET; -import javax.ws.rs.Path; - -import org.eclipse.microprofile.rest.client.inject.RestClient; - -@Path("/bubble") -public class BubbleResource { - - @RestClient - BubbleService bubbleService; - - @Inject - Statistics statistics; - - @GET - public JsonObject bubble() throws UnknownHostException { - final JsonObject bubble = bubbleService.bubble(); - statistics.add(bubble); - return bubble; - } - - @GET - @Path("/statistics") - public Statistics statistics() { - return statistics; - } - -} \ No newline at end of file diff --git a/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleService.java b/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleService.java deleted file mode 100644 index 3b3c9c7a..00000000 --- a/bubbles/bubbles-frontend/src/main/java/org/acme/BubbleService.java +++ /dev/null @@ -1,20 +0,0 @@ -package org.acme; - -import java.io.InputStream; - -import javax.json.JsonObject; -import javax.ws.rs.GET; -import javax.ws.rs.Path; -import javax.ws.rs.Produces; -import javax.ws.rs.core.MediaType; - -import org.eclipse.microprofile.faulttolerance.Fallback; -import org.eclipse.microprofile.rest.client.inject.RegisterRestClient; - -@Path("/bubble") -@RegisterRestClient -public interface BubbleService { - @GET - @Produces(MediaType.APPLICATION_JSON) - JsonObject bubble(); -} diff --git a/bubbles/bubbles-frontend/src/main/java/org/acme/Statistics.java b/bubbles/bubbles-frontend/src/main/java/org/acme/Statistics.java deleted file mode 100644 index a79485ac..00000000 --- a/bubbles/bubbles-frontend/src/main/java/org/acme/Statistics.java +++ /dev/null @@ -1,34 +0,0 @@ -package org.acme; - -import java.util.ArrayList; -import java.util.HashSet; -import java.util.List; -import java.util.Map; -import java.util.Set; -import java.util.concurrent.ConcurrentHashMap; - -import javax.enterprise.context.ApplicationScoped; -import javax.json.JsonObject; - -@ApplicationScoped -public class Statistics { - - final private Set hosts = new HashSet<>(); - final private Map requests = new ConcurrentHashMap<>(); - - public void add(JsonObject object) { - hosts.add(object.getString("hostname")); - requests.put(object.getString("hostname"), - object.getJsonNumber("requests").longValue() - ); - } - - public Map getRequests() { - return requests; - } - - public Set getHosts() { - return hosts; - } - -} diff --git a/bubbles/bubbles-frontend/src/main/kubernetes/Deployment.yaml b/bubbles/bubbles-frontend/src/main/kubernetes/Deployment.yaml deleted file mode 100644 index 3ea93232..00000000 --- a/bubbles/bubbles-frontend/src/main/kubernetes/Deployment.yaml +++ /dev/null @@ -1,54 +0,0 @@ ---- -apiVersion: "v1" -kind: "ServiceAccount" -metadata: - name: "bubblefrontend" ---- -apiVersion: apps/v1 -kind: Deployment -metadata: - labels: - app: bubblefrontend - version: v1 - name: bubblefrontend -spec: - replicas: 1 - selector: - matchLabels: - app: bubblefrontend - version: v1 - template: - metadata: - labels: - app: bubblefrontend - version: v1 - annotations: - sidecar.istio.io/inject: "true" - spec: - containers: - - env: - - name: JAVA_OPTIONS - value: -Xms15m -Xmx15m -Xmn15m - name: bubblefrontend - image: quay.io/rhdevelopers/bubble-frontend:v1.0 - imagePullPolicy: Always - ports: - - containerPort: 8080 - name: http - protocol: TCP - - containerPort: 8778 - name: jolokia - protocol: TCP - - containerPort: 9779 - name: prometheus - protocol: TCP - resources: - requests: - memory: "20Mi" - cpu: "200m" # 1/5 core - limits: - memory: "40Mi" - cpu: "500m" - securityContext: - privileged: false - serviceAccount: "bubblefrontend" \ No newline at end of file diff --git a/bubbles/bubbles-frontend/src/main/kubernetes/Service.yaml b/bubbles/bubbles-frontend/src/main/kubernetes/Service.yaml deleted file mode 100644 index f7d16cdd..00000000 --- a/bubbles/bubbles-frontend/src/main/kubernetes/Service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: bubble-frontend - labels: - app: bubblefrontend -spec: - ports: - - name: http - port: 8080 - selector: - app: bubblefrontend diff --git a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/index.html b/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/index.html deleted file mode 100644 index 91f373b4..00000000 --- a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/index.html +++ /dev/null @@ -1,23 +0,0 @@ - - - - - CodePen - bubble animation - - - - -
-
-
- .. - - - -
-
- - - - - diff --git a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/script.js b/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/script.js deleted file mode 100644 index d5bb6cb4..00000000 --- a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/script.js +++ /dev/null @@ -1,112 +0,0 @@ -const root = document.querySelector("#app"); -const stats = document.querySelector("#statistics"); - -let { innerHeight, innerWidth } = window; -console.log(innerHeight, innerWidth); -if (innerHeight < 300) { - innerHeight = 350; -} -if (innerWidth < 300) { - innerWidth = 750; -} - -class Bubble { - constructor(color) { - this.bubbleSpan = undefined; - this.handleNewBubble(); - this.color = color - - this.posY = this.randomNumber(innerHeight - 20, 20); - this.posX = this.randomNumber(innerWidth - 20, 20); - - this.bubbleSpan.style.top = this.posY + "px"; - this.bubbleSpan.style.left = this.posX + "px"; - - // setting height and width of the bubble - this.height = this.randomNumber(60, 20); - this.width = this.height; - - this.bubbleEnd.call(this.bubbleSpan, this.randomNumber(6000, 3000)); - } - - // creates and appends a new bubble in the DOM - handleNewBubble() { - this.bubbleSpan = document.createElement("span"); - this.bubbleSpan.classList.add("bubble"); - root.append(this.bubbleSpan); - this.handlePosition(); - this.bubbleSpan.addEventListener("click", this.bubbleEnd); - } - - handlePosition() { - // positioning the bubble in different random X and Y - const randomY = this.randomNumber(60, -60); - const randomX = this.randomNumber(60, -60); - - this.bubbleSpan.style.backgroundColor = this.color; - this.bubbleSpan.style.height = this.height + "px"; - this.bubbleSpan.style.width = this.height + "px"; - - this.posY = this.randomNumber(innerHeight - 20, 20); - this.posX = this.randomNumber(innerWidth - 20, 20); - - this.bubbleSpan.style.top = this.posY + "px"; - this.bubbleSpan.style.left = this.posX + "px"; - - const randomSec = this.randomNumber(4000, 200); - setTimeout(this.handlePosition.bind(this), randomSec); // calling for re-position of bubble - } - - randomNumber(max, min) { - return Math.floor(Math.random() * (max - min + 1) + min); - } - - bubbleEnd(removingTime = 0) { - setTimeout( - () => { - requestAnimationFrame(() => this.classList.add("bubble--bust")); - }, - removingTime = 5000 - ); - - setTimeout(() => { - requestAnimationFrame(() => this.remove()); - requestAnimationFrame(() => new Bubble()); - }, removingTime); - } -} - -// change to /bubble to dev mode -// creating many bubble instance -setInterval(function () { - requestAnimationFrame(() => { - fetch('/bubble/bubble') - .then(response => response.json()) - .then(data => new Bubble(data.color)) - }); -}, 400); - -function createTable(statistics) { - stats.innerHTML=''; - let fLen = statistics.length; - for (let i = 0; i < fLen; i++) { - let row = document.createElement('td'); - row.innerHTML = statistics[i]; - stats.appendChild(row) - } -} - -setInterval(function () { - fetch("/bubble/bubble/statistics") - .then(response => response.json()) - .then(data => { - let hosts = data.hosts - const statistics = [] - for (let hostId in hosts) { - let host = hosts[hostId] - let counter = data.requests[host] - statistics.push(host + " : " + counter + "|") - } - createTable(statistics) - }) -}, 400) \ No newline at end of file diff --git a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/style.css b/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/style.css deleted file mode 100644 index e09a63f4..00000000 --- a/bubbles/bubbles-frontend/src/main/resources/META-INF/resources/style.css +++ /dev/null @@ -1,29 +0,0 @@ -*, -*:before, -*:after { - margin: 0; - padding: 0; - box-sizing: border-box; -} - -body { - background: black; - overflow: hidden; -} - -.bubble { - position: absolute; - top: 0; - left: 0; - border-radius: 50%; - cursor: pointer; - transition: linear 2s, transform 0.2s; -} - -.bubble:hover { - transform: scale(1.7); -} - -.bubble--bust { - transform: scale(1.8); -} \ No newline at end of file diff --git a/bubbles/bubbles-frontend/src/main/resources/application.properties b/bubbles/bubbles-frontend/src/main/resources/application.properties deleted file mode 100644 index 9622ec44..00000000 --- a/bubbles/bubbles-frontend/src/main/resources/application.properties +++ /dev/null @@ -1,9 +0,0 @@ -%dev.quarkus.http.port=9090 - -quarkus.container-image.group=rhdevelopers -quarkus.container-image.registry=quay.io -quarkus.container-image.tag=v1.0 -quarkus.container-image.name=bubble-frontend - -org.acme.BubbleService/mp-rest/url=http://bubble-backend:8080 -%dev.org.acme.BubbleService/mp-rest/url=http://localhost:8080 \ No newline at end of file diff --git a/bubbles/scripts/argorollout/clean.sh b/bubbles/scripts/argorollout/clean.sh deleted file mode 100755 index 4001de98..00000000 --- a/bubbles/scripts/argorollout/clean.sh +++ /dev/null @@ -1,17 +0,0 @@ -#!/bin/bash - -kubectl delete -f ../../bubbles-backend/src/main/argorollouts/rollout.yaml - -kubectl delete -f ../../bubbles-backend/src/main/argorollouts/Service.yaml -kubectl delete -f ../../bubbles-backend/src/main/argorollouts/Service-canary.yaml -kubectl delete -f ../../bubbles-backend/src/main/argorollouts/virtual-service-bubble-backend-v1_and_v2_100_0.yaml - - -kubectl delete -f ../../bubbles-frontend/src/main/istio/Gateway.yaml - -kubectl delete -f ../../bubbles-frontend/src/main/kubernetes/Deployment.yaml -kubectl delete -f ../../bubbles-frontend/src/main/kubernetes/Service.yaml - - - - diff --git a/bubbles/scripts/argorollout/deploy.sh b/bubbles/scripts/argorollout/deploy.sh deleted file mode 100755 index 9bd8d1de..00000000 --- a/bubbles/scripts/argorollout/deploy.sh +++ /dev/null @@ -1,22 +0,0 @@ -#!/bin/bash - -echo "###### Deploying FrontEnd ######" - -kubectl apply -f ../../bubbles-frontend/src/main/kubernetes/Deployment.yaml -kubectl apply -f ../../bubbles-frontend/src/main/kubernetes/Service.yaml - -kubectl wait --for=condition=available --timeout=600s deployment/bubblefrontend - -kubectl apply -f ../../bubbles-frontend/src/main/istio/Gateway.yaml - -echo "###### Deploying BackEnd V1 ######" - -kubectl apply -f ../../bubbles-backend/src/main/argorollouts/Service.yaml -kubectl apply -f ../../bubbles-backend/src/main/argorollouts/Service-canary.yaml -kubectl apply -f ../../bubbles-backend/src/main/argorollouts/virtual-service-bubble-backend-v1_and_v2_100_0.yaml - -kubectl apply -f ../../bubbles-backend/src/main/argorollouts/rollout.yaml - -kubectl get routes -n istio-system - -echo "/bubble/index.html" \ No newline at end of file diff --git a/bubbles/scripts/argorollout/install_rollout.sh b/bubbles/scripts/argorollout/install_rollout.sh deleted file mode 100755 index 9b6a1487..00000000 --- a/bubbles/scripts/argorollout/install_rollout.sh +++ /dev/null @@ -1,4 +0,0 @@ -#!/bin/bash - -kubectl create namespace argo-rollouts -kubectl apply -n argo-rollouts -f https://github.com/argoproj/argo-rollouts/releases/download/v1.1.0/install.yaml diff --git a/bubbles/scripts/argorollout/rolling-to-v2.sh b/bubbles/scripts/argorollout/rolling-to-v2.sh deleted file mode 100755 index 0f44e8c4..00000000 --- a/bubbles/scripts/argorollout/rolling-to-v2.sh +++ /dev/null @@ -1,3 +0,0 @@ -#!/bin/bash - -kubectl apply -f ../../bubbles-backend/src/main/argorollouts/rollout-v2.yaml \ No newline at end of file diff --git a/bubbles/scripts/istio/clean.sh b/bubbles/scripts/istio/clean.sh deleted file mode 100755 index cdde8b6c..00000000 --- a/bubbles/scripts/istio/clean.sh +++ /dev/null @@ -1,13 +0,0 @@ -#!/bin/bash - -kubectl delete -f ../../bubbles-backend/src/main/istio/destination-rule-bubble-backend-v1-v2.yaml -kubectl delete -f ../../bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_100_0.yaml - -kubectl delete -f ../../bubbles-backend/src/main/kubernetes/Deployment.yaml -kubectl delete -f ../../bubbles-backend/src/main/kubernetes/Deployment-v2.yaml -kubectl delete -f ../../bubbles-backend/src/main/kubernetes/Service.yaml - -kubectl delete -f ../../bubbles-frontend/src/main/kubernetes/Deployment.yaml -kubectl delete -f ../../bubbles-frontend/src/main/kubernetes/Service.yaml - -kubectl delete -f ../../bubbles-frontend/src/main/istio/Gateway.yaml diff --git a/bubbles/scripts/istio/deploy.sh b/bubbles/scripts/istio/deploy.sh deleted file mode 100755 index c8b941ea..00000000 --- a/bubbles/scripts/istio/deploy.sh +++ /dev/null @@ -1,28 +0,0 @@ -#!/bin/bash - -echo "###### Deploying FrontEnd ######" - -kubectl apply -f ../../bubbles-frontend/src/main/kubernetes/Deployment.yaml -kubectl apply -f ../../bubbles-frontend/src/main/kubernetes/Service.yaml - -kubectl wait --for=condition=available --timeout=600s deployment/bubblefrontend - -kubectl apply -f ../../bubbles-frontend/src/main/istio/Gateway.yaml - -echo "###### Deploying BackEnd ######" - -kubectl apply -f ../../bubbles-backend/src/main/kubernetes/Deployment.yaml -kubectl apply -f ../../bubbles-backend/src/main/kubernetes/Deployment-v2.yaml -kubectl apply -f ../../bubbles-backend/src/main/kubernetes/Service.yaml - -kubectl wait --for=condition=available --timeout=600s deployment/bubblebackend -kubectl wait --for=condition=available --timeout=600s deployment/bubblebackend-v2 - -echo "###### Redirecting Traffic to V1 ######" - -kubectl apply -f ../../bubbles-backend/src/main/istio/destination-rule-bubble-backend-v1-v2.yaml -kubectl apply -f ../../bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_100_0.yaml - -kubectl get routes -n istio-system - -echo "/bubble/index.html" \ No newline at end of file diff --git a/bubbles/scripts/istio/redirect-to-v2.sh b/bubbles/scripts/istio/redirect-to-v2.sh deleted file mode 100755 index 44f16ca8..00000000 --- a/bubbles/scripts/istio/redirect-to-v2.sh +++ /dev/null @@ -1,5 +0,0 @@ -#!/bin/bash - -echo "###### Redirecting Traffic to V2 ######" - -kubectl apply -f ../../bubbles-backend/src/main/istio/virtual-service-bubble-backend-v1_and_v2_0_100.yaml \ No newline at end of file diff --git a/documentation/modules/ROOT/pages/2deploy-microservices.adoc b/documentation/modules/ROOT/pages/2deploy-microservices.adoc index f49366aa..f5e82900 100644 --- a/documentation/modules/ROOT/pages/2deploy-microservices.adoc +++ b/documentation/modules/ROOT/pages/2deploy-microservices.adoc @@ -129,7 +129,7 @@ OpenShift:: [.console-input] [source,bash,subs="+macros,+attributes"] ---- -export GATEWAY_URL=$(kubectl get route istio-ingressgateway -n istio-system -o yaml | yq r - "spec.host") +export GATEWAY_URL=$(kubectl get route istio-ingressgateway -n istio-system -o=jsonpath="{.spec.host}") ---- -- ====