1- name : Run Podman Compose (Build & Deploy )
1+ name : Run Podman Compose (Sequential )
22
33on :
44 push :
5- branches : [ main ]
5+ branches :
6+ - main
67 pull_request :
78 paths-ignore :
89 - README.md
@@ -13,85 +14,94 @@ jobs:
1314 runs-on : ubuntu-latest
1415
1516 steps :
16- # Step 1: Checkout repository
17+ # 1️⃣ Checkout
1718 - name : Checkout code
1819 uses : actions/checkout@v4
1920
20- # Step 2: Install Podman & podman-compose
21+ # 2️⃣ Install Podman & podman-compose
2122 - name : Install Podman
2223 run : |
2324 sudo apt-get update -y
2425 sudo apt-get install -y podman python3-pip
2526 pip install podman-compose
2627 podman --version
2728
28- # Step 3: Configure Podman storage correctly
29+ # 3️⃣ Configure Podman storage
2930 - name : Configure Podman storage
3031 run : |
3132 STORAGE_ROOT="/home/runner/work/_containers"
32- sudo mkdir -p $STORAGE_ROOT
33- sudo mkdir -p /etc/containers
33+ sudo mkdir -p $STORAGE_ROOT /etc/containers
3434
3535 echo "[storage]" | sudo tee /etc/containers/storage.conf
3636 echo "graphroot=\"$STORAGE_ROOT\"" | sudo tee -a /etc/containers/storage.conf
3737
3838 podman system migrate
3939
40- # Step 4: Ensure Podman network exists
40+ # 4️⃣ Ensure Podman network
4141 - name : Ensure Podman network
4242 run : |
4343 NETWORK_NAME="edge-network"
4444 if ! podman network exists "$NETWORK_NAME"; then
4545 podman network create "$NETWORK_NAME"
4646 fi
4747
48- # Step 5: Build images (docker-compose.yml)
49- - name : Build Podman images
50- working-directory : demo/demo-2-otel
48+ # ===============================
49+ # 🚀 DEMO 1 – BASIC STACK
50+ # ===============================
51+ - name : Build & Run Demo-1 (Basics)
52+ working-directory : demo/demo-1-basics
5153 run : |
52- echo "Building images..."
53- podman-compose -f docker-compose.yml build
54- echo "Build completed."
54+ echo "Running Demo-1 Basics..."
55+ podman-compose build
56+ podman-compose up -d
57+ podman ps
5558
56- # Step 6: Run first compose - core stack
57- - name : Run Podman Compose (Core services)
59+ # ===============================
60+ # 🚀 DEMO 2 – OTEL CORE STACK
61+ # ===============================
62+ - name : Build & Run Demo-2 (OTEL Core)
5863 working-directory : demo/demo-2-otel
5964 run : |
60- echo "Starting core services (docker-compose.yml)..."
65+ echo "Running Demo-2 OTEL Core..."
66+ podman-compose -f docker-compose.yml build
6167 podman-compose -f docker-compose.yml up -d
6268 podman ps
6369
64- # Step 7: Run second compose - persistence stack
65- - name : Run Podman Compose (Persistence services)
70+
71+ # 🚀 DEMO 2 – PERSISTENCE STACK
72+
73+ - name : Run Demo-2 (Persistence)
6674 working-directory : demo/demo-2-otel
6775 run : |
68- echo "Starting persistence services (docker-compose-persistance.yml) ..."
76+ echo "Running Persistence stack ..."
6977 podman-compose -f docker-compose-persistance.yml up -d
7078 podman ps
7179
72- # Step 8: Show Podman environment
73- - name : Verify Podman environment
80+ # 8️⃣ Verify
81+ - name : Verify Podman Environment
7482 run : |
7583 podman network ls
7684 podman ps -a
7785
78- # Step 9: Show logs for each container
86+ # 9️⃣ Logs
7987 - name : Show Container Logs
80- working-directory : demo/demo-2-otel
8188 run : |
82- echo "Displaying logs for all containers..."
83- podman ps --format "{{.Names}}" | while read -r c; do
89+ for c in $(podman ps --format "{{.Names}}"); do
8490 echo "----------------------------"
8591 echo "Logs for: $c"
8692 echo "----------------------------"
87- podman logs "$c" || echo "No logs for $c"
93+ podman logs "$c" || true
8894 done
8995
90- # Step 10: Cleanup always
91- - name : Stop and Clean Up
96+ # 🔟 Cleanup (Always)
97+ - name : Cleanup
9298 if : always()
93- working-directory : demo/demo-2-otel
9499 run : |
95- podman-compose -f docker-compose.yml down
96- podman-compose -f docker-compose-persistance.yml down
100+ cd demo/demo-2-otel
101+ podman-compose -f docker-compose-persistance.yml down || true
102+ podman-compose -f docker-compose.yml down || true
103+
104+ cd ../demo-1-basics
105+ podman-compose down || true
106+
97107 echo "Cleanup completed."
0 commit comments