Skip to content

Commit

Permalink
Merge pull request #6 from RutvikPanchal/dev
Browse files Browse the repository at this point in the history
v1.3.0 release
  • Loading branch information
RutvikPanchal authored Jun 12, 2023
2 parents edf608e + 6d815f7 commit 38233ed
Show file tree
Hide file tree
Showing 29 changed files with 916 additions and 13 deletions.
12 changes: 12 additions & 0 deletions Apache Cassandra/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
version: '3'
services:
apache-cassandra:
image: cassandra:3.11
container_name: apache-cassandra
ports:
- '9042:9042'
networks:
- master
networks:
master:
external: true
15 changes: 15 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,18 @@
## 1.3.0
- Postgres
- Added scripts to execute sql queries when database starts up
- Added JBoss Web Server
- added a simple jdbc test java webapp
- added database config
- Added Apache Cassandra Database
- Added MariaDB Database

## 1.2.2
- RHPAM - Kie Server - Customized
- added _regenerate-jars shell script to work with Linux/MacOS
- fixed EOL errors
- fixed scripts not being executed (added chmod +x) in Linux/MacOS

## 1.2.1
- RHPAM - Kie Server - Customized
- added a script to generate jars from the included java projects
Expand Down
8 changes: 8 additions & 0 deletions JBoss Web Server/_regenerate-war.cmd
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
call cd ./mounts/tomcat-jdbc
call mvn clean package
call cd ./target
call copy "tomcat-jdbc.war" "../../"

call cd ../../
call curl -o postgresql.jar https://jdbc.postgresql.org/download/postgresql-42.6.0.jar
call curl -o mariadb.jar https://dlm.mariadb.com/2896635/Connectors/java/connector-java-2.7.9/mariadb-java-client-2.7.9.jar
9 changes: 9 additions & 0 deletions JBoss Web Server/_regenerate-war.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
#!/bin/sh
cd ./mounts/jwt-generator
mvn clean package
cd ./target
cp "tomcat-jdbc.war" "../../"

cd ../../
curl -o postgresql.jar https://jdbc.postgresql.org/download/postgresql-42.6.0.jar
curl -o mariadb.jar https://dlm.mariadb.com/2896635/Connectors/java/connector-java-2.7.9/mariadb-java-client-2.7.9.jar
51 changes: 51 additions & 0 deletions JBoss Web Server/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
version: '3'
services:
jboss-web-server:
image: registry.redhat.io/jboss-webserver-5/jws57-openjdk8-openshift-rhel8:5.7.2-8
container_name: jboss-web-server
ports:
- '8086:8080'
environment:
# DB Config - Either use Env vars or the context.xml volume mount
# DB_SERVICE_PREFIX_MAPPING: sandbox-postgresql=DB
# SANDBOX_POSTGRESQL_SERVICE_HOST: postgres
# SANDBOX_POSTGRESQL_SERVICE_PORT: 5432
# DB_DRIVER: postgresql
# DB_USERNAME: admin
# DB_PASSWORD: password
# DB_DATABASE: docker
DB_JNDI: jboss/datasources/sandbox-mariadb

volumes:
- type: bind
source: ./mounts/tomcat-jdbc.war
target: /deployments/tomcat-jdbc.war
- type: bind
source: ./mounts/postgresql.jar
target: /opt/jws-5.7/tomcat/lib/postgresql.jar
- type: bind
source: ./mounts/mariadb.jar
target: /opt/jws-5.7/tomcat/lib/mariadb.jar
- type: bind
source: ./mounts/context.xml
target: /opt/jws-5.7/tomcat/conf/context.xml
networks:
- master
networks:
master:
external: true

# Env Vars: https://access.redhat.com/documentation/en-us/red_hat_jboss_web_server/5.7/html/red_hat_jboss_web_server_for_openshift/jws_on_openshift_reference#ref_jws-for-openshift-compatible-environment-variables_assembly_s2i-scripts-and-maven
# https://access.redhat.com/documentation/en-us/red_hat_jboss_enterprise_application_platform/7.3/html/getting_started_with_jboss_eap_for_openshift_container_platform/reference_information#reference_datasources

