Point the IDE dev settings at the shared Infrastructure stack
CI/CD / BackEnd (push) Successful in 1m18s
CI/CD / WebPlayer (push) Successful in 41s
CI/CD / Deploy (push) Skipped

appsettings.Development.json still targeted Musify's old own Postgres
(port 59000) with the superuser, the default RabbitMQ vhost as guest and
the admin S3 keys. They now use Infrastructure's dev ports and Musify's
own dev credentials (role, vhost and S3 identity), the same defaults as
deploy/.env.example.

The API's non-secret Zitadel settings (issuer, metadata, endpoints) move
there too, so user-secrets only need the per-machine client id.
This commit is contained in:
2026-09-24 17:11:50 +02:00
parent f99f74f4a1
commit 35d6314ce8
3 changed files with 28 additions and 19 deletions
@@ -6,21 +6,26 @@
} }
}, },
"Authentication": { "Authentication": {
"MetadataAddress": "http://host.docker.internal:8080/.well-known/openid-configuration",
"IssuerAddress": "http://host.docker.internal:8080",
"AuthorizationEndpoint": "http://host.docker.internal:8080/oauth/v2/authorize?prompt=login",
"TokenEndpoint": "http://host.docker.internal:8080/oauth/v2/token",
"ScalarRedirectUri": "http://localhost:5111/scalar/",
"Scopes": [ "openid", "profile", "email" ], "Scopes": [ "openid", "profile", "email" ],
"RequireHttpsMetadata": false "RequireHttpsMetadata": false
}, },
"Database": { "Database": {
"ConnectionString": "Host=localhost;Port=59000;Database=musify_db;Username=postgres;Password=postgres" "ConnectionString": "Host=localhost;Port=5432;Database=musify_db;Username=musify;Password=musify"
}, },
"MassTransit": { "MassTransit": {
"Address": "rabbitmq://localhost:5672", "Address": "rabbitmq://localhost:5672/musify",
"Username": "guest", "Username": "musify",
"Password": "guest" "Password": "musify"
}, },
"InfrastructureStorage": { "InfrastructureStorage": {
"Address": "http://localhost:8333", "Address": "http://localhost:8333",
"AccessKey": "admin_access_key", "AccessKey": "musify_access_key",
"SecretAccessKey": "admin_secret_key", "SecretAccessKey": "musify_secret_key",
"ForcePathStyle": true, "ForcePathStyle": true,
"UseHttp": true "UseHttp": true
}, },
@@ -6,20 +6,20 @@
} }
}, },
"Database": { "Database": {
"ConnectionString": "Host=localhost;Port=59000;Database=musify_db;Username=postgres;Password=postgres" "ConnectionString": "Host=localhost;Port=5432;Database=musify_db;Username=musify;Password=musify"
}, },
"MassTransit": { "MassTransit": {
"Address": "rabbitmq://localhost:5672", "Address": "rabbitmq://localhost:5672/musify",
"Username": "guest", "Username": "musify",
"Password": "guest" "Password": "musify"
}, },
"OpenTelemetry": { "OpenTelemetry": {
"OtlpEndpoint": "http://localhost:4317" "OtlpEndpoint": "http://localhost:4317"
}, },
"InfrastructureStorage": { "InfrastructureStorage": {
"Address": "http://localhost:8333", "Address": "http://localhost:8333",
"AccessKey": "admin_access_key", "AccessKey": "musify_access_key",
"SecretAccessKey": "admin_secret_key", "SecretAccessKey": "musify_secret_key",
"ForcePathStyle": true, "ForcePathStyle": true,
"UseHttp": true "UseHttp": true
}, },
+11 -7
View File
@@ -68,13 +68,17 @@ dotnet run --project backend/Hosts/Musify.Worker # background
npm --prefix web-player run dev # :5173 npm --prefix web-player run dev # :5173
``` ```
When running the apps from the IDE, `Musify.Api` reads `Authentication:*` When running the apps from the IDE, neither the .NET hosts nor `web-player`
from user-secrets and `web-player` reads its own `web-player/.env`, neither look at `deploy/.env`. The hosts' `appsettings.Development.json` already
looks at `deploy/.env`. Copy the four values `zitadel-init` wrote point at Infrastructure's dev stack with Musify's own dev credentials (the
(`AUTH_CLIENT_ID`, `WEB_CLIENT_ID`, `WEB_CLIENT_SECRET`, `NATIVE_CLIENT_ID`) defaults of its `MUSIFY_*` settings) and at the shared Zitadel. Only the
into `dotnet user-secrets set Authentication:ClientId <value> --project OIDC client ids are per-machine: copy the values `zitadel-init` wrote once,
backend/Hosts/Musify.Api` and into `web-player/.env` once. They stay valid `AUTH_CLIENT_ID` into both `Authentication:ClientId` and
until Infrastructure's Zitadel volume is wiped. `Authentication:AudienceAddress` (`dotnet user-secrets set <key> <value>
--project backend/Hosts/Musify.Api`), `WEB_CLIENT_ID` and
`WEB_CLIENT_SECRET` into `web-player/.env`, and `NATIVE_CLIENT_ID` into
`mobile/gradle.properties`. They stay valid until Infrastructure's Zitadel
volume is wiped.
### Ports ### Ports