Compare commits
10 Commits
76a3351090
...
61285d6bc4
Author | SHA1 | Date | |
---|---|---|---|
61285d6bc4 | |||
3d1a863ab5 | |||
9e4a37baab | |||
f921d7b123 | |||
b86adff83d | |||
fc04e5f2b5 | |||
489a39c06a | |||
fab68a5d39 | |||
e00f3a865e | |||
2ac29d526c |
@ -154,14 +154,14 @@ let getRafflesWithPurchases storeId =
|
||||
|> Sql.connect
|
||||
|> Sql.parameters [ "sid" , Sql.string storeId ]
|
||||
|> Sql.query """
|
||||
WITH raffles AS
|
||||
WITH raffles AS
|
||||
(SELECT store_id,stock,available,limit_stock,i.id AS raffle_id,name,description,icon_url,image_url,category,require_role,require_invites,sale_end,rank,
|
||||
buy_price,sell_price,rate_limit,expiration,drop_chance,can_trade,can_consume,attack_power,defense_power,class_name,max_stack,mods
|
||||
FROM store_item
|
||||
JOIN item i on store_item.item_id = i.id
|
||||
WHERE store_id = @sid AND store_item.unlisted = false)
|
||||
SELECT * FROM raffles
|
||||
FULL JOIN (SELECT item_id, count(*) AS total FROM inventory_item
|
||||
SELECT * FROM raffles
|
||||
FULL JOIN (SELECT item_id, count(*) AS total FROM inventory_item
|
||||
WHERE item_id = ANY (SELECT raffle_id FROM raffles)
|
||||
GROUP BY item_id) total_raffles ON total_raffles.item_id = raffle_id;
|
||||
"""
|
||||
|
@ -12,10 +12,12 @@ open Giraffe
|
||||
open dotenv.net
|
||||
open Npgsql.FSharp
|
||||
|
||||
let prodEnv = DotEnv.Read(DotEnvOptions(envFilePaths = [ "../.prod.env"], overwriteExistingVars = false))
|
||||
DotEnv.Load(DotEnvOptions(envFilePaths = [ "../.prod.env" ], overwriteExistingVars = false))
|
||||
|
||||
let ( _ , connStr ) = prodEnv.TryGetValue("DATABASE_URL")
|
||||
let ( _ , apiKey ) = prodEnv.TryGetValue("API_KEY")
|
||||
let connStr = Environment.GetEnvironmentVariable("DATABASE_URL")
|
||||
.Replace("postgresql://", "postgres://")
|
||||
.Replace("?sslmode=require", "")
|
||||
let apiKey = Environment.GetEnvironmentVariable("API_KEY")
|
||||
|
||||
let validateApiKey (ctx : HttpContext) =
|
||||
match ctx.TryGetRequestHeader "X-API-Key" with
|
||||
@ -105,8 +107,7 @@ let main args =
|
||||
fun webHostBuilder ->
|
||||
webHostBuilder
|
||||
.ConfigureKestrel(fun opt ->
|
||||
opt.AddServerHeader <- false
|
||||
opt.ListenLocalhost(3333, (fun o -> o.UseHttps() |> ignore)))
|
||||
opt.AddServerHeader <- false)
|
||||
.Configure(Action<IApplicationBuilder> configureApp)
|
||||
.ConfigureServices(configureServices)
|
||||
.ConfigureLogging(configureLogging)
|
||||
|
@ -2,7 +2,7 @@
|
||||
<configuration>
|
||||
<system.webServer>
|
||||
<handlers>
|
||||
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModule" resourceType="Unspecified" />
|
||||
<add name="aspNetCore" path="*" verb="*" modules="AspNetCoreModuleV2" resourceType="Unspecified" />
|
||||
</handlers>
|
||||
<aspNetCore processPath="dotnet" arguments="CurrencyAPI.dll" stdoutLogEnabled="false" stdoutLogFile="logs/stdout" />
|
||||
</system.webServer>
|
||||
|
10
Dockerfile
10
Dockerfile
@ -10,14 +10,16 @@ RUN dotnet tool restore
|
||||
|
||||
RUN dotnet restore "CurrencyAPI/CurrencyAPI.fsproj"
|
||||
|
||||
WORKDIR "/src/Bot"
|
||||
WORKDIR "/src/CurrencyAPI/"
|
||||
|
||||
RUN dotnet build "CurrencyAPI.fsproj" -c Release -o /app/build
|
||||
|
||||
FROM build AS publish
|
||||
RUN dotnet publish "CurrencyAPI.fsproj" -c Release -o /app/publish
|
||||
RUN dotnet publish "CurrencyAPI.fsproj" -c Release -o /app/publish --no-restore
|
||||
|
||||
FROM base AS final
|
||||
FROM mcr.microsoft.com/dotnet/aspnet:6.0
|
||||
WORKDIR /app
|
||||
COPY --from=publish /app/publish .
|
||||
ENTRYPOINT "./CurrencyAPI.App"
|
||||
EXPOSE 80
|
||||
EXPOSE 443
|
||||
ENTRYPOINT [ "dotnet", "./CurrencyAPI.App.dll" ]
|
||||
|
Loading…
x
Reference in New Issue
Block a user