Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
8aa02f9
Merge pull request #86 from microsoft/Streaming-Release-TR
nagendramishr Aug 14, 2025
7e6ae09
Update issue templates
nagendramishr Oct 9, 2025
5d34a7d
Delete test/openai/call-localhost.sh
nagendramishr Oct 30, 2025
b615d42
Delete test/openai/call-localhost.sh
nagendramishr Oct 30, 2025
cc38069
Merge pull request #104 from microsoft/nagendramishr-patch-3
nagendramishr Nov 12, 2025
5057f62
Merge pull request #103 from microsoft/nagendramishr-patch-2
nagendramishr Nov 12, 2025
9a5a9dd
Delete test/openai/call-nvmtr2apim.sh
nagendramishr Dec 15, 2025
d4bf99d
Merge pull request #105 from microsoft/nagendramishr-patch-4
ian-t-adams Jan 20, 2026
0b6318c
Merge pull request #96 from microsoft/nagendramishr-patch-1
ian-t-adams Jan 20, 2026
2600dd9
Merge pull request #99 from microsoft/Streaming-Release-TR
ian-t-adams Jan 20, 2026
bd9f925
Merge pull request #108 from microsoft/feature-direct-backend
nagendramishr Feb 1, 2026
a59e994
Merge pull request #109 from microsoft/feature-direct-backend
nagendramishr Feb 10, 2026
70f474c
Merge pull request #110 from microsoft/feature-direct-backend
nagendramishr Feb 11, 2026
05d0a44
Merge pull request #111 from microsoft/feature-direct-backend
nagendramishr Feb 13, 2026
4559266
Merge pull request #112 from microsoft/feature-direct-backend
nagendramishr Feb 13, 2026
21d9f77
Merge pull request #113 from microsoft/Streaming-Release-TR
nagendramishr Feb 13, 2026
42033a8
Merge pull request #123 from microsoft/feature-direct-backend
nagendramishr Feb 27, 2026
c2f1339
Merge pull request #124 from microsoft/feature-direct-backend
nagendramishr Mar 6, 2026
fc7f91f
Merge pull request #125 from microsoft/Streaming-Release-TR
ian-t-adams Mar 9, 2026
95112b1
Merge pull request #126 from microsoft/feature-direct-backend
nagendramishr Mar 9, 2026
b536526
Merge pull request #127 from microsoft/feature-direct-backend
nagendramishr Mar 9, 2026
0a7575f
Merge pull request #128 from microsoft/feature-direct-backend
nagendramishr Mar 13, 2026
8dc8431
Merge pull request #129 from microsoft/feature-direct-backend
nagendramishr Mar 20, 2026
9f2b38f
Merge pull request #130 from microsoft/Streaming-Release-TR
ian-t-adams Mar 20, 2026
5e9b82a
Merge pull request #131 from microsoft/feature-direct-backend
nagendramishr Mar 27, 2026
d3c8d88
Merge pull request #132 from microsoft/Streaming-Release-TR
ian-t-adams Mar 27, 2026
088dd9f
Merge pull request #133 from microsoft/feature-direct-backend
nagendramishr Apr 1, 2026
03e0808
Merge pull request #134 from microsoft/feature-direct-backend
nagendramishr Apr 3, 2026
66ff121
Merge pull request #136 from microsoft/feature-direct-backend
nagendramishr Apr 3, 2026
e016846
Merge pull request #135 from microsoft/Streaming-Release-TR
ian-t-adams Apr 3, 2026
517a304
Merge pull request #137 from microsoft/feature-direct-backend
nagendramishr Apr 3, 2026
945751d
Merge pull request #138 from microsoft/feature-direct-backend
nagendramishr Apr 10, 2026
d58cdc9
Merge pull request #139 from microsoft/Streaming-Release-TR
ian-t-adams Apr 10, 2026
3cef323
Merge pull request #140 from microsoft/feature-direct-backend
nagendramishr Apr 15, 2026
3e74a11
Merge pull request #141 from microsoft/Streaming-Release-TR
ian-t-adams Apr 15, 2026
eb5d0f7
Merge pull request #143 from microsoft/feature-direct-backend
nagendramishr Apr 17, 2026
bb85046
Merge pull request #144 from microsoft/Streaming-Release-TR
ian-t-adams Apr 17, 2026
e66bc28
docs: add no-Docker deployment path via remote ACR build
MarvelintheCloud Apr 30, 2026
e37f18e
Merge branch 'feature-direct-backend' into docs/remote-acr-no-docker
nagendramishr Apr 30, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion .azure/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ This guide helps you deploy the SimpleL7Proxy service to Azure using the Azure D

