diff --git a/.gitea/workflows/morskaRelease.yml b/.gitea/workflows/morskaRelease.yml deleted file mode 100644 index 0f7d1e0..0000000 --- a/.gitea/workflows/morskaRelease.yml +++ /dev/null @@ -1,122 +0,0 @@ -name: ReleaseApp (JS finder + download) - -on: - workflow_dispatch: {} - -jobs: - release: - runs-on: ubuntu-latest - env: - GITEA_BASE_URL: https://code.bim-it.pl - OWNER: mz - REPO: DiunaBI - REQUIRED_ARTIFACTS: frontend,webapi - SCAN_LIMIT: "100" - - steps: - - name: Checkout - uses: https://github.com/actions/checkout@v4 - - - name: Use Node.js 20 - uses: https://github.com/actions/setup-node@v4 - with: - node-version: 20 - - - name: Install unzip (for extraction) - run: | - sudo apt-get update - sudo apt-get install -y unzip - - - name: Resolve latest run that exposes required artifacts - id: resolve - env: - GITEA_PAT: ${{ secrets.GITEATOKEN }} - run: | - node .gitea/scripts/getLatestRunWithArtifacts.js - echo "Resolved run_id: $(cat .gitea/.cache/run_id)" - echo "run_id=$(cat .gitea/.cache/run_id)" >> "$GITHUB_OUTPUT" - - - name: Download frontend artifact - env: - GITEA_PAT: ${{ secrets.GITEATOKEN }} - ARTIFACT_NAME: frontend - RUN_ID: ${{ steps.resolve.outputs.run_id }} - OUTPUT_DIR: artifacts/frontend - run: | - node .gitea/scripts/downloadArtifactByName.js - - - name: Download webapi artifact - env: - GITEA_PAT: ${{ secrets.GITEATOKEN }} - ARTIFACT_NAME: webapi - RUN_ID: ${{ steps.resolve.outputs.run_id }} - OUTPUT_DIR: artifacts/webapi - run: | - node .gitea/scripts/downloadArtifactByName.js - - - name: Show artifact structure - run: | - echo "::group::frontend" - ls -laR artifacts/frontend || true - echo "::endgroup::" - echo "::group::webapi" - ls -laR artifacts/webapi || true - echo "::endgroup::" - - - name: Tokenize (replace #{...}# from secrets/vars) - env: - SECRETS: ${{ toJson(secrets) }} - VARIABLES: ${{ toJson(vars) }} - RUN_ID: ${{ steps.resolve.outputs.run_id }} - run: | - set -euo pipefail - node .gitea/scripts/replaceTokens.js - - - name: Package artifacts as ZIPs - run: | - mkdir -p build - (cd artifacts/frontend && zip -rq ../../build/DiunaBI-Morska-Frontend.zip .) - (cd artifacts/webapi && zip -rq ../../build/DiunaBI-Morska-WebApi.zip .) - ls -la build - - - name: Upload artifacts to remote server - env: - SSH_PRIVATE_KEY: ${{ secrets.GITEARUNNER_SSH_KEY }} - SSH_USER: mz - SSH_HOST: bim-it.pl - REMOTE_DIR: deployment - run: | - set -euo pipefail - - umask 077 - echo "$SSH_PRIVATE_KEY" > private_key - chmod 600 private_key - - mkdir -p ~/.ssh - ssh-keyscan -H "$SSH_HOST" >> ~/.ssh/known_hosts - - ssh -i private_key "$SSH_USER@$SSH_HOST" "mkdir -p ~/$REMOTE_DIR" - - scp -i private_key build/DiunaBI-Morska-Frontend.zip "$SSH_USER@$SSH_HOST:~/$REMOTE_DIR/" - scp -i private_key build/DiunaBI-Morska-WebApi.zip "$SSH_USER@$SSH_HOST:~/$REMOTE_DIR/" - - shred -u private_key - - - name: Run release script on remote server - env: - SSH_PRIVATE_KEY: ${{ secrets.GITEARUNNER_SSH_KEY }} - SSH_USER: mz - SSH_HOST: bim-it.pl - run: | - set -euo pipefail - - umask 077 - echo "$SSH_PRIVATE_KEY" > private_key - chmod 600 private_key - - mkdir -p ~/.ssh - ssh-keyscan -H "$SSH_HOST" >> ~/.ssh/known_hosts - - ssh -i private_key "$SSH_USER@$SSH_HOST" "./deployment/DiunaBI-Morska.Release.sh" - - shred -u private_key \ No newline at end of file diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000..939e113 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,47 @@ +{ + "version": "0.2.0", + "configurations": [ + { + "name": "API", + "type": "coreclr", + "request": "launch", + "preLaunchTask": "build-api", + "program": "${workspaceFolder}/DiunaBI.API/bin/Debug/net10.0/DiunaBI.API.dll", + "args": [], + "cwd": "${workspaceFolder}/DiunaBI.API", + "stopAtEntry": false, + "env": { + "ASPNETCORE_ENVIRONMENT": "Development" + } + }, + { + "name": "Web", + "type": "coreclr", + "request": "launch", + "preLaunchTask": "build-web", + "program": "${workspaceFolder}/DiunaBI.UI.Web/bin/Debug/net10.0/DiunaBI.UI.Web.dll", + "args": [], + "cwd": "${workspaceFolder}/DiunaBI.UI.Web", + "stopAtEntry": false, + "serverReadyAction": { + "action": "openExternally", + "pattern": "\\bNow listening on:\\s+(https?://\\S+)", + "uriFormat": "%s" + }, + "env": { + "ASPNETCORE_ENVIRONMENT": "Development" + }, + "launchBrowser": { + "enabled": true, + "args": "${auto-detect-url}", + "browser": [ + { + "osx": "Google Chrome", + "linux": "chrome", + "windows": "chrome" + } + ] + } + } + ] +} \ No newline at end of file diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000..8c40ed2 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,114 @@ +{ + "version": "2.0.0", + "tasks": [ + { + "label": "build-api", + "command": "dotnet", + "type": "process", + "args": [ + "build", + "${workspaceFolder}/DiunaBI.API/DiunaBI.API.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "build-web", + "command": "dotnet", + "type": "process", + "args": [ + "build", + "${workspaceFolder}/DiunaBI.UI.Web/DiunaBI.UI.Web.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "publish-api", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "${workspaceFolder}/DiunaBI.API/DiunaBI.API.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "publish-web", + "command": "dotnet", + "type": "process", + "args": [ + "publish", + "${workspaceFolder}/DiunaBI.UI.Web/DiunaBI.UI.Web.csproj", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "watch-api", + "command": "dotnet", + "type": "process", + "args": [ + "watch", + "run", + "--project", + "${workspaceFolder}/DiunaBI.API/DiunaBI.API.csproj" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "watch-web", + "command": "dotnet", + "type": "process", + "args": [ + "watch", + "run", + "--project", + "${workspaceFolder}/DiunaBI.UI.Web/DiunaBI.UI.Web.csproj" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "build-mobile-ios", + "command": "dotnet", + "type": "process", + "args": [ + "build", + "${workspaceFolder}/DiunaBI.UI.Mobile/DiunaBI.UI.Mobile.csproj", + "-f", + "net10.0-ios", + "/property:GenerateFullPaths=true", + "/consoleloggerparameters:NoSummary;ForceNoAlign" + ], + "problemMatcher": "$msCompile" + }, + { + "label": "run-mobile-ios", + "command": "dotnet", + "type": "shell", + "args": [ + "build", + "${workspaceFolder}/DiunaBI.UI.Mobile/DiunaBI.UI.Mobile.csproj", + "-f", + "net10.0-ios", + "-t:Run", + "/p:_DeviceName=:v2:udid=B72F13ED-156F-481D-80EE-6A17494DBB70" + ], + "problemMatcher": [], + "presentation": { + "reveal": "always", + "panel": "dedicated", + "focus": false + }, + "group": { + "kind": "build", + "isDefault": false + } + } + ] +} diff --git a/DiunaBI.code-workspace b/DiunaBI.code-workspace new file mode 100644 index 0000000..876a149 --- /dev/null +++ b/DiunaBI.code-workspace @@ -0,0 +1,8 @@ +{ + "folders": [ + { + "path": "." + } + ], + "settings": {} +} \ No newline at end of file