# 2.4. JWS for OpenShift S2I process
# You can run and configure the JWS for OpenShift images by using the OpenShift source-to-image (S2I) process with the application template parameters and environment variables.
# The S2I process for the JWS for OpenShift images works as follows:
# If the configuration source directory contains a Maven settings.xml file, the settings.xml file is moved to the $HOME/.m2/ directory of the new image.
# If the source repository contains a pom.xml file, a Maven build is triggered using the contents of the $MAVEN_ARGS environment variable.
# By default, the package goal is used with the openshift profile, which includes the -DskipTests argument to skip tests, and the -Dcom.redhat.xpaas.repo.redhatga argument to enable the Red Hat GA repository.
# The results of a successful Maven build are copied to the /opt/jws-5.7/tomcat/webapps directory. This includes all WAR files from the source directory that is specified by the $ARTIFACT_DIR environment variable. The default value of $ARTIFACT_DIR is the target/ directory.
# You can use the $MAVEN_ARGS_APPEND environment variable to modify the Maven arguments.
# All WAR files from the deployments source directory are copied to the /opt/jws-5.7/tomcat/webapps directory.
# All files in the configuration source directory are copied to the /opt/jws-5.7/tomcat/conf/ directory, excluding the Maven settings.xml file.
# All files in the lib source directory are copied to the /opt/jws-5.7/tomcat/lib/ directory.
2 changes: 2 additions & 0 deletions JBoss Web Server/mounts/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
/*.jar
/*.war
52 changes: 52 additions & 0 deletions JBoss Web Server/mounts/context.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
<?xml version='1.0' encoding='utf-8'?>
<!--
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
http://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.
-->
<!-- The contents of this file will be loaded for each web application -->
<Context useHttpOnly="true" privileged="false">
<!-- Default set of monitored resources. If one of these changes, the -->
<!-- web application will be reloaded. -->
<WatchedResource>WEB-INF/web.xml</WatchedResource>
<WatchedResource>${catalina.base}/conf/web.xml</WatchedResource>

<!-- Uncomment this to disable session persistence across Tomcat restarts -->
<!--
<Manager pathname="" />
-->

<!-- Uncomment this to enable Comet connection tacking (provides events
on session expiration as well as webapp lifecycle) -->
<!--
<Valve className="org.apache.catalina.valves.CometConnectionManagerValve" />
-->

<Resource auth="Container"
driverClassName="org.mariadb.jdbc.Driver"
name="jboss/datasources/sandbox-mariadb"
username="admin"
password="password"
type="javax.sql.DataSource"
url="jdbc:mariadb://mariadb:3306/docker"
maxWait="10000"
maxIdle="30"
validationQuery="SELECT 1"
testWhenIdle="true"
testOnBorrow="true"
factory="org.apache.tomcat.jdbc.pool.DataSourceFactory"/>

<!-- ##DATASOURCES## -->

</Context>
40 changes: 40 additions & 0 deletions JBoss Web Server/mounts/tomcat-jdbc/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,40 @@
#Maven
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
release.properties
.flattened-pom.xml

# 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
127 changes: 127 additions & 0 deletions JBoss Web Server/mounts/tomcat-jdbc/pom.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,127 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
<modelVersion>4.0.0</modelVersion>

<groupId>org.openshift.quickstarts</groupId>
<artifactId>tomcat-jdbc</artifactId>
<version>1.2.0.Final</version>

<packaging>war</packaging>

<name>OpenShift Quickstarts: Tomcat List: JDBC</name>
<description>Tomcat list</description>
<url>http://jboss.org/jbossas</url>

<licenses>
<license>
<name>Apache License, Version 2.0</name>
<distribution>repo</distribution>
<url>http://www.apache.org/licenses/LICENSE-2.0.html</url>
</license>
</licenses>

<properties>
<!-- Explicitly declaring the source encoding eliminates the following
message: -->
<!-- [WARNING] Using platform encoding (UTF-8 actually) to copy filtered
resources, i.e. build is platform dependent! -->
<project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>

<!-- JBoss dependency versions -->
<version.jboss.maven.plugin>7.4.Final</version.jboss.maven.plugin>

<!-- other plugin versions -->
<version.surefire.plugin>2.10</version.surefire.plugin>
<version.war.plugin>2.1.1</version.war.plugin>

<!-- maven-compiler-plugin -->
<maven.compiler.target>1.6</maven.compiler.target>
<maven.compiler.source>1.6</maven.compiler.source>

<jboss-servlet-api_3.0_spec.version>1.0.0.Final</jboss-servlet-api_3.0_spec.version>
</properties>


<dependencyManagement>
</dependencyManagement>

<dependencies>
<dependency>
<groupId>org.jboss.spec.javax.servlet</groupId>
<artifactId>jboss-servlet-api_3.0_spec</artifactId>
<version>${jboss-servlet-api_3.0_spec.version}</version>
<scope>provided</scope>
</dependency>
</dependencies>

<build>
<!-- Maven will append the version to the finalName (which is the name
given to the generated war, and hence the context root) -->
<finalName>${project.artifactId}</finalName>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>${version.war.plugin}</version>
<configuration>
<!-- Java EE 6 doesn't require web.xml, Maven needs to catch up! -->
<failOnMissingWebXml>false</failOnMissingWebXml>
</configuration>
</plugin>
<!-- The JBoss AS plugin deploys your war to a local JBoss EAP container -->
<!-- To use, run: mvn package jboss-as:deploy -->
<plugin>
<groupId>org.jboss.as.plugins</groupId>
<artifactId>jboss-as-maven-plugin</artifactId>
<version>${version.jboss.maven.plugin}</version>
</plugin>
</plugins>
</build>

<profiles>
<profile>
<!-- The default profile skips all tests, though you can tune it to run
just unit tests based on a custom pattern -->
<!-- Seperate profiles are provided for running all tests, including Arquillian
tests that execute in the specified container -->
<id>default</id>
<activation>
<activeByDefault>true</activeByDefault>
</activation>
<build>
<plugins>
<plugin>
<artifactId>maven-surefire-plugin</artifactId>
<version>${version.surefire.plugin}</version>
<configuration>
<skip>true</skip>
</configuration>
</plugin>
</plugins>
</build>
</profile>

<profile>
<!-- When built in OpenShift the 'openshift' profile will be used when
invoking mvn. -->
<!-- Use this profile for any OpenShift specific customization your app
will need. -->
<!-- By default that is to put the resulting archive into the 'deployments'
folder. -->
<!-- http://maven.apache.org/guides/mini/guide-building-for-different-environments.html -->
<id>openshift</id>
<build>
<plugins>
<plugin>
<artifactId>maven-war-plugin</artifactId>
<version>${version.war.plugin}</version>
<configuration>
<outputDirectory>deployments</outputDirectory>
<warName>ROOT</warName>
</configuration>
</plugin>
</plugins>
</build>
</profile>

</profiles>
</project>
Loading

0 comments on commit 38233ed

Please sign in to comment.