113 lines
3.8 KiB
JSON
113 lines
3.8 KiB
JSON
{
|
|
"name": "OSU Lazer API",
|
|
"dockerComposeFile": "docker-compose.yml",
|
|
"service": "devcontainer",
|
|
"shutdownAction": "stopCompose",
|
|
"workspaceFolder": "/workspaces/osu_lazer_api",
|
|
"containerEnv": {
|
|
"MYSQL_DATABASE": "osu_api",
|
|
"MYSQL_USER": "osu_api",
|
|
"MYSQL_PASSWORD": "password",
|
|
"MYSQL_HOST": "mysql",
|
|
"MYSQL_PORT": "3306"
|
|
},
|
|
"runArgs": [
|
|
"--name",
|
|
"g0v0-devcontainer",
|
|
"--label",
|
|
"jetbrains-attach=true"
|
|
],
|
|
"customizations": {
|
|
"vscode": {
|
|
"extensions": [
|
|
"ms-python.python",
|
|
"detachhead.basedpyright",
|
|
"charliermarsh.ruff",
|
|
"ms-python.debugpy",
|
|
"ms-vscode.vscode-json",
|
|
"redhat.vscode-yaml",
|
|
"ms-vscode.docker",
|
|
"rust-lang.rust-analyzer",
|
|
"ms-dotnettools.csdevkit",
|
|
"ms-dotnettools.csharp",
|
|
"ms-dotnettools.vscode-dotnet-runtime",
|
|
"ms-dotnettools.blazorwasm-companion",
|
|
"editorconfig.editorconfig"
|
|
],
|
|
"settings": {
|
|
"python.defaultInterpreterPath": "/usr/local/bin/python",
|
|
"python.terminal.activateEnvironment": true,
|
|
"python.linting.enabled": true,
|
|
"python.linting.pylintEnabled": false,
|
|
"python.linting.flake8Enabled": false,
|
|
"python.formatting.provider": "none",
|
|
"[python]": {
|
|
"editor.defaultFormatter": "charliermarsh.ruff",
|
|
"editor.formatOnSave": true,
|
|
"editor.codeActionsOnSave": {
|
|
"source.organizeImports": "explicit"
|
|
}
|
|
},
|
|
"ruff.enable": true,
|
|
"ruff.lint.enable": true,
|
|
"ruff.format.enable": true,
|
|
"ruff.importStrategy": "fromEnvironment",
|
|
"files.exclude": {
|
|
"**/__pycache__": true,
|
|
"**/*.pyc": true
|
|
},
|
|
"python.testing.pytestEnabled": true,
|
|
"python.testing.unittestEnabled": false,
|
|
"python.testing.pytestArgs": [
|
|
"."
|
|
],
|
|
"terminal.integrated.defaultProfile.linux": "bash",
|
|
"rust-analyzer.server.path": "rust-analyzer",
|
|
"rust-analyzer.cargo.buildScripts.enable": true,
|
|
"rust-analyzer.procMacro.enable": true,
|
|
"[rust]": {
|
|
"editor.defaultFormatter": "rust-lang.rust-analyzer",
|
|
"editor.formatOnSave": true
|
|
},
|
|
"dotnet.defaultSolution": "/workspaces/osu_lazer_api/spectator-server/osu.Server.Spectator.sln",
|
|
"[csharp]": {
|
|
"editor.formatOnSave": true,
|
|
"editor.codeActionsOnSave": {
|
|
"source.organizeImports": "explicit"
|
|
}
|
|
},
|
|
"dotnet.completion.showCompletionItemsFromUnimportedNamespaces": true,
|
|
"dotnet.inlayHints.enableInlayHintsForParameters": true,
|
|
"dotnet.inlayHints.enableInlayHintsForLiteralParameters": true,
|
|
"dotnet.inlayHints.enableInlayHintsForIndexerParameters": true,
|
|
"dotnet.inlayHints.enableInlayHintsForObjectCreationParameters": true,
|
|
"dotnet.inlayHints.enableInlayHintsForOtherParameters": true,
|
|
"dotnet.inlayHints.enableInlayHintsForTypes": true,
|
|
"dotnet.inlayHints.enableInlayHintsForImplicitVariableTypes": true,
|
|
"dotnet.inlayHints.enableInlayHintsForLambdaParameterTypes": true,
|
|
"dotnet.inlayHints.enableInlayHintsForImplicitObjectCreation": true
|
|
}
|
|
}
|
|
},
|
|
"features": {
|
|
"ghcr.io/va-h/devcontainers-features/uv:1": {},
|
|
"ghcr.io/devcontainers/features/rust:1": {
|
|
"version": "latest",
|
|
"profile": "default"
|
|
},
|
|
"ghcr.io/devcontainers/features/dotnet:2": {
|
|
"version": "8.0"
|
|
}
|
|
},
|
|
"forwardPorts": [
|
|
8000,
|
|
3306,
|
|
6379,
|
|
8086,
|
|
80,
|
|
8080
|
|
],
|
|
"postCreateCommand": "uv sync --dev && uv run alembic upgrade head && uv run pre-commit install && cd packages/msgpack_lazer_api && cargo check && cd ../../spectator-server && dotnet restore",
|
|
"remoteUser": "vscode"
|
|
}
|