1. [Azure Developer CLI (AZD)](https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/install-azd)
2. [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
3. [Docker](https://www.docker.com/products/docker-desktop/)
3. [Docker](https://www.docker.com/products/docker-desktop/)(optional; only needed for local container builds)

## Deployment Steps

Expand Down Expand Up @@ -58,6 +58,13 @@ This command will deploy the Azure infrastructure defined in the Bicep templates

### 4. Build and Deploy the Application

Important
Current deployment scripts are Docker-based.

deploy.sh and deploy.ps1 build and push images using local Docker.
deploy.sh expects images already built by Docker-based build scripts.
If Docker is unavailable, use remote ACR build commands from CONTAINER_DEPLOYMENT.md and then update/deploy using the resulting image tags.

#### For Windows:

```powershell
Expand Down
33 changes: 33 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,33 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

**To Reproduce**
Steps to reproduce the behavior:
1. Server environment variables: '...'
2. Backend Details: '....'
3. Request Curl: '....'
4. Where do you see the error
5. Attach any logs to illustrate the issue:

**Expected behavior**
A clear and concise description of what you expected to happen.

**Screenshots**
If applicable, add logs and screenshots to help explain your problem.

**Curl (please complete the following information):**
- Headers
- Body


**Additional context**
Add any other context about the problem here.
20 changes: 20 additions & 0 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
assignees: ''

---

**Is your feature request related to a problem? Please describe.**
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]

**Describe the solution you'd like**
A clear and concise description of what you want to happen.

**Describe alternatives you've considered**
A clear and concise description of any alternative solutions or features you've considered.

**Additional context**
Add any other context or screenshots about the feature request here.
14 changes: 11 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -36,12 +36,20 @@
## Prerequisites

- [.NET 10 SDK](https://dotnet.microsoft.com/download)
- [Docker](https://docs.docker.com/get-docker/) (container builds)
- [Docker](https://docs.docker.com/get-docker/) (optional; only needed for local container builds)
- [Azure Developer CLI (azd)](https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/install-azd) (cloud deployment)
- [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) (required for remote ACR builds)
- Azure subscription with Container Apps; optionally AI Foundry / APIM

## Quick Start

Important
Current deployment scripts are Docker-based.

deploy.sh and deploy.ps1 build and push images using local Docker.
deploy.sh expects images already built by Docker-based build scripts.
If Docker is unavailable, use remote ACR build commands from CONTAINER_DEPLOYMENT.md and then update/deploy using the resulting image tags.

**Local (2 commands):**
```bash
git clone https://github.com/your-org/SimpleL7Proxy.git
Expand All @@ -61,9 +69,9 @@ chmod +x .azure/setup.sh .azure/deploy.sh
./.azure/setup.sh && azd provision && ./.azure/deploy.sh
```

> No local Docker available? Use the remote ACR build workflow in [docs/CONTAINER_DEPLOYMENT.md](docs/CONTAINER_DEPLOYMENT.md).
> See [Getting Started — Local Development](docs/BEGINNER_DEVELOPMENT.md) for the fastest setup paths.
> See [Container Deployment](docs/CONTAINER_DEPLOYMENT.md) for VNET and high-performance variants.

>
---

## Local Development Paths
Expand Down
9 changes: 8 additions & 1 deletion deployment/proxy-with-sidecar/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Deploy a multi-container Azure Container App with a health probe sidecar pattern

- [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli) installed
- Access to an Azure Container Registry (ACR)
- Docker installed (for building images)
- Docker installed (optional; only needed for building images locally)

## Quick Start

Expand Down Expand Up @@ -41,6 +41,13 @@ export HOST1="host=https://your-api.azure-api.net;mode=apim;path=/;probe=/health

### 2. Build Images

Important
Current deployment scripts are Docker-based.

deploy.sh and deploy.ps1 build and push images using local Docker.
deploy.sh expects images already built by Docker-based build scripts.
If Docker is unavailable, use remote ACR build commands from CONTAINER_DEPLOYMENT.md and then update/deploy using the resulting image tags.

```bash
cd ../../src/SimpleL7Proxy && ./build.sh
cd ../HealthProbe && ./build.sh
Expand Down
20 changes: 18 additions & 2 deletions docs/CONTAINER_DEPLOYMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,6 @@ Build a Docker image from the `src/` directory and run it locally or deploy it t
> - **Probe paths are in the Host connection string** — use `Host1=host=https://api.example.com;probe=/health` (not separate `Probe_path1=` variables).
> - **Fastest path to Azure:** (1) `.azure/setup.sh` (check prerequisites, choose scenario), (2) `azd provision` (create Container App + App Configuration + ACR), (3) `deployment/AppConfiguration/deploy.sh` (seed App Configuration from your config), (4) `.azure/deploy.sh` (build image, push to ACR, update Container App).

---

## Container Ports

Expand Down Expand Up @@ -179,6 +178,22 @@ docker build -t simplel7proxy:latest -f SimpleL7Proxy/Dockerfile .

---

## Building without Docker (Remote ACR Build)

If Docker is not available locally (corporate restrictions, CI/CD runners, etc.), build directly in Azure Container Registry:

```bash
# From repo root
export ACR=myregistry # Your ACR name, without .azurecr.io
export VERSION=v2.2.11 # Or read from Constants.cs

az acr build
--registry $ACR
--image simple-l7-proxy:$VERSION
--file src/SimpleL7Proxy/Dockerfile
src
```

## Running Locally with Docker

### Minimal run
Expand Down Expand Up @@ -247,7 +262,8 @@ This is the recommended path for provisioning all required Azure resources (ACR,

- [Azure CLI](https://docs.microsoft.com/en-us/cli/azure/install-azure-cli)
- [Azure Developer CLI (azd)](https://learn.microsoft.com/en-us/azure/developer/azure-developer-cli/install-azd)
- Docker
- Docker (optional; only needed for local image builds)
- For no-Docker environments, use the remote ACR build workflow in [Building without Docker (Remote ACR Build)](#building-without-docker-remote-acr-build)

### Step 1 — Setup

Expand Down
12 changes: 12 additions & 0 deletions docs/SIDECAR_DEPLOYMENT.md
Original file line number Diff line number Diff line change
Expand Up @@ -84,6 +84,8 @@ export HOST1="host=https://my-api.azure-api.net;mode=apim;path=/;probe=/status-0

### Step 2 — Build both images

Option A: Local Docker build (fast local iteration)

Both build scripts read `ACR` from `deploy.parameters.sh` automatically.

```bash
Expand All @@ -102,6 +104,16 @@ Each script:
3. Builds from `src/` (includes `Shared/`)
4. Pushes `$ACR.azurecr.io/myproxy:<ver>` and `$ACR.azurecr.io/healthprobe:<ver>` respectively

Option B: Remote ACR build (no Docker required)

Use Option B in corporate/restricted environments or CI/CD runners where Docker is unavailable.

```bash
# Run from repo root
az acr build --registry $ACR --image myproxy:latest --file src/SimpleL7Proxy/Dockerfile src
az acr build --registry $ACR --image healthprobe:latest --file src/HealthProbe/Dockerfile src
```

### Step 3 — Create the Container App and assign RBAC

Run `setup.sh` **once** — it creates the Container App with a placeholder image, enables system-assigned managed identity, and grants `AcrPull` on the ACR. It waits 60 seconds for the role to propagate.
Expand Down