Skip to content

Commit

Permalink
Merge branch 'main' into use-docker-metadata-action
Browse files Browse the repository at this point in the history
  • Loading branch information
svrnm committed Dec 17, 2024
2 parents e7d7eb0 + 4c4b0a2 commit a54a6b4
Show file tree
Hide file tree
Showing 12 changed files with 111 additions and 45 deletions.
8 changes: 5 additions & 3 deletions .github/workflows/build-images-on-commit.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,11 @@ on:
push:
branches: [main]
paths:
- 'src/loaders/**'
- 'src/services/**'
- '.version'
- "src/loaders/**"
- "src/services/**"
- ".version"
- ".github/workflows/reusable-build-container-images.yml"
- ".github/workflows/build-images-on-commit.yml"
workflow_dispatch:
jobs:
build:
Expand Down
4 changes: 3 additions & 1 deletion .github/workflows/reusable-build-container-images.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ on:
type: boolean
registry_ghcr:
description: github container registry
default: 'ghcr.io/cisco-open/app-simulator'
default: "ghcr.io/cisco-open/app-simulator"
required: false
type: string
jobs:
Expand All @@ -20,6 +20,8 @@ jobs:
image:
- context: ./src/loaders/curl
name: loaders-curl
- context: ./src/services/java
name: services-java
steps:
- name: Checkout
uses: actions/[email protected]
Expand Down
36 changes: 0 additions & 36 deletions examples/backend.json

This file was deleted.

8 changes: 8 additions & 0 deletions examples/docker-compose/backend-db.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"type": "mysql",
"name": "backend-db",
"databases": {
"carts": ["id", "name", "total"]
}
}

15 changes: 15 additions & 0 deletions examples/docker-compose/backend.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
{
"type": "java",
"endpoints": {
"http": {
"/cart/checkout": [
"sleep,1000",
"sql://backend-db/?query=SELECT * from carts",
["http://ext-payment-1:8080/pay", "http://ext-payment-2:8080/pay"]
],
"/cart/add": ["sql://backend-db/?query=SELECT * from carts"],
"error": [{ "call": "error,500,Cart not found", "probability": 0.5 }]
}
},
"name": "backend"
}
File renamed without changes.
53 changes: 53 additions & 0 deletions examples/docker-compose/docker-compose.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,53 @@
services:
frontend:
image: ghcr.io/cisco-open/app-simulator-services-java:latest
build:
context: ../../src/services/java
dockerfile: Dockerfile
ports:
- "8080:8080"
volumes:
- ./frontend.json:/config.json
backend:
image: ghcr.io/cisco-open/app-simulator-services-java:latest
build:
context: ../../src/services/java
dockerfile: Dockerfile
ports:
- "8090:8080"
volumes:
- ./backend.json:/config.json
ext-payment:
image: ghcr.io/cisco-open/app-simulator-services-java:latest
build:
context: ../../src/services/java
dockerfile: Dockerfile
ports:
- "8091:8080"
volumes:
- ./ext-payment.json:/config.json
networks:
default:
aliases:
- ext-payment-1
- ext-payment-2
loader:
image: ghcr.io/cisco-open/app-simulator-loaders-curl:latest
build:
context: ../../src/loaders/curl
dockerfile: Dockerfile
environment:
- URLS=https://frontend:8080/addtocart http://frontend:8080/checkout
- SLEEP=5
- WAIT=1
# backend-db:
# image: ghcr.io/cisco-open/app-simulator-databases-mysql:latest
# build:
# context: ../src/databases/mysql
# dockerfile: Dockerfile
# ports:
# - "3306:3306"
# volumes:
# - ./backend-db.json:/config.json
networks:
default:
13 changes: 13 additions & 0 deletions examples/docker-compose/ext-payment.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
{
"type": "java",
"endpoints": {
"http": {
"/pay": [
"sleep,50",
"log,warn,do some logging",
"log,more logging",
]
}
},
"name": "ext-payment"
}
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"type": "nodejs",
"type": "java",
"options": {
"connectionDelay": 500,
"httpLibrary": "request-promise"
Expand All @@ -9,7 +9,7 @@
"/logo.png": ["sleep,1000"],
"/script.js": ["sleep,5000"],
"/checkout": [
"http://backend/cart/checkout",
"http://backend:8080/cart/checkout",
"image,logo.png",
"script,script.js",
"ajax,cache"
Expand Down
7 changes: 6 additions & 1 deletion src/loaders/curl/Dockerfile
Original file line number Diff line number Diff line change
@@ -1,5 +1,10 @@
FROM alpine:3.20.3
RUN apk add --no-cache curl=8.11.0-r2 util-linux=2.40.1-r1

LABEL org.opencontainers.image.source https://github.com/cisco-open/app-simulator
LABEL org.opencontainers.image.description="curl loader for app-simulator"
LABEL org.opencontainers.image.licenses=BSD-3-Clause

RUN apk add --no-cache curl util-linux
WORKDIR /usr/bin/
COPY loader.sh /usr/bin
RUN chmod +x /usr/bin/loader.sh
Expand Down
3 changes: 1 addition & 2 deletions src/loaders/curl/loader.sh
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,6 @@ while true; do
ID=$(uuidgen)
for URL in ${URLS}; do
/usr/bin/curl -s "${URL}?unique_session_id=${ID}"
#/usr/bin/curl -s -X POST -d "unique_session_id=${ID}" "${URL}"
done
sleep "${SLEEP}"
done
done
5 changes: 5 additions & 0 deletions src/services/java/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@ COPY pom.xml /home/app
RUN mvn -f /home/app/pom.xml clean package

FROM openjdk:11-jre

LABEL org.opencontainers.image.source https://github.com/cisco-open/app-simulator
LABEL org.opencontainers.image.description="java service for app-simulator"
LABEL org.opencontainers.image.licenses=BSD-3-Clause

RUN mkdir -p /app/dependency-jars
WORKDIR /app
COPY --from=build /home/app/target /app/
Expand Down

0 comments on commit a54a6b4

Please sign in to comment.