Changes
Build and Push Docker Images / build (push) Successful in 30s

This commit is contained in:
2026-05-12 10:16:17 +03:00
parent ee2c2d5159
commit 0f7166c1a3
6 changed files with 47 additions and 2 deletions
+1 -1
View File
@@ -16,7 +16,7 @@ namespace Api.Controllers;
/// </summary> /// </summary>
[ApiController] [ApiController]
[Route("api/cv-matcher")] [Route("api/cv-matcher")]
[EnableRateLimiting("cv-matcher")] [EnableRateLimiting("CvMatcher")]
public sealed class CvMatcherController : ControllerBase public sealed class CvMatcherController : ControllerBase
{ {
private readonly ICvMatcherApi _cvApi; private readonly ICvMatcherApi _cvApi;
+1 -1
View File
@@ -124,7 +124,7 @@
"QueueLimit": 0, "QueueLimit": 0,
"AutoReplenishment": true "AutoReplenishment": true
}, },
"cv-matcher": { "CvMatcher": {
"PermitLimit": 10, "PermitLimit": 10,
"Window": "00:10:00", "Window": "00:10:00",
"QueueLimit": 0, "QueueLimit": 0,
+12
View File
@@ -101,3 +101,15 @@ Serilog__WriteTo__2__Args__enableSsl=true
# CvMatcher API internal # CvMatcher API internal
CvMatcherApi__BaseUrl=http://cv-matcher-api:8081 CvMatcherApi__BaseUrl=http://cv-matcher-api:8081
CvMatcherApi__InternalApiKey= CvMatcherApi__InternalApiKey=
# Rate Limiting (api - public rate limits)
# Window uses TimeSpan strings: "hh:mm:ss" (e.g. "00:01:00" = 1 minute, "00:10:00" = 10 minutes).
RateLimiting__Global__PermitLimit=120
RateLimiting__Global__Window=00:01:00
RateLimiting__Global__QueueLimit=0
RateLimiting__Policies__contact__PermitLimit=5
RateLimiting__Policies__contact__Window=00:01:00
RateLimiting__Policies__contact__QueueLimit=0
RateLimiting__Policies__CvMatcher__PermitLimit=10
RateLimiting__Policies__CvMatcher__Window=00:10:00
RateLimiting__Policies__CvMatcher__QueueLimit=0
@@ -170,6 +170,17 @@ services:
- CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080} - CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080}
- CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key} - CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key}
# Rate Limiting: matches api appsettings RateLimiting section
- RateLimiting__Global__PermitLimit=${RateLimiting__Global__PermitLimit:-120}
- RateLimiting__Global__Window=${RateLimiting__Global__Window:-00:01:00}
- RateLimiting__Global__QueueLimit=${RateLimiting__Global__QueueLimit:-0}
- RateLimiting__Policies__contact__PermitLimit=${RateLimiting__Policies__contact__PermitLimit:-5}
- RateLimiting__Policies__contact__Window=${RateLimiting__Policies__contact__Window:-00:01:00}
- RateLimiting__Policies__contact__QueueLimit=${RateLimiting__Policies__contact__QueueLimit:-0}
- RateLimiting__Policies__CvMatcher__PermitLimit=${RateLimiting__Policies__CvMatcher__PermitLimit:-10}
- RateLimiting__Policies__CvMatcher__Window=${RateLimiting__Policies__CvMatcher__Window:-00:10:00}
- RateLimiting__Policies__CvMatcher__QueueLimit=${RateLimiting__Policies__CvMatcher__QueueLimit:-0}
# CORS: not in the uploaded api appsettings, but used by your API startup config. # CORS: not in the uploaded api appsettings, but used by your API startup config.
- Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000} - Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000}
- Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080} - Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080}
+11
View File
@@ -170,6 +170,17 @@ services:
- CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080} - CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080}
- CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key} - CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key}
# Rate Limiting: matches api appsettings RateLimiting section
- RateLimiting__Global__PermitLimit=${RateLimiting__Global__PermitLimit:-120}
- RateLimiting__Global__Window=${RateLimiting__Global__Window:-00:01:00}
- RateLimiting__Global__QueueLimit=${RateLimiting__Global__QueueLimit:-0}
- RateLimiting__Policies__contact__PermitLimit=${RateLimiting__Policies__contact__PermitLimit:-5}
- RateLimiting__Policies__contact__Window=${RateLimiting__Policies__contact__Window:-00:01:00}
- RateLimiting__Policies__contact__QueueLimit=${RateLimiting__Policies__contact__QueueLimit:-0}
- RateLimiting__Policies__CvMatcher__PermitLimit=${RateLimiting__Policies__CvMatcher__PermitLimit:-10}
- RateLimiting__Policies__CvMatcher__Window=${RateLimiting__Policies__CvMatcher__Window:-00:10:00}
- RateLimiting__Policies__CvMatcher__QueueLimit=${RateLimiting__Policies__CvMatcher__QueueLimit:-0}
# CORS: not in the uploaded api appsettings, but used by your API startup config. # CORS: not in the uploaded api appsettings, but used by your API startup config.
- Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000} - Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000}
- Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080} - Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080}
+11
View File
@@ -190,6 +190,17 @@ services:
- CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080} - CvMatcherApi__BaseUrl=${CvMatcherApi__BaseUrl:-http://cv-matcher-api:8080}
- CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key} - CvMatcherApi__InternalApiKey=${CvMatcherApi__InternalApiKey:-change-this-internal-key}
# Rate Limiting: matches api appsettings RateLimiting section
- RateLimiting__Global__PermitLimit=${RateLimiting__Global__PermitLimit:-120}
- RateLimiting__Global__Window=${RateLimiting__Global__Window:-00:01:00}
- RateLimiting__Global__QueueLimit=${RateLimiting__Global__QueueLimit:-0}
- RateLimiting__Policies__contact__PermitLimit=${RateLimiting__Policies__contact__PermitLimit:-5}
- RateLimiting__Policies__contact__Window=${RateLimiting__Policies__contact__Window:-00:01:00}
- RateLimiting__Policies__contact__QueueLimit=${RateLimiting__Policies__contact__QueueLimit:-0}
- RateLimiting__Policies__CvMatcher__PermitLimit=${RateLimiting__Policies__CvMatcher__PermitLimit:-10}
- RateLimiting__Policies__CvMatcher__Window=${RateLimiting__Policies__CvMatcher__Window:-00:10:00}
- RateLimiting__Policies__CvMatcher__QueueLimit=${RateLimiting__Policies__CvMatcher__QueueLimit:-0}
# CORS: not in the uploaded api appsettings, but used by your API startup config. # CORS: not in the uploaded api appsettings, but used by your API startup config.
- Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000} - Cors__AllowedOrigins__0=${Cors__AllowedOrigins__0:-http://localhost:5000}
- Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080} - Cors__AllowedOrigins__1=${Cors__AllowedOrigins__1:-http://web:8080}