Architecture
Below is a diagram illustrating how OpenTimezone is deployed via a CI/CD pipeline to Azure Container Apps.
Deployment Diagram
+---------------------+
| GitHub Repository |
+----------+----------+
|
| (Push code to main branch)
v
+--------------------------------------+
| CI/CD Pipeline (GitHub Actions) |
| - .NET build & tests |
| - Docker build |
+-------------+------------------------+
| (Push image)
v
+----------------------------------+
| Azure Container Registry (ACR) |
+----------------------------------+
| (Pull image)
v
+-----------------------------------------+
| Azure Container Apps |
+-----------------------------------------+
|
v
+---------------------------------------+
| Publicly Accessible |
| via api.opentimezone.com |
+---------------------------------------+
- Developers push code changes or open pull requests on GitHub.
- GitHub Actions (CI/CD service) automatically runs tests and builds a Docker image.
- The image is pushed to Azure Container Registry (ACR).
- Azure Container Apps pulls the Docker image from ACR.
- The container is deployed and made publicly available at
api.opentimezone.com.