Skip to content

Instantly share code, notes, and snippets.

@l0rd
Last active February 20, 2023 20:38
Show Gist options
  • Save l0rd/0ada3e877f251264ebb5ce1d7328c550 to your computer and use it in GitHub Desktop.
Save l0rd/0ada3e877f251264ebb5ce1d7328c550 to your computer and use it in GitHub Desktop.
kubernetes component test
schemaVersion: 2.2.0
metadata:
name: SpringBoot 3 v5
#attributes:
# controller.devfile.io/storage-type: ephemeral
components:
- name: tools
container:
image: quay.io/devfile/universal-developer-image:ubi8-latest
env:
# - name: JAVA_HOME
# value: /usr/lib/jvm/java-17-openjdk
- name: spring_profiles_active
value: devspaces
- name: MAVEN_OPTS
value: "-Dmaven.wagon.http.ssl.insecure=true"
endpoints:
- exposure: none
name: debug
protocol: tcp
targetPort: 5005
- exposure: public
name: app
protocol: http
targetPort: 8080
path: /
volumeMounts:
- name: m2
path: /home/user/.m2
memoryLimit: 3G
mountSources: true
- name: m2
volume:
size: 2G
# - name: kafka
# openshift:
# uri: 'https://raw.githubusercontent.com/pietroaragona/openshift-devspaces-assets/main/kafka-deployment-v0.3.yaml'
# endpoints:
# - name: kafka-broker
# targetPort: 9092
# - name: kafka-ui
# targetPort: 8888
# path: /
# - name: kafka
# kubernetes:
# deployByDefault: true
# inlined: |
# apiVersion: v1
# kind: Pod
# metadata:
# name: kafka
# spec:
# containers:
# - image: docker.io/lsnidero/kafka
# name: kafka
# ports:
# - name: broker-9092
# containerPort: 9092
# - name: kafka
# openshift:
# uri: 'kafka-deployment-v0.3.yaml'
# endpoints:
# - name: kafka-broker
# targetPort: 9092
# - name: kafka-ui
# targetPort: 8888
# path: /
# - name: kafka
# container:
# image: docker.io/lsnidero/kafka
# endpoints:
# - name: kafka-broker
# targetPort: 9092
# - name: zookeeper
# targetPort: 2181
# exposure: internal
# volumeMounts:
# - name: zookeeper-vol
# path: /var/lib/zookeeper
# - name: nginx
# kubernetes:
# deployByDefault: true
# inlined: |
# apiVersion: v1
# kind: Pod
# metadata:
# name: kafka
# spec:
# containers:
# - image: docker.io/nginxinc/nginx-unprivileged
# name: kafka
# ports:
# - name: broker-9092
# containerPort: 8080
- name: test-pod
openshift:
deployByDefault: true
inlined: |
apiVersion: v1
kind: Pod
metadata:
name: test-pod
labels:
test: test-app
spec:
containers:
- name: test-container
image: quay.io/wto/web-terminal-tooling:next
resources:
limits:
memory: "128Mi"
cpu: "500m"
ports:
- containerPort: 8080
command:
- "tail"
- "-f"
- "/dev/null"
- name: zookeeper-vol
volume:
size: 1G
# - name: oracle
# container:
# image: 'alm-repos.sogei.it/ptt/oracle-init:1.1'
# command:
# - sleep
# - infinity
# memoryLimit: 768Mi
# mountSources: true
commands:
- id: initial-setup
exec:
label: 0. Initial Setup
component: tools
workingDir: ${PROJECTS_ROOT}
commandLine: curl -sk https://alm-repos.sogei.it/repository/codeready-plugins/assets/scripts/setup-ptt-v3.sh | bash
- id: setup-databases
exec:
label: 1. Setup Microservices Databases
component: oracle
commandLine: |
ORACLE_SYS_PASSWORD=nir_service
ORACLE_DB_NAME=nir_service
DB_HOST=oracle.common-ptt
DB_USER_PREFIX=${DEVWORKSPACE_NAMESPACE//-/}
DB_PASSWORD=changeit
function configure_microservice_schema {
MICROSERVICE=$1
DB_USER=${DB_USER_PREFIX}_${MICROSERVICE//-/}
/opt/oracle/createDevUser.sh ${DB_HOST} \
${ORACLE_SYS_PASSWORD} ${ORACLE_DB_NAME} \
${DB_USER} ${DB_PASSWORD}
echo "Configuration successful for Microservice ${MICROSERVICE}!"
echo "Username: ${DB_USER}"
echo "Password: ${DB_PASSWORD}"
SPRING_BOOT_TEST_FOLDER=${PROJECTS_ROOT}/${MICROSERVICE}/src/test/resources
SPRING_BOOT_TEST_PROPERTIES_FILE=${SPRING_BOOT_TEST_FOLDER}/application-devspace.properties
mkdir -p ${SPRING_BOOT_TEST_FOLDER}
cat <<EOF > ${SPRING_BOOT_TEST_PROPERTIES_FILE}
spring.datasource.url=jdbc:oracle:thin:@${DB_HOST}:1521/${ORACLE_DB_NAME}
spring.datasource.username=${DB_USER}
spring.datasource.password=${DB_PASSWORD}
spring.kafka.bootstrap-servers=localhost:29092
EOF
}
configure_microservice_schema ms-nir
configure_microservice_schema ms-doc
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment