Compare commits
22 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| 2f60fbf655 | |||
| f68fb10bac | |||
| c1b7d29eb8 | |||
| ce3505cd33 | |||
| e97397ddbf | |||
| 6ed3de2749 | |||
| 3e7120c041 | |||
| 784f4bdbfb | |||
| 28e1a8775f | |||
| fe8ff44d3f | |||
| d5d630a816 | |||
| 60022ed214 | |||
| 90bbb1860d | |||
| 3e4d545e01 | |||
| e4290ef3c6 | |||
| 4de9339163 | |||
| bdb9262f4e | |||
| 8bd678c7c7 | |||
| 24c1cce542 | |||
| 1255e67765 | |||
| a02543981e | |||
| fdfd50bdca |
+177
-160
@@ -2,193 +2,210 @@ name: Deploy to Production
|
|||||||
|
|
||||||
on:
|
on:
|
||||||
push:
|
push:
|
||||||
branches: [ main ]
|
branches:
|
||||||
|
- main
|
||||||
workflow_dispatch:
|
workflow_dispatch:
|
||||||
|
|
||||||
|
concurrency:
|
||||||
|
group: deploy-prod-main
|
||||||
|
cancel-in-progress: true
|
||||||
|
|
||||||
env:
|
env:
|
||||||
DEPLOY_HOST: 172.17.0.1
|
DEPLOY_HOST: 178.104.200.7
|
||||||
DEPLOY_USER: kjh2064
|
DEPLOY_USER: kjh2064
|
||||||
DEPLOY_PATH: /home/kjh2064/quantengine_active
|
|
||||||
SERVICE_NAME: quantengine
|
SERVICE_NAME: quantengine
|
||||||
DOTNET_VERSION: '10.0.x'
|
DOTNET_VERSION: '10.0.x'
|
||||||
TELEGRAM_BOT_TOKEN_DEFAULT: "8734507814:AAFyacLMai8GB4K-hQ_Nd3t3D01A-h1ZdV0"
|
QUANTENGINE_DB_NAME: quantenginedb
|
||||||
|
QUANTENGINE_DB_USER: quantengine_app
|
||||||
|
TELEGRAM_BOT_TOKEN_DEFAULT: "8734507814:AAFyacLMai8GB4K-hQ_Nd3t3D01A-H1ZdV0"
|
||||||
TELEGRAM_CHAT_ID_DEFAULT: "-5460205872"
|
TELEGRAM_CHAT_ID_DEFAULT: "-5460205872"
|
||||||
|
|
||||||
jobs:
|
jobs:
|
||||||
build-and-deploy:
|
build-and-deploy:
|
||||||
name: Build & Deploy to Production
|
name: Build & Deploy to Production
|
||||||
runs-on: ubuntu-latest
|
runs-on: ubuntu-latest
|
||||||
|
timeout-minutes: 15
|
||||||
|
|
||||||
steps:
|
steps:
|
||||||
- name: Checkout Code
|
- name: Checkout Code
|
||||||
uses: actions/checkout@v3
|
uses: actions/checkout@v3
|
||||||
with:
|
|
||||||
fetch-depth: 0
|
|
||||||
|
|
||||||
- name: Setup .NET
|
- name: Setup .NET
|
||||||
uses: actions/setup-dotnet@v3
|
uses: actions/setup-dotnet@v3
|
||||||
with:
|
with:
|
||||||
dotnet-version: ${{ env.DOTNET_VERSION }}
|
dotnet-version: ${{ env.DOTNET_VERSION }}
|
||||||
|
|
||||||
- name: Setup Python
|
- name: Setup Python
|
||||||
uses: actions/setup-python@v4
|
uses: actions/setup-python@v4
|
||||||
with:
|
with:
|
||||||
python-version: '3.10'
|
python-version: '3.10'
|
||||||
|
|
||||||
- name: Install Python Dependencies
|
- name: Install Python Dependencies
|
||||||
run: pip install pyyaml openpyxl requests
|
run: pip install pyyaml openpyxl requests
|
||||||
|
|
||||||
- name: "[GATE] Run Core Validations"
|
- name: "[GATE] Run Core Validations"
|
||||||
run: |
|
run: |
|
||||||
echo "🔐 Running critical CI validations..."
|
echo "🔐 Running critical CI validations..."
|
||||||
python3 tools/validate_no_direct_api_trading_v1.py || exit 1
|
python3 tools/validate_no_direct_api_trading_v1.py || exit 1
|
||||||
python3 tools/validate_specs.py || exit 1
|
python3 tools/validate_specs.py || exit 1
|
||||||
echo "✅ All critical validations passed"
|
echo "✅ All critical validations passed"
|
||||||
|
|
||||||
- name: Ensure Temp Directory and Mock Packet
|
- name: Ensure Temp Directory and Mock Packet
|
||||||
run: |
|
run: |
|
||||||
mkdir -p Temp
|
mkdir -p Temp
|
||||||
# 빈 패킷 객체를 생성하여 dotnet test/run 시 IO Exception 방어
|
if [ ! -f Temp/final_decision_packet_active.json ]; then
|
||||||
if [ ! -f Temp/final_decision_packet_active.json ]; then
|
echo '{"active_decision": "PASS", "details": "CI dummy packet"}' > Temp/final_decision_packet_active.json
|
||||||
echo '{"active_decision": "PASS", "details": "CI dummy packet"}' > Temp/final_decision_packet_active.json
|
fi
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Restore Dependencies
|
- name: Restore Dependencies
|
||||||
run: dotnet restore src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj
|
run: dotnet restore src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj
|
||||||
|
|
||||||
- name: Build Release
|
- name: Build Release
|
||||||
run: |
|
run: |
|
||||||
dotnet build src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj \
|
dotnet build src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj \
|
||||||
-c Release \
|
-c Release \
|
||||||
--no-restore \
|
--no-restore
|
||||||
-p:Version=1.0.${{ github.run_number }}
|
|
||||||
|
|
||||||
- name: Run Unit Tests
|
- name: Run Unit Tests
|
||||||
run: |
|
run: |
|
||||||
if [ -d tests/unit ]; then
|
dotnet test src/dotnet/QuantEngine.Core.Tests/QuantEngine.Core.Tests.csproj \
|
||||||
dotnet test tests/unit \
|
-c Release \
|
||||||
|
--no-build
|
||||||
|
|
||||||
|
- name: Publish Release Package
|
||||||
|
run: |
|
||||||
|
dotnet publish src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj \
|
||||||
-c Release \
|
-c Release \
|
||||||
--no-build \
|
--no-build \
|
||||||
|| echo "⚠️ Some tests failed (non-blocking for web service)"
|
-o ./publish
|
||||||
fi
|
|
||||||
|
|
||||||
- name: Publish Release Package
|
- name: Generate Build Info
|
||||||
run: |
|
run: |
|
||||||
dotnet publish src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj \
|
COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||||
-c Release \
|
BUILD_TIME=$(date -d "+9 hours" +'%Y-%m-%d %H:%M:%S KST')
|
||||||
--no-build \
|
mkdir -p ./publish/wwwroot
|
||||||
-o ./publish-output
|
printf '{\n "version": "1.0.%s-%s",\n "built": "%s"\n}\n' "${{ github.run_number }}" "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
||||||
|
echo "✓ Generated version info: 1.0.${{ github.run_number }}-$COMMIT_HASH @ $BUILD_TIME"
|
||||||
|
|
||||||
- name: Generate Build Info
|
- name: Setup SSH
|
||||||
run: |
|
run: |
|
||||||
COMMIT_HASH=$(git rev-parse --short HEAD)
|
mkdir -p ~/.ssh
|
||||||
BUILD_TIME=$(date -d "+9 hours" +'%Y-%m-%d %H:%M:%S KST')
|
chmod 700 ~/.ssh
|
||||||
mkdir -p ./publish-output/wwwroot
|
if echo "${{ secrets.SSH_PRIVATE_KEY }}" | grep -q "BEGIN"; then
|
||||||
printf '{\n "version": "1.0.%s-%s",\n "built": "%s"\n}\n' "${{ github.run_number }}" "$COMMIT_HASH" "$BUILD_TIME" > ./publish-output/wwwroot/version.json
|
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
||||||
echo "✓ Generated version info: 1.0.${{ github.run_number }}-$COMMIT_HASH @ $BUILD_TIME"
|
else
|
||||||
|
echo "${{ secrets.SSH_PRIVATE_KEY }}" | base64 -d > ~/.ssh/id_ed25519 || echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
||||||
|
|
||||||
- name: Setup SSH
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.ssh
|
|
||||||
chmod 700 ~/.ssh
|
|
||||||
# SSH_PRIVATE_KEY가 평문 PEM이든 base64든 유연하게 처리
|
|
||||||
if echo "${{ secrets.SSH_PRIVATE_KEY }}" | grep -q "BEGIN"; then
|
|
||||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
|
||||||
else
|
|
||||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" | base64 -d > ~/.ssh/id_ed25519 || echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
|
||||||
fi
|
|
||||||
chmod 600 ~/.ssh/id_ed25519
|
|
||||||
ssh-keyscan -H ${{ env.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null || true
|
|
||||||
|
|
||||||
- name: Package Artifact
|
|
||||||
run: |
|
|
||||||
tar -czf quant_engine_deploy.tgz -C ./publish-output .
|
|
||||||
echo "✓ Package size: $(du -sh quant_engine_deploy.tgz | cut -f1)"
|
|
||||||
|
|
||||||
- name: Deploy & Verify on Server
|
|
||||||
run: |
|
|
||||||
set -e
|
|
||||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
|
||||||
COMMIT=$(git rev-parse --short HEAD)
|
|
||||||
DEPLOY_HOST="${{ env.DEPLOY_HOST }}"
|
|
||||||
DEPLOY_USER="${{ env.DEPLOY_USER }}"
|
|
||||||
|
|
||||||
# 텔레그램 설정 바인딩 (Secret에 없을 경우 기본값 백업 사용)
|
|
||||||
TELEGRAM_BOT_TOKEN="${{ secrets.TELEGRAM_BOT_TOKEN }}"
|
|
||||||
[ -z "$TELEGRAM_BOT_TOKEN" ] && TELEGRAM_BOT_TOKEN="${{ env.TELEGRAM_BOT_TOKEN_DEFAULT }}"
|
|
||||||
TELEGRAM_CHAT_ID="${{ secrets.TELEGRAM_CHAT_ID }}"
|
|
||||||
[ -z "$TELEGRAM_CHAT_ID" ] && TELEGRAM_CHAT_ID="${{ env.TELEGRAM_CHAT_ID_DEFAULT }}"
|
|
||||||
|
|
||||||
send_telegram() {
|
|
||||||
local text="$1"
|
|
||||||
curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
|
||||||
-d "chat_id=${TELEGRAM_CHAT_ID}" \
|
|
||||||
--data-urlencode "text=${text}" \
|
|
||||||
-d "parse_mode=HTML" >/dev/null || true
|
|
||||||
}
|
|
||||||
|
|
||||||
notify_failure() {
|
|
||||||
local exit_code=$?
|
|
||||||
send_telegram "❌ <b>QuantEngine 배포 실패</b>
|
|
||||||
|
|
||||||
커밋: <code>${COMMIT}</code>
|
|
||||||
시간: <code>${TIMESTAMP}</code>
|
|
||||||
단계: deploy-to-prod (SSH Execution)"
|
|
||||||
exit "$exit_code"
|
|
||||||
}
|
|
||||||
|
|
||||||
trap notify_failure ERR
|
|
||||||
|
|
||||||
echo "=== Deploying QuantEngine $COMMIT ($TIMESTAMP) ==="
|
|
||||||
|
|
||||||
# 1. 아티팩트 복사
|
|
||||||
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
|
||||||
quant_engine_deploy.tgz "$DEPLOY_USER@$DEPLOY_HOST:/tmp/quantengine_${TIMESTAMP}.tgz"
|
|
||||||
|
|
||||||
# 2. 원격 배포 명령어 통합 (SSH 1회 연결)
|
|
||||||
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
|
||||||
-o ServerAliveInterval=10 \
|
|
||||||
"$DEPLOY_USER@$DEPLOY_HOST" bash << REMOTE
|
|
||||||
set -e
|
|
||||||
DEPLOY_HOME="/home/kjh2064"
|
|
||||||
DEPLOY_DIR="\$DEPLOY_HOME/deployments/quantengine_${TIMESTAMP}"
|
|
||||||
|
|
||||||
echo "--- [1/4] 압축 해제 ---"
|
|
||||||
mkdir -p "\$DEPLOY_DIR"
|
|
||||||
tar -xzf "/tmp/quantengine_${TIMESTAMP}.tgz" -C "\$DEPLOY_DIR"
|
|
||||||
rm -f "/tmp/quantengine_${TIMESTAMP}.tgz"
|
|
||||||
|
|
||||||
echo "--- [2/4] 심볼릭 링크 전환 ---"
|
|
||||||
ln -sfn "\$DEPLOY_DIR" "${{ env.DEPLOY_PATH }}"
|
|
||||||
|
|
||||||
echo "--- [3/4] 서비스 재시작 ---"
|
|
||||||
sudo /usr/bin/systemctl restart ${{ env.SERVICE_NAME }}
|
|
||||||
|
|
||||||
echo "--- [4/4] 헬스 체크 ---"
|
|
||||||
ATTEMPTS=20
|
|
||||||
for i in \$(seq 1 \$ATTEMPTS); do
|
|
||||||
STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5000/ 2>/dev/null || echo "000")
|
|
||||||
if [ "\$STATUS" = "200" ]; then
|
|
||||||
echo "✓ 헬스체크 성공 (시도 \$i/\$ATTEMPTS, HTTP 200)"
|
|
||||||
# 구 배포 폴더 정리 (최근 5개만 보존)
|
|
||||||
ls -1dt \$DEPLOY_HOME/deployments/quantengine_* 2>/dev/null | tail -n +6 | xargs rm -rf 2>/dev/null || true
|
|
||||||
exit 0
|
|
||||||
fi
|
fi
|
||||||
if [ "\$i" -eq "\$ATTEMPTS" ]; then
|
chmod 600 ~/.ssh/id_ed25519
|
||||||
echo "=== FATAL: 서비스가 헬스체크 응답을 하지 않음 ===" >&2
|
ssh-keyscan -H ${{ env.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||||
systemctl is-active ${{ env.SERVICE_NAME }} >&2 || true
|
|
||||||
journalctl -u ${{ env.SERVICE_NAME }} --no-pager -n 50 >&2
|
- name: Prepare QuantEngine DB Env
|
||||||
|
run: |
|
||||||
|
mkdir -p ./deploy
|
||||||
|
cat > ./deploy/quantengine.env <<EOF
|
||||||
|
ConnectionStrings__DefaultConnection=Host=127.0.0.1;Database=${QUANTENGINE_DB_NAME};Username=${QUANTENGINE_DB_USER};Password=${{ secrets.QUANTENGINE_DB_PASSWORD }};Search Path=quantengine;
|
||||||
|
EOF
|
||||||
|
chmod 600 ./deploy/quantengine.env
|
||||||
|
|
||||||
|
- name: Package Artifact
|
||||||
|
run: |
|
||||||
|
tar -czf quantengine.tar.gz -C ./publish .
|
||||||
|
echo "✓ Package size: $(du -sh quantengine.tar.gz | cut -f1)"
|
||||||
|
|
||||||
|
- name: Deploy & Verify on Server
|
||||||
|
run: |
|
||||||
|
set -e
|
||||||
|
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
||||||
|
COMMIT=$(git rev-parse --short HEAD)
|
||||||
|
DEPLOY_HOST="${{ env.DEPLOY_HOST }}"
|
||||||
|
DEPLOY_USER="${{ env.DEPLOY_USER }}"
|
||||||
|
|
||||||
|
TELEGRAM_BOT_TOKEN="${{ secrets.TELEGRAM_BOT_TOKEN }}"
|
||||||
|
[ -z "$TELEGRAM_BOT_TOKEN" ] && TELEGRAM_BOT_TOKEN="${{ env.TELEGRAM_BOT_TOKEN_DEFAULT }}"
|
||||||
|
TELEGRAM_CHAT_ID="${{ secrets.TELEGRAM_CHAT_ID }}"
|
||||||
|
[ -z "$TELEGRAM_CHAT_ID" ] && TELEGRAM_CHAT_ID="${{ env.TELEGRAM_CHAT_ID_DEFAULT }}"
|
||||||
|
|
||||||
|
send_telegram() {
|
||||||
|
local text="$1"
|
||||||
|
curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
||||||
|
-d "chat_id=${TELEGRAM_CHAT_ID}" \
|
||||||
|
--data-urlencode "text=${text}" \
|
||||||
|
-d "parse_mode=HTML" >/dev/null || true
|
||||||
|
}
|
||||||
|
|
||||||
|
notify_failure() {
|
||||||
|
local exit_code=$?
|
||||||
|
send_telegram "❌ <b>QuantEngine 배포 실패</b>
|
||||||
|
|
||||||
|
커밋: <code>${COMMIT}</code>
|
||||||
|
시간: <code>${TIMESTAMP}</code>
|
||||||
|
단계: deploy-to-prod (SSH Execution)"
|
||||||
|
exit "$exit_code"
|
||||||
|
}
|
||||||
|
|
||||||
|
trap notify_failure ERR
|
||||||
|
|
||||||
|
echo "=== Deploying QuantEngine $COMMIT ($TIMESTAMP) ==="
|
||||||
|
|
||||||
|
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
"$DEPLOY_USER@$DEPLOY_HOST" "mkdir -p /home/kjh2064/tmp"
|
||||||
|
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
quantengine.tar.gz "$DEPLOY_USER@$DEPLOY_HOST:/home/kjh2064/tmp/quantengine.tar.gz"
|
||||||
|
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
tools/deploy_quantengine.sh "$DEPLOY_USER@$DEPLOY_HOST:/home/kjh2064/tmp/deploy.sh"
|
||||||
|
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
deploy/quantengine.env "$DEPLOY_USER@$DEPLOY_HOST:/home/kjh2064/tmp/quantengine.env"
|
||||||
|
|
||||||
|
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
"$DEPLOY_USER@$DEPLOY_HOST" "chmod +x /home/kjh2064/tmp/deploy.sh && CI_DEPLOY=1 /home/kjh2064/tmp/deploy.sh"
|
||||||
|
|
||||||
|
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 \
|
||||||
|
"$DEPLOY_USER@$DEPLOY_HOST" "mkdir -p /home/kjh2064/.config && install -m 600 /home/kjh2064/tmp/quantengine.env /home/kjh2064/.config/quantengine.env && rm -f /home/kjh2064/tmp/quantengine.env"
|
||||||
|
|
||||||
|
echo "=== Verifying Loopback Health ==="
|
||||||
|
loopback_headers=$(ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 "$DEPLOY_USER@$DEPLOY_HOST" "curl -s -D - -o /dev/null http://127.0.0.1:5000/")
|
||||||
|
echo "$loopback_headers"
|
||||||
|
if ! printf '%s' "$loopback_headers" | grep -qE '^HTTP/1\.[01] 30[12] '; then
|
||||||
|
echo "Loopback health check failed for quantengine" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if ! printf '%s' "$loopback_headers" | grep -qiE '^Location: /login'; then
|
||||||
|
echo "Loopback redirect target is unexpected" >&2
|
||||||
exit 1
|
exit 1
|
||||||
fi
|
fi
|
||||||
echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)"
|
|
||||||
sleep 3
|
|
||||||
done
|
|
||||||
REMOTE
|
|
||||||
|
|
||||||
echo "✓ 배포 완료: quantengine_${TIMESTAMP} @ $DEPLOY_HOST"
|
echo "=== Verifying Favicon Assets ==="
|
||||||
send_telegram "✅ <b>QuantEngine 배포 완료</b>
|
favicon_svg_code=$(curl -s -o /dev/null -w "%{http_code}" "http://${DEPLOY_HOST}/favicon.svg")
|
||||||
|
favicon_png_code=$(curl -s -o /dev/null -w "%{http_code}" "http://${DEPLOY_HOST}/favicon.png")
|
||||||
커밋: <code>${COMMIT}</code>
|
echo "/favicon.svg -> ${favicon_svg_code}"
|
||||||
시간: <code>${TIMESTAMP}</code>
|
echo "/favicon.png -> ${favicon_png_code}"
|
||||||
대상: <code>${DEPLOY_HOST}</code>"
|
if [ "$favicon_svg_code" != "200" ] && [ "$favicon_png_code" != "200" ]; then
|
||||||
|
echo "Favicon assets are not reachable after deploy" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "=== Verifying Public Routes ==="
|
||||||
|
public_root_headers=$(curl -s -D - -o /dev/null "https://quant.taxbaik.com/")
|
||||||
|
login_headers=$(curl -s -D - -o /dev/null "https://quant.taxbaik.com/login")
|
||||||
|
|
||||||
|
public_root_code=$(printf '%s' "$public_root_headers" | awk 'NR==1 {print $2}')
|
||||||
|
login_code=$(printf '%s' "$login_headers" | awk 'NR==1 {print $2}')
|
||||||
|
|
||||||
|
echo "https://quant.taxbaik.com/ -> ${public_root_code}"
|
||||||
|
echo "https://quant.taxbaik.com/login -> ${login_code}"
|
||||||
|
|
||||||
|
if [ "$public_root_code" != "302" ] && [ "$public_root_code" != "200" ]; then
|
||||||
|
echo "Deployment content check failed for public root" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
if [ "$login_code" != "200" ]; then
|
||||||
|
echo "Deployment content check failed for login page" >&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
echo "✓ 배포 완료: quantengine_${TIMESTAMP} @ $DEPLOY_HOST"
|
||||||
|
send_telegram "✅ <b>QuantEngine 배포 완료</b>
|
||||||
|
|
||||||
|
커밋: <code>${COMMIT}</code>
|
||||||
|
시간: <code>${TIMESTAMP}</code>
|
||||||
|
대상: <code>${DEPLOY_HOST}</code>"
|
||||||
|
|||||||
@@ -1,131 +0,0 @@
|
|||||||
name: Snapshot Admin Deployment
|
|
||||||
|
|
||||||
on:
|
|
||||||
push:
|
|
||||||
branches:
|
|
||||||
- main
|
|
||||||
workflow_dispatch:
|
|
||||||
|
|
||||||
concurrency:
|
|
||||||
group: snapshot-admin-deploy-main
|
|
||||||
cancel-in-progress: true
|
|
||||||
|
|
||||||
env:
|
|
||||||
DEPLOY_HOST: 178.104.200.7
|
|
||||||
DEPLOY_USER: kjh2064
|
|
||||||
TELEGRAM_BOT_TOKEN_DEFAULT: "8734507814:AAFyacLMai8GB4K-hQ_Nd3t3D01A-h1ZdV0"
|
|
||||||
TELEGRAM_CHAT_ID_DEFAULT: "-5460205872"
|
|
||||||
|
|
||||||
jobs:
|
|
||||||
build-and-deploy:
|
|
||||||
runs-on: ubuntu-latest
|
|
||||||
timeout-minutes: 15
|
|
||||||
steps:
|
|
||||||
- name: Checkout Code
|
|
||||||
uses: actions/checkout@v3
|
|
||||||
|
|
||||||
- name: Setup .NET SDK
|
|
||||||
uses: actions/setup-dotnet@v3
|
|
||||||
with:
|
|
||||||
dotnet-version: '10.0.x'
|
|
||||||
|
|
||||||
- name: Publish Blazor Web App
|
|
||||||
run: |
|
|
||||||
echo "[deploy] publishing .NET 10 Blazor app"
|
|
||||||
dotnet publish src/dotnet/QuantEngine.Web/QuantEngine.Web.csproj -c Release -o ./publish
|
|
||||||
|
|
||||||
- name: Generate Build Info
|
|
||||||
run: |
|
|
||||||
COMMIT_HASH=$(git rev-parse --short HEAD)
|
|
||||||
BUILD_TIME=$(date -d "+9 hours" +'%Y-%m-%d %H:%M:%S KST')
|
|
||||||
mkdir -p ./publish/wwwroot
|
|
||||||
printf '{\n "version": "1.0.%s-%s",\n "built": "%s"\n}\n' "${{ github.run_number }}" "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
|
||||||
echo "✓ Generated version info: 1.0.${{ github.run_number }}-$COMMIT_HASH @ $BUILD_TIME"
|
|
||||||
|
|
||||||
|
|
||||||
- name: Compress Artifact
|
|
||||||
run: |
|
|
||||||
echo "[deploy] compressing publish output"
|
|
||||||
tar -czf quantengine.tar.gz -C ./publish .
|
|
||||||
|
|
||||||
- name: Setup SSH
|
|
||||||
run: |
|
|
||||||
mkdir -p ~/.ssh
|
|
||||||
chmod 700 ~/.ssh
|
|
||||||
if echo "${{ secrets.SSH_PRIVATE_KEY }}" | grep -q "BEGIN"; then
|
|
||||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
|
||||||
else
|
|
||||||
echo "${{ secrets.SSH_PRIVATE_KEY }}" | base64 -d > ~/.ssh/id_ed25519 || echo "${{ secrets.SSH_PRIVATE_KEY }}" > ~/.ssh/id_ed25519
|
|
||||||
fi
|
|
||||||
chmod 600 ~/.ssh/id_ed25519
|
|
||||||
ssh-keyscan -H ${{ env.DEPLOY_HOST }} >> ~/.ssh/known_hosts 2>/dev/null || true
|
|
||||||
|
|
||||||
- name: Deploy & Verify on Server
|
|
||||||
run: |
|
|
||||||
set -e
|
|
||||||
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
|
|
||||||
COMMIT=$(git rev-parse --short HEAD)
|
|
||||||
DEPLOY_HOST="${{ env.DEPLOY_HOST }}"
|
|
||||||
DEPLOY_USER="${{ env.DEPLOY_USER }}"
|
|
||||||
|
|
||||||
TELEGRAM_BOT_TOKEN="${{ secrets.TELEGRAM_BOT_TOKEN }}"
|
|
||||||
[ -z "$TELEGRAM_BOT_TOKEN" ] && TELEGRAM_BOT_TOKEN="${{ env.TELEGRAM_BOT_TOKEN_DEFAULT }}"
|
|
||||||
TELEGRAM_CHAT_ID="${{ secrets.TELEGRAM_CHAT_ID }}"
|
|
||||||
[ -z "$TELEGRAM_CHAT_ID" ] && TELEGRAM_CHAT_ID="${{ env.TELEGRAM_CHAT_ID_DEFAULT }}"
|
|
||||||
|
|
||||||
send_telegram() {
|
|
||||||
local text="$1"
|
|
||||||
curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
|
||||||
-d "chat_id=${TELEGRAM_CHAT_ID}" \
|
|
||||||
--data-urlencode "text=${text}" \
|
|
||||||
-d "parse_mode=HTML" >/dev/null || true
|
|
||||||
}
|
|
||||||
|
|
||||||
notify_failure() {
|
|
||||||
local exit_code=$?
|
|
||||||
send_telegram "❌ <b>Snapshot Admin 배포 실패</b>
|
|
||||||
|
|
||||||
커밋: <code>${COMMIT}</code>
|
|
||||||
시간: <code>${TIMESTAMP}</code>
|
|
||||||
단계: snapshot_admin_deploy (Deploy Execution)"
|
|
||||||
exit "$exit_code"
|
|
||||||
}
|
|
||||||
|
|
||||||
trap notify_failure ERR
|
|
||||||
|
|
||||||
echo "=== Deploying Snapshot Admin $COMMIT ($TIMESTAMP) ==="
|
|
||||||
|
|
||||||
# 1. 원격지 임시 폴더 생성 및 업로드
|
|
||||||
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 "$DEPLOY_USER@$DEPLOY_HOST" "mkdir -p /home/kjh2064/tmp"
|
|
||||||
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 quantengine.tar.gz "$DEPLOY_USER@$DEPLOY_HOST:/home/kjh2064/tmp/quantengine.tar.gz"
|
|
||||||
scp -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 tools/deploy_quantengine.sh "$DEPLOY_USER@$DEPLOY_HOST:/home/kjh2064/tmp/deploy.sh"
|
|
||||||
|
|
||||||
# 2. 배포 스크립트 실행
|
|
||||||
ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null -i ~/.ssh/id_ed25519 "$DEPLOY_USER@$DEPLOY_HOST" "chmod +x /home/kjh2064/tmp/deploy.sh && /home/kjh2064/tmp/deploy.sh"
|
|
||||||
|
|
||||||
# 3. 배포 성공 검증
|
|
||||||
echo "=== Verifying Public Routes ==="
|
|
||||||
root_html=$(curl -sf "http://${DEPLOY_HOST}/quant/" 2>/dev/null || echo "")
|
|
||||||
ops_html=$(curl -sf "http://${DEPLOY_HOST}/quant/operations" 2>/dev/null || echo "")
|
|
||||||
|
|
||||||
root_code=$(printf '%s' "$root_html" | grep -q "Quant Engine" && echo 200 || echo 500)
|
|
||||||
ops_code=$(printf '%s' "$ops_html" | grep -q "Operational Report" && echo 200 || echo 500)
|
|
||||||
|
|
||||||
echo "/quant/ -> ${root_code}"
|
|
||||||
echo "/quant/operations -> ${ops_code}"
|
|
||||||
|
|
||||||
if [ "$root_code" != "200" ]; then
|
|
||||||
echo "Deployment content check failed for /quant/" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
if [ "$ops_code" != "200" ]; then
|
|
||||||
echo "Deployment content check failed for /quant/operations" >&2
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "✓ 배포 완료: quantengine_${TIMESTAMP} @ $DEPLOY_HOST"
|
|
||||||
send_telegram "✅ <b>Snapshot Admin 배포 완료</b>
|
|
||||||
|
|
||||||
커밋: <code>${COMMIT}</code>
|
|
||||||
시간: <code>${TIMESTAMP}</code>
|
|
||||||
대상: <code>${DEPLOY_HOST}</code>"
|
|
||||||
@@ -10,6 +10,13 @@ Temp/
|
|||||||
dist/
|
dist/
|
||||||
outputs/
|
outputs/
|
||||||
|
|
||||||
|
# .NET 빌드 산출물
|
||||||
|
**/bin/
|
||||||
|
**/obj/
|
||||||
|
publish-output/
|
||||||
|
*.user
|
||||||
|
*.suo
|
||||||
|
|
||||||
# 런타임 감사 로그 (append-only, 매 DAG 실행마다 증가)
|
# 런타임 감사 로그 (append-only, 매 DAG 실행마다 증가)
|
||||||
runtime/lineage_events.jsonl
|
runtime/lineage_events.jsonl
|
||||||
|
|
||||||
|
|||||||
@@ -110,6 +110,8 @@
|
|||||||
- D+2 영업일 기준 현금을 즉시방어 자산으로 간주하고, 목표 예산 5억 원을 기준으로 포지션 사이징 및 리스크 버킷을 제어한다.
|
- D+2 영업일 기준 현금을 즉시방어 자산으로 간주하고, 목표 예산 5억 원을 기준으로 포지션 사이징 및 리스크 버킷을 제어한다.
|
||||||
- 매주 주말 리밸런싱(rebalance_required=true) 및 매월 1일/11일/21일 중간점검(mid_check_required=true) 운영 cadence를 준수한다.
|
- 매주 주말 리밸런싱(rebalance_required=true) 및 매월 1일/11일/21일 중간점검(mid_check_required=true) 운영 cadence를 준수한다.
|
||||||
- 커밋, 푸쉬, PR 작업 시 반드시 로컬의 .gs 파일을 Google Apps Script 원격 프로젝트에 업로드(python tools/deploy_gas.py 실행)하고, 사용자에게 스프레드시트 상의 스크립트 실행(예: runDataFeed)을 통한 검증을 유도 및 가이드해야 한다.
|
- 커밋, 푸쉬, PR 작업 시 반드시 로컬의 .gs 파일을 Google Apps Script 원격 프로젝트에 업로드(python tools/deploy_gas.py 실행)하고, 사용자에게 스프레드시트 상의 스크립트 실행(예: runDataFeed)을 통한 검증을 유도 및 가이드해야 한다.
|
||||||
|
- QuantEngine 배포는 CI 전용이다. 로컬에서 서버로 산출물을 직접 업로드하거나 `scp`/`rsync`로 수동 반영하지 않는다. 실배포는 `.gitea/workflows/deploy-prod.yml`만 사용하며, 로컬 스크립트는 CI 환경에서만 실행 가능해야 한다.
|
||||||
|
- 원격 서버 확인이 필요하면 `ssh kjh2064@178.104.200.7` 접속을 먼저 시도하고, 사용자에게 매번 접속 확인을 요구하지 말고 직접 상태/로그/헬스체크를 수집한 뒤 결과만 보고한다.
|
||||||
|
|
||||||
## 4. 보고 규칙
|
## 4. 보고 규칙
|
||||||
- 모든 숫자에는 반드시 provenance(출처)를 남기며, 출처가 유효하지 않거나 없는 숫자는 보고서 표기를 전면 배제(DATA_MISSING 처리)한다.
|
- 모든 숫자에는 반드시 provenance(출처)를 남기며, 출처가 유효하지 않거나 없는 숫자는 보고서 표기를 전면 배제(DATA_MISSING 처리)한다.
|
||||||
|
|||||||
@@ -144,7 +144,7 @@ npm run prepare-upload-zip
|
|||||||
## CI / 배포 분리
|
## CI / 배포 분리
|
||||||
|
|
||||||
- `.gitea/workflows/ci.yml`은 검증 전용이다.
|
- `.gitea/workflows/ci.yml`은 검증 전용이다.
|
||||||
- `.gitea/workflows/snapshot_admin_deploy.yml`은 실배포 전용이다.
|
- `.gitea/workflows/deploy-prod.yml`은 실배포 전용이다.
|
||||||
- 공개 URL `http://178.104.200.7/quant/` 갱신은 deploy workflow 성공 여부로 판단한다.
|
- 공개 URL `http://178.104.200.7/quant/` 갱신은 deploy workflow 성공 여부로 판단한다.
|
||||||
|
|
||||||
## 운영 리포트 계약
|
## 운영 리포트 계약
|
||||||
|
|||||||
@@ -0,0 +1,79 @@
|
|||||||
|
# HTTP 80 ➜ HTTPS 443 Redirect
|
||||||
|
server {
|
||||||
|
listen 80;
|
||||||
|
listen [::]:80;
|
||||||
|
server_name taxbaik.com www.taxbaik.com gitea.taxbaik.com quant.taxbaik.com;
|
||||||
|
return 301 https://$host$request_uri;
|
||||||
|
}
|
||||||
|
|
||||||
|
# TaxBaik 홈페이지 (통합 앱)
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
listen [::]:443 ssl;
|
||||||
|
server_name taxbaik.com www.taxbaik.com;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/taxbaik.com/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/taxbaik.com/privkey.pem;
|
||||||
|
|
||||||
|
client_max_body_size 512M;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:5001/taxbaik/;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "Upgrade";
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# Gitea (코드 저장소)
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
listen [::]:443 ssl;
|
||||||
|
server_name gitea.taxbaik.com;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/taxbaik.com/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/taxbaik.com/privkey.pem;
|
||||||
|
|
||||||
|
client_max_body_size 512M;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:3000;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
proxy_read_timeout 300;
|
||||||
|
proxy_connect_timeout 300;
|
||||||
|
proxy_send_timeout 300;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
# QuantEngine (Blazor Admin)
|
||||||
|
server {
|
||||||
|
listen 443 ssl;
|
||||||
|
listen [::]:443 ssl;
|
||||||
|
server_name quant.taxbaik.com;
|
||||||
|
|
||||||
|
ssl_certificate /etc/letsencrypt/live/taxbaik.com/fullchain.pem;
|
||||||
|
ssl_certificate_key /etc/letsencrypt/live/taxbaik.com/privkey.pem;
|
||||||
|
|
||||||
|
client_max_body_size 512M;
|
||||||
|
|
||||||
|
location / {
|
||||||
|
proxy_pass http://127.0.0.1:5000/;
|
||||||
|
proxy_http_version 1.1;
|
||||||
|
proxy_set_header Upgrade $http_upgrade;
|
||||||
|
proxy_set_header Connection "Upgrade";
|
||||||
|
proxy_set_header Host $host;
|
||||||
|
proxy_cache_bypass $http_upgrade;
|
||||||
|
proxy_set_header X-Real-IP $remote_addr;
|
||||||
|
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||||
|
proxy_set_header X-Forwarded-Proto $scheme;
|
||||||
|
}
|
||||||
|
}
|
||||||
+62
-68
@@ -16,8 +16,8 @@
|
|||||||
| 3.2 | [Python 가상 환경](#32-python-가상-환경) | `~/.venv`, `python3` 사용 규칙 |
|
| 3.2 | [Python 가상 환경](#32-python-가상-환경) | `~/.venv`, `python3` 사용 규칙 |
|
||||||
| 3.3 | [주요 Python 패키지](#33-주요-python-패키지-시스템) | 시스템/venv 패키지 구분 |
|
| 3.3 | [주요 Python 패키지](#33-주요-python-패키지-시스템) | 시스템/venv 패키지 구분 |
|
||||||
| 4 | [서비스 아키텍처](#4-서비스-아키텍처) | 포트 맵, Nginx 리버스 프록시 |
|
| 4 | [서비스 아키텍처](#4-서비스-아키텍처) | 포트 맵, Nginx 리버스 프록시 |
|
||||||
| 4.1 | [포트 맵](#41-포트-맵) | 22, 80, 2222, 3000, 5000, 5432 |
|
| 4.1 | [포트 맵](#41-포트-맵) | 22, 80, 443, 2222, 3000, 5000, 5001, 5432 |
|
||||||
| 4.2 | [Nginx 리버스 프록시](#42-nginx-리버스-프록시) | `/` → Gitea, `/quant/` → Blazor |
|
| 4.2 | [Nginx 리버스 프록시](#42-nginx-리버스-프록시) | 도메인 가상 호스트 기반 분기 |
|
||||||
| 5 | [Gitea](#5-gitea) | Docker Compose 설정, 시크릿, 데이터 경로 |
|
| 5 | [Gitea](#5-gitea) | Docker Compose 설정, 시크릿, 데이터 경로 |
|
||||||
| 5.1 | [Docker Compose](#51-docker-compose) | `gitea:1.26.4`, PG 연동 |
|
| 5.1 | [Docker Compose](#51-docker-compose) | `gitea:1.26.4`, PG 연동 |
|
||||||
| 5.2 | [시크릿 관리](#52-시크릿-관리) | `/opt/stacks/gitea/.env` |
|
| 5.2 | [시크릿 관리](#52-시크릿-관리) | `/opt/stacks/gitea/.env` |
|
||||||
@@ -117,55 +117,30 @@ boto3, cryptography, Jinja2, jsonschema, fail2ban 등 시스템 레벨로 설치
|
|||||||
| 포트 | 서비스 | 바인드 | 비고 |
|
| 포트 | 서비스 | 바인드 | 비고 |
|
||||||
|---|---|---|---|
|
|---|---|---|---|
|
||||||
| **22** | SSH | `0.0.0.0` | 공개키 전용 |
|
| **22** | SSH | `0.0.0.0` | 공개키 전용 |
|
||||||
| **80** | Nginx (리버스 프록시) | `0.0.0.0` | 외부 진입점 |
|
| **80** | Nginx (HTTP) | `0.0.0.0` | 443 HTTPS로 리다이렉트 |
|
||||||
|
| **443** | Nginx (HTTPS) | `0.0.0.0` | SSL 가상 호스트 진입점 |
|
||||||
| **2222** | Gitea SSH | `0.0.0.0` | Git SSH 접속 |
|
| **2222** | Gitea SSH | `0.0.0.0` | Git SSH 접속 |
|
||||||
| **3000** | Gitea Web | `127.0.0.1` | Nginx 프록시 경유 |
|
| **3000** | Gitea Web | `127.0.0.1` | Nginx 프록시 경유 (`gitea.taxbaik.com`) |
|
||||||
| **5000** | QuantEngine Blazor | `127.0.0.1` | Nginx `/quant/` 경유 |
|
| **5000** | QuantEngine Blazor | `127.0.0.1` | Nginx 프록시 경유 (`quant.taxbaik.com`) |
|
||||||
|
| **5001** | TaxBaik 홈페이지 | `127.0.0.1` | Nginx 프록시 경유 (`taxbaik.com` / `www.taxbaik.com`) |
|
||||||
| **5432** | PostgreSQL | `127.0.0.1` + `172.17.0.1` | 로컬 + Docker 네트워크 |
|
| **5432** | PostgreSQL | `127.0.0.1` + `172.17.0.1` | 로컬 + Docker 네트워크 |
|
||||||
|
|
||||||
### 4.2. Nginx 리버스 프록시
|
### 4.2. Nginx 리버스 프록시
|
||||||
|
|
||||||
```nginx
|
도메인 기반 가상 호스트(Virtual Host) 방식을 사용하여 각 도메인 요청을 내부 서비스로 연결하고, SSL(HTTPS)을 필수로 적용합니다. HTTP(80) 포트 요청은 자동으로 HTTPS(443)로 리다이렉트됩니다.
|
||||||
# /etc/nginx/sites-enabled/gitea-ip.conf
|
|
||||||
|
|
||||||
server {
|
상세 Nginx 설정 백업은 `deploy/nginx-taxbaik-domains.conf`에 위치합니다.
|
||||||
listen 80 default_server;
|
|
||||||
listen [::]:80 default_server;
|
|
||||||
server_name _;
|
|
||||||
client_max_body_size 512M;
|
|
||||||
|
|
||||||
# QuantEngine Blazor Web App
|
#### 가상 호스트 설정 개요
|
||||||
location /quant/ {
|
- **TaxBaik 홈페이지** (`https://taxbaik.com`, `https://www.taxbaik.com`) ➜ `http://127.0.0.1:5001/taxbaik/`
|
||||||
proxy_pass http://127.0.0.1:5000/;
|
- **Gitea (코드 저장소)** (`https://gitea.taxbaik.com`) ➜ `http://127.0.0.1:3000`
|
||||||
proxy_http_version 1.1;
|
- **QuantEngine (Blazor Admin)** (`https://quant.taxbaik.com`) ➜ `http://127.0.0.1:5000/`
|
||||||
proxy_set_header Upgrade $http_upgrade;
|
|
||||||
proxy_set_header Connection "Upgrade";
|
|
||||||
proxy_set_header Host $host;
|
|
||||||
proxy_cache_bypass $http_upgrade;
|
|
||||||
proxy_set_header X-Real-IP $remote_addr;
|
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
|
||||||
}
|
|
||||||
|
|
||||||
# Gitea (기본)
|
|
||||||
location / {
|
|
||||||
proxy_pass http://127.0.0.1:3000;
|
|
||||||
proxy_http_version 1.1;
|
|
||||||
proxy_set_header Host $host;
|
|
||||||
proxy_set_header X-Real-IP $remote_addr;
|
|
||||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
|
||||||
proxy_set_header X-Forwarded-Proto $scheme;
|
|
||||||
proxy_read_timeout 300;
|
|
||||||
proxy_connect_timeout 300;
|
|
||||||
proxy_send_timeout 300;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
```
|
|
||||||
|
|
||||||
**라우팅 요약**:
|
**라우팅 요약**:
|
||||||
- `http://178.104.200.7/` → Gitea Web UI
|
- `https://taxbaik.com` & `https://www.taxbaik.com` ➜ TaxBaik 홈페이지 (통합 앱)
|
||||||
- `http://178.104.200.7/quant/` → QuantEngine Blazor Admin
|
- `https://gitea.taxbaik.com` ➜ Gitea Web UI
|
||||||
- `ssh://178.104.200.7:2222` → Gitea Git SSH
|
- `https://quant.taxbaik.com` ➜ QuantEngine Blazor Admin
|
||||||
|
- `ssh://git@gitea.taxbaik.com:2222` ➜ Gitea Git SSH
|
||||||
|
|
||||||
## 5. Gitea
|
## 5. Gitea
|
||||||
|
|
||||||
@@ -231,8 +206,9 @@ services:
|
|||||||
### 6.4. CI / 배포 분리
|
### 6.4. CI / 배포 분리
|
||||||
|
|
||||||
- `.gitea/workflows/ci.yml`: 검증 전용. 스펙/공식/리포트/아티팩트 생성까지만 수행한다.
|
- `.gitea/workflows/ci.yml`: 검증 전용. 스펙/공식/리포트/아티팩트 생성까지만 수행한다.
|
||||||
- `.gitea/workflows/snapshot_admin_deploy.yml`: 실배포 전용. `dotnet publish` 후 `tools/deploy_quantengine.sh`를 이용해 `/home/kjh2064/quantengine_active`로 반영한다.
|
- `.gitea/workflows/deploy-prod.yml`: 실배포 전용. `dotnet publish` 후 `tools/deploy_quantengine.sh`를 이용해 `/home/kjh2064/quantengine_active`로 반영한다.
|
||||||
- 공개 URL `/quant/` 갱신은 `snapshot_admin_deploy.yml`의 성공 여부를 기준으로 판단한다.
|
- 수동 배포 금지: 로컬에서 `scp`/`rsync`로 `quantengine_active`를 갱신하지 않는다. 배포는 CI가 원격에서만 수행하고, 로컬 스크립트는 `CI_DEPLOY=1` 없이 실행되면 실패해야 한다.
|
||||||
|
- 공개 URL 갱신은 `deploy-prod.yml`의 성공 여부를 기준으로 판단한다.
|
||||||
|
|
||||||
### 6.2. 러너 설정
|
### 6.2. 러너 설정
|
||||||
|
|
||||||
@@ -335,8 +311,8 @@ ClientAliveCountMax 2
|
|||||||
|
|
||||||
- **상태**: `ENABLED=yes` (`/etc/ufw/ufw.conf`)
|
- **상태**: `ENABLED=yes` (`/etc/ufw/ufw.conf`)
|
||||||
- **로그 레벨**: `low`
|
- **로그 레벨**: `low`
|
||||||
- **외부 개방 포트**: 22 (SSH), 80 (HTTP/Nginx), 2222 (Gitea SSH)
|
- **외부 개방 포트**: 22 (SSH), 80 (HTTP), 443 (HTTPS), 2222 (Gitea SSH)
|
||||||
- **내부 전용**: 3000 (Gitea Web), 5000 (QuantEngine), 5432 (PostgreSQL)
|
- **내부 전용**: 3000 (Gitea Web), 5000 (QuantEngine), 5001 (TaxBaik Web), 5432 (PostgreSQL)
|
||||||
|
|
||||||
> 상세 규칙 확인: `sudo ufw status numbered` (TTY + sudo 비밀번호 필요)
|
> 상세 규칙 확인: `sudo ufw status numbered` (TTY + sudo 비밀번호 필요)
|
||||||
|
|
||||||
@@ -349,8 +325,9 @@ ClientAliveCountMax 2
|
|||||||
|
|
||||||
- Gitea Web: `127.0.0.1:3000` (로컬 전용)
|
- Gitea Web: `127.0.0.1:3000` (로컬 전용)
|
||||||
- QuantEngine: `127.0.0.1:5000` (로컬 전용)
|
- QuantEngine: `127.0.0.1:5000` (로컬 전용)
|
||||||
|
- TaxBaik Web: `127.0.0.1:5001` (로컬 전용)
|
||||||
- PostgreSQL: `127.0.0.1` + Docker bridge (`172.17.0.1`)
|
- PostgreSQL: `127.0.0.1` + Docker bridge (`172.17.0.1`)
|
||||||
- 외부 노출: SSH(22), HTTP(80), Gitea SSH(2222)만 개방
|
- 외부 노출: SSH(22), HTTP(80), HTTPS(443), Gitea SSH(2222)만 개방
|
||||||
|
|
||||||
## 10. 디렉토리 맵
|
## 10. 디렉토리 맵
|
||||||
|
|
||||||
@@ -390,7 +367,7 @@ ClientAliveCountMax 2
|
|||||||
| **CI Runner** | Synology Act Runner | 6× `act_runner:latest` (Docker) |
|
| **CI Runner** | Synology Act Runner | 6× `act_runner:latest` (Docker) |
|
||||||
| **DB** | SQLite (파일 기반) | PostgreSQL 18 + SQLite (하이브리드) |
|
| **DB** | SQLite (파일 기반) | PostgreSQL 18 + SQLite (하이브리드) |
|
||||||
| **웹 Admin** | 없음 | QuantEngine Blazor (.NET 10, MudBlazor) |
|
| **웹 Admin** | 없음 | QuantEngine Blazor (.NET 10, MudBlazor) |
|
||||||
| **리버스 프록시** | Synology 내장 | Nginx (`/` → Gitea, `/quant/` → Blazor) |
|
| **리버스 프록시** | Synology 내장 | Nginx 도메인 가상 호스트 및 SSL (HTTPS) 적용 (`deploy/nginx-taxbaik-domains.conf`) |
|
||||||
| **보안** | DSM 방화벽 | fail2ban + SSH 공개키 + 서비스 로컬바인드 |
|
| **보안** | DSM 방화벽 | fail2ban + SSH 공개키 + 서비스 로컬바인드 |
|
||||||
| **시크릿 관리** | `.secrets/kis_real.env` | `/opt/stacks/gitea/.env` |
|
| **시크릿 관리** | `.secrets/kis_real.env` | `/opt/stacks/gitea/.env` |
|
||||||
| **OS** | Synology DSM 7.x | Ubuntu 26.04 LTS |
|
| **OS** | Synology DSM 7.x | Ubuntu 26.04 LTS |
|
||||||
@@ -425,19 +402,9 @@ docker ps -a
|
|||||||
### QuantEngine 배포
|
### QuantEngine 배포
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# 1. 새 배포 디렉토리 생성
|
# CI에서만 배포
|
||||||
DEPLOY_DIR=~/deployments/quantengine_$(date +%Y%m%d_%H%M%S)
|
# 로컬에서 scp/rsync로 quantengine_active를 갱신하지 않는다.
|
||||||
mkdir -p "$DEPLOY_DIR"
|
# 배포는 .gitea/workflows/deploy-prod.yml 실행 결과로만 반영한다.
|
||||||
|
|
||||||
# 2. 빌드 산출물 복사 (로컬에서 scp 또는 CI에서)
|
|
||||||
scp -r publish/* kjh2064@178.104.200.7:"$DEPLOY_DIR"/
|
|
||||||
|
|
||||||
# 3. symlink 교체
|
|
||||||
ln -sfn "$DEPLOY_DIR" ~/quantengine_active
|
|
||||||
|
|
||||||
# 4. 서비스 재시작
|
|
||||||
sudo systemctl restart quantengine
|
|
||||||
sudo systemctl status quantengine
|
|
||||||
```
|
```
|
||||||
|
|
||||||
### Gitea Act Runner 등록
|
### Gitea Act Runner 등록
|
||||||
@@ -452,14 +419,20 @@ docker run -d \
|
|||||||
gitea/act_runner:latest
|
gitea/act_runner:latest
|
||||||
```
|
```
|
||||||
|
|
||||||
### SSH 접속
|
### SSH 접속 및 Git 원격 설정
|
||||||
|
|
||||||
```bash
|
```bash
|
||||||
# Windows 로컬에서
|
# Windows 로컬에서 서버 SSH 접속
|
||||||
ssh kjh2064@178.104.200.7
|
ssh kjh2064@178.104.200.7
|
||||||
|
|
||||||
# Gitea Git 접속
|
# 로컬 프로젝트의 Git Remote URL 변경 (Gitea 도메인 기반 HTTPS 적용)
|
||||||
git remote set-url origin ssh://git@178.104.200.7:2222/kjh2064/QuantEngineByItz.git
|
# 1) 현재 설정된 remote url 확인
|
||||||
|
git remote -v
|
||||||
|
# 2) 새로운 도메인 주소로 원격 URL 변경
|
||||||
|
git remote set-url origin https://gitea.taxbaik.com/kjh2064/QuantEngineByItz.git
|
||||||
|
|
||||||
|
# Gitea Git SSH 접속 (기존 2222 포트 유지)
|
||||||
|
git remote set-url origin ssh://git@gitea.taxbaik.com:2222/kjh2064/QuantEngineByItz.git
|
||||||
```
|
```
|
||||||
|
|
||||||
## 13. 검증 하네스
|
## 13. 검증 하네스
|
||||||
@@ -514,6 +487,27 @@ ssh -T -p 2222 git@178.104.200.7 2>&1 | head -1
|
|||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
> **수집 일시**: 2026-06-26 09:55 KST
|
## 14. 트러블슈팅 (Troubleshooting)
|
||||||
> **수집 방법**: `ssh kjh2064@178.104.200.7` 라이브 명령 실행
|
|
||||||
> **provenance**: 모든 값은 서버 실시간 명령 출력에서 추출. 임의 값 없음.
|
### 14.1. Certbot / APT 패키지 설치 시 Microsoft 리포지토리 404 오류
|
||||||
|
- **증상**: `sudo apt-get update` 실행 시 Microsoft 패키지 저장소에서 `404 Not Found` 에러가 발생하며 패키지 목록 갱신이 중단되고, 이로 인해 `certbot` 설치가 `sudo: certbot: command not found` 에러로 실패하는 현상.
|
||||||
|
- **원인**: Ubuntu 26.04 (Resolute) 환경에서 Microsoft의 잘못된 리포지토리(26.04 경로에 focal/20.04 릴리스가 설정된 상태)를 참조하여 발생.
|
||||||
|
- **해결 방안**:
|
||||||
|
1. 문제가 되는 Microsoft apt 소스 설정 파일을 삭제하거나 비활성화합니다.
|
||||||
|
```bash
|
||||||
|
sudo rm -f /etc/apt/sources.list.d/microsoft-prod.list
|
||||||
|
```
|
||||||
|
2. APT 패키지 목록을 다시 업데이트하고 Certbot 및 Nginx 플러그인을 설치합니다.
|
||||||
|
```bash
|
||||||
|
sudo apt-get update && sudo apt-get install -y certbot python3-certbot-nginx
|
||||||
|
```
|
||||||
|
3. 인증서 발급 및 설정을 적용합니다.
|
||||||
|
```bash
|
||||||
|
sudo certbot --nginx -d taxbaik.com -d www.taxbaik.com -d gitea.taxbaik.com -d quant.taxbaik.com --register-unsafely-without-email --agree-tos --non-interactive
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
> **수집 일시**: 2026-06-26 09:55 KST (추가 업데이트: 2026-07-01)
|
||||||
|
> **수집 방법**: `ssh kjh2064@178.104.200.7` 라이브 명령 및 트러블슈팅 사례 수집
|
||||||
|
> **provenance**: 모든 값은 서버 실시간 명령 출력 및 실제 오류 대처 조치 로그에서 추출. 임의 값 없음.
|
||||||
|
|||||||
@@ -9,7 +9,7 @@ This document outlines the security configuration, role definitions, and access
|
|||||||
The Quant Investment Engine operates strictly within the `quantengine` schema to prevent namespace pollution and protect system catalog tables.
|
The Quant Investment Engine operates strictly within the `quantengine` schema to prevent namespace pollution and protect system catalog tables.
|
||||||
|
|
||||||
* **Schema**: `quantengine`
|
* **Schema**: `quantengine`
|
||||||
* **Default Database**: `giteadb`
|
* **Default Database**: `quantenginedb`
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
@@ -22,7 +22,7 @@ To ensure the principle of least privilege, we define three main database roles:
|
|||||||
* **Permissions**:
|
* **Permissions**:
|
||||||
```sql
|
```sql
|
||||||
CREATE ROLE quantengine_owner WITH LOGIN PASSWORD 'OwnerPasswordSecure';
|
CREATE ROLE quantengine_owner WITH LOGIN PASSWORD 'OwnerPasswordSecure';
|
||||||
GRANT ALL PRIVILEGES ON DATABASE giteadb TO quantengine_owner;
|
GRANT ALL PRIVILEGES ON DATABASE quantenginedb TO quantengine_owner;
|
||||||
GRANT ALL PRIVILEGES ON SCHEMA quantengine TO quantengine_owner;
|
GRANT ALL PRIVILEGES ON SCHEMA quantengine TO quantengine_owner;
|
||||||
ALTER DEFAULT PRIVILEGES IN SCHEMA quantengine GRANT ALL ON TABLES TO quantengine_owner;
|
ALTER DEFAULT PRIVILEGES IN SCHEMA quantengine GRANT ALL ON TABLES TO quantengine_owner;
|
||||||
```
|
```
|
||||||
@@ -32,7 +32,7 @@ To ensure the principle of least privilege, we define three main database roles:
|
|||||||
* **Permissions**:
|
* **Permissions**:
|
||||||
```sql
|
```sql
|
||||||
CREATE ROLE quantengine_app WITH LOGIN PASSWORD 'AppPasswordSecure';
|
CREATE ROLE quantengine_app WITH LOGIN PASSWORD 'AppPasswordSecure';
|
||||||
GRANT CONNECT ON DATABASE giteadb TO quantengine_app;
|
GRANT CONNECT ON DATABASE quantenginedb TO quantengine_app;
|
||||||
GRANT USAGE ON SCHEMA quantengine TO quantengine_app;
|
GRANT USAGE ON SCHEMA quantengine TO quantengine_app;
|
||||||
|
|
||||||
-- Grant CRUD permissions on tables & sequences
|
-- Grant CRUD permissions on tables & sequences
|
||||||
@@ -48,7 +48,7 @@ To ensure the principle of least privilege, we define three main database roles:
|
|||||||
* **Permissions**:
|
* **Permissions**:
|
||||||
```sql
|
```sql
|
||||||
CREATE ROLE quantengine_readonly WITH LOGIN PASSWORD 'ReadonlyPasswordSecure';
|
CREATE ROLE quantengine_readonly WITH LOGIN PASSWORD 'ReadonlyPasswordSecure';
|
||||||
GRANT CONNECT ON DATABASE giteadb TO quantengine_readonly;
|
GRANT CONNECT ON DATABASE quantenginedb TO quantengine_readonly;
|
||||||
GRANT USAGE ON SCHEMA quantengine TO quantengine_readonly;
|
GRANT USAGE ON SCHEMA quantengine TO quantengine_readonly;
|
||||||
|
|
||||||
GRANT SELECT ON ALL TABLES IN SCHEMA quantengine TO quantengine_readonly;
|
GRANT SELECT ON ALL TABLES IN SCHEMA quantengine TO quantengine_readonly;
|
||||||
@@ -63,7 +63,7 @@ To ensure the principle of least privilege, we define three main database roles:
|
|||||||
* Never store connection strings with plaintext passwords in version control.
|
* Never store connection strings with plaintext passwords in version control.
|
||||||
* `appsettings.json` must only contain placeholder configurations.
|
* `appsettings.json` must only contain placeholder configurations.
|
||||||
* Inject the connection string at runtime using environment variables:
|
* Inject the connection string at runtime using environment variables:
|
||||||
`ConnectionStrings__DefaultConnection="Host=127.0.0.1;Database=giteadb;Username=quantengine_app;Password=YourSecurePassword;Search Path=quantengine;"`
|
`ConnectionStrings__DefaultConnection="Host=127.0.0.1;Database=quantenginedb;Username=quantengine_app;Password=YourSecurePassword;Search Path=quantengine;"`
|
||||||
|
|
||||||
2. **Network Security**:
|
2. **Network Security**:
|
||||||
* Bind PostgreSQL only to local interfaces (`127.0.0.1`) or secure private network interfaces.
|
* Bind PostgreSQL only to local interfaces (`127.0.0.1`) or secure private network interfaces.
|
||||||
|
|||||||
+2
-2
@@ -925,7 +925,7 @@ python tools/validate_specs.py → PASS
|
|||||||
|------|------|
|
|------|------|
|
||||||
| **작업** | `src/quant_engine/snapshot_admin_server_v1.py`(Python 어드민 웹 UI)를 Gitea CI/CD 배포 스텝을 통해 Synology NAS에서 상시 서비스로 운영할 수 있는지 검토 |
|
| **작업** | `src/quant_engine/snapshot_admin_server_v1.py`(Python 어드민 웹 UI)를 Gitea CI/CD 배포 스텝을 통해 Synology NAS에서 상시 서비스로 운영할 수 있는지 검토 |
|
||||||
| **현재 상태** | **기술적으로는 가능**. 기본 루프백 보호 + Basic Auth 게이트를 추가했고, Synology 외부 노출은 리버스 프록시 기반 POC로 가이드함. 실배포 검증은 아직 필요 |
|
| **현재 상태** | **기술적으로는 가능**. 기본 루프백 보호 + Basic Auth 게이트를 추가했고, Synology 외부 노출은 리버스 프록시 기반 POC로 가이드함. 실배포 검증은 아직 필요 |
|
||||||
| **운영 분리** | `snapshot_admin.yml`은 `push`용 smoke 검증과 `workflow_dispatch`용 full 검증으로 분리하고, 배포는 별도 `snapshot_admin_deploy.yml` `workflow_dispatch`로 떼어냈다. `push`에서는 `Validate Snapshot Admin Workflow`까지만, full 검증에서는 `Validate Snapshot Admin Web UI`까지 수행한다. |
|
| **운영 분리** | `snapshot_admin.yml`은 `push`용 smoke 검증과 `workflow_dispatch`용 full 검증으로 분리하고, 배포는 별도 `deploy-prod.yml` `workflow_dispatch`로 떼어냈다. `push`에서는 `Validate Snapshot Admin Workflow`까지만, full 검증에서는 `Validate Snapshot Admin Web UI`까지 수행한다. |
|
||||||
| **runner 주의** | Gitea runner를 Docker mode로 두면 job 종료 시 `Cleaning up container` 로그가 남는다. host label로 재등록하면 job container 정리 로그를 피할 수 있다. |
|
| **runner 주의** | Gitea runner를 Docker mode로 두면 job 종료 시 `Cleaning up container` 로그가 남는다. host label로 재등록하면 job container 정리 로그를 피할 수 있다. |
|
||||||
| **KIS 분리** | `kis_data_collection.yml`은 `workflow_dispatch`용 mock/config smoke와 `schedule`용 live collection으로 분리했다. 수동 디스패치는 실제 수집을 돌리지 않고, 실수집은 스케줄 전용이다. |
|
| **KIS 분리** | `kis_data_collection.yml`은 `workflow_dispatch`용 mock/config smoke와 `schedule`용 live collection으로 분리했다. 수동 디스패치는 실제 수집을 돌리지 않고, 실수집은 스케줄 전용이다. |
|
||||||
| **담당 파일** | `.gitea/workflows/ci.yml`, `tools/run_snapshot_admin_server_v1.py`, `src/quant_engine/snapshot_admin_server_v1.py`, `docs/SYNOLOGY_SNAPSHOT_ADMIN_POC.md`, `docs/WBS_7_9_EVIDENCE_PACKET_FINAL.md` |
|
| **담당 파일** | `.gitea/workflows/ci.yml`, `tools/run_snapshot_admin_server_v1.py`, `src/quant_engine/snapshot_admin_server_v1.py`, `docs/SYNOLOGY_SNAPSHOT_ADMIN_POC.md`, `docs/WBS_7_9_EVIDENCE_PACKET_FINAL.md` |
|
||||||
@@ -1651,7 +1651,7 @@ WBS-10.1 (기반 결함 수정)
|
|||||||
| 10.10.2 | Dashboard 상태 페이지 — 데이터 비의존형 요약으로 단순화 | DB 실패 시에도 200 응답 (완료) |
|
| 10.10.2 | Dashboard 상태 페이지 — 데이터 비의존형 요약으로 단순화 | DB 실패 시에도 200 응답 (완료) |
|
||||||
| 10.10.3 | Counter.razor / Weather.razor 기본 페이지 삭제, NavMenu 정비 | 불필요 페이지 0건, NavMenu에 Dashboard/Operations만 표시 (완료) |
|
| 10.10.3 | Counter.razor / Weather.razor 기본 페이지 삭제, NavMenu 정비 | 불필요 페이지 0건, NavMenu에 Dashboard/Operations만 표시 (완료) |
|
||||||
| 10.10.4 | 다크 모드 + 반응형 레이아웃 적용 | 브라우저 렌더링 정상 확인 (완료) |
|
| 10.10.4 | 다크 모드 + 반응형 레이아웃 적용 | 브라우저 렌더링 정상 확인 (완료) |
|
||||||
| 10.10.5 | 배포 동기화 | `snapshot_admin_deploy.yml`가 `/quant/`와 `/quant/operations` 공개 라우트를 배포 후 검증하도록 구성됨 (완료) |
|
| 10.10.5 | 배포 동기화 | `deploy-prod.yml`가 공개 라우트를 배포 후 검증하도록 구성됨 (완료) |
|
||||||
|
|
||||||
**성공 하네스 (데이터 기준)**:
|
**성공 하네스 (데이터 기준)**:
|
||||||
```
|
```
|
||||||
|
|||||||
-39
@@ -1,39 +0,0 @@
|
|||||||
{
|
|
||||||
"runtimeTarget": {
|
|
||||||
"name": ".NETCoreApp,Version=v10.0",
|
|
||||||
"signature": ""
|
|
||||||
},
|
|
||||||
"compilationOptions": {},
|
|
||||||
"targets": {
|
|
||||||
".NETCoreApp,Version=v10.0": {
|
|
||||||
"QuantEngine.Application/1.0.0": {
|
|
||||||
"dependencies": {
|
|
||||||
"QuantEngine.Core": "1.0.0"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Application.dll": {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Core.dll": {
|
|
||||||
"assemblyVersion": "1.0.0.0",
|
|
||||||
"fileVersion": "1.0.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"libraries": {
|
|
||||||
"QuantEngine.Application/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
},
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
-4
@@ -1,4 +0,0 @@
|
|||||||
// <autogenerated />
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
[assembly: global::System.Runtime.Versioning.TargetFrameworkAttribute(".NETCoreApp,Version=v10.0", FrameworkDisplayName = ".NET 10.0")]
|
|
||||||
-22
@@ -1,22 +0,0 @@
|
|||||||
//------------------------------------------------------------------------------
|
|
||||||
// <auto-generated>
|
|
||||||
// This code was generated by a tool.
|
|
||||||
//
|
|
||||||
// Changes to this file may cause incorrect behavior and will be lost if
|
|
||||||
// the code is regenerated.
|
|
||||||
// </auto-generated>
|
|
||||||
//------------------------------------------------------------------------------
|
|
||||||
|
|
||||||
using System;
|
|
||||||
using System.Reflection;
|
|
||||||
|
|
||||||
[assembly: System.Reflection.AssemblyCompanyAttribute("QuantEngine.Application")]
|
|
||||||
[assembly: System.Reflection.AssemblyConfigurationAttribute("Debug")]
|
|
||||||
[assembly: System.Reflection.AssemblyFileVersionAttribute("1.0.0.0")]
|
|
||||||
[assembly: System.Reflection.AssemblyInformationalVersionAttribute("1.0.0+4ef7a54ad55182e164ca78e8af21f2a5e214c98f")]
|
|
||||||
[assembly: System.Reflection.AssemblyProductAttribute("QuantEngine.Application")]
|
|
||||||
[assembly: System.Reflection.AssemblyTitleAttribute("QuantEngine.Application")]
|
|
||||||
[assembly: System.Reflection.AssemblyVersionAttribute("1.0.0.0")]
|
|
||||||
|
|
||||||
// Generated by the MSBuild WriteCodeFragment class.
|
|
||||||
|
|
||||||
-1
@@ -1 +0,0 @@
|
|||||||
e3d73b83f89256e561af0334bd1c6aa38e9e47f25cf6ce5907009a31d56d309d
|
|
||||||
-18
@@ -1,18 +0,0 @@
|
|||||||
is_global = true
|
|
||||||
build_property.TargetFramework = net10.0
|
|
||||||
build_property.TargetFrameworkIdentifier = .NETCoreApp
|
|
||||||
build_property.TargetFrameworkVersion = v10.0
|
|
||||||
build_property.TargetPlatformMinVersion =
|
|
||||||
build_property.UsingMicrosoftNETSdkWeb =
|
|
||||||
build_property.ProjectTypeGuids =
|
|
||||||
build_property.InvariantGlobalization =
|
|
||||||
build_property.PlatformNeutralAssembly =
|
|
||||||
build_property.EnforceExtendedAnalyzerRules =
|
|
||||||
build_property.EntryPointFilePath =
|
|
||||||
build_property._SupportedPlatformList = Linux,macOS,Windows
|
|
||||||
build_property.RootNamespace = QuantEngine.Application
|
|
||||||
build_property.ProjectDir = C:\Temp\data_feed\src\dotnet\QuantEngine.Application\
|
|
||||||
build_property.EnableComHosting =
|
|
||||||
build_property.EnableGeneratedComInterfaceComImportInterop =
|
|
||||||
build_property.EffectiveAnalysisLevelStyle = 10.0
|
|
||||||
build_property.EnableCodeStyleSeverity =
|
|
||||||
-8
@@ -1,8 +0,0 @@
|
|||||||
// <auto-generated/>
|
|
||||||
global using System;
|
|
||||||
global using System.Collections.Generic;
|
|
||||||
global using System.IO;
|
|
||||||
global using System.Linq;
|
|
||||||
global using System.Net.Http;
|
|
||||||
global using System.Threading;
|
|
||||||
global using System.Threading.Tasks;
|
|
||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
-1
@@ -1 +0,0 @@
|
|||||||
1cd28f757d75d5806e4bd6bf3abf482f2c2af1bc56a4c68de4ce9b6b6db56d41
|
|
||||||
-15
@@ -1,15 +0,0 @@
|
|||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.deps.json
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.dll
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Application.pdb
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Core.dll
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\bin\Debug\net10.0\QuantEngine.Core.pdb
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.csproj.AssemblyReference.cache
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.GeneratedMSBuildEditorConfig.editorconfig
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.AssemblyInfoInputs.cache
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.AssemblyInfo.cs
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.csproj.CoreCompileInputs.cache
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEng.294596D8.Up2Date
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.dll
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\refint\QuantEngine.Application.dll
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\QuantEngine.Application.pdb
|
|
||||||
C:\Temp\data_feed\src\dotnet\QuantEngine.Application\obj\Debug\net10.0\ref\QuantEngine.Application.dll
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
-698
@@ -1,698 +0,0 @@
|
|||||||
{
|
|
||||||
"format": 1,
|
|
||||||
"restore": {
|
|
||||||
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj": {}
|
|
||||||
},
|
|
||||||
"projects": {
|
|
||||||
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"restore": {
|
|
||||||
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
|
||||||
"projectName": "QuantEngine.Application",
|
|
||||||
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
|
||||||
"packagesPath": "D:\\DevCache\\nuget-packages",
|
|
||||||
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\obj\\",
|
|
||||||
"projectStyle": "PackageReference",
|
|
||||||
"fallbackFolders": [
|
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
|
||||||
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
|
||||||
],
|
|
||||||
"configFilePaths": [
|
|
||||||
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
|
||||||
],
|
|
||||||
"originalTargetFrameworks": [
|
|
||||||
"net10.0"
|
|
||||||
],
|
|
||||||
"sources": {
|
|
||||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
|
||||||
"C:\\Program Files\\dotnet\\library-packs": {},
|
|
||||||
"https://api.nuget.org/v3/index.json": {}
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"projectReferences": {
|
|
||||||
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
|
||||||
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"warningProperties": {
|
|
||||||
"warnAsError": [
|
|
||||||
"NU1605"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"restoreAuditProperties": {
|
|
||||||
"enableAudit": "true",
|
|
||||||
"auditLevel": "low",
|
|
||||||
"auditMode": "all"
|
|
||||||
},
|
|
||||||
"SdkAnalysisLevel": "10.0.300"
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"imports": [
|
|
||||||
"net461",
|
|
||||||
"net462",
|
|
||||||
"net47",
|
|
||||||
"net471",
|
|
||||||
"net472",
|
|
||||||
"net48",
|
|
||||||
"net481"
|
|
||||||
],
|
|
||||||
"assetTargetFallback": true,
|
|
||||||
"warn": true,
|
|
||||||
"frameworkReferences": {
|
|
||||||
"Microsoft.NETCore.App": {
|
|
||||||
"privateAssets": "all"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.301/PortableRuntimeIdentifierGraph.json",
|
|
||||||
"packagesToPrune": {
|
|
||||||
"Microsoft.CSharp": "(,4.7.32767]",
|
|
||||||
"Microsoft.VisualBasic": "(,10.4.32767]",
|
|
||||||
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
|
||||||
"runtime.any.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.AppContext": "(,4.3.32767]",
|
|
||||||
"System.Buffers": "(,5.0.32767]",
|
|
||||||
"System.Collections": "(,4.3.32767]",
|
|
||||||
"System.Collections.Concurrent": "(,4.3.32767]",
|
|
||||||
"System.Collections.Immutable": "(,10.0.32767]",
|
|
||||||
"System.Collections.NonGeneric": "(,4.3.32767]",
|
|
||||||
"System.Collections.Specialized": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
|
||||||
"System.Console": "(,4.3.32767]",
|
|
||||||
"System.Data.Common": "(,4.3.32767]",
|
|
||||||
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
|
||||||
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
|
||||||
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Process": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"System.Drawing.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Dynamic.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Formats.Asn1": "(,10.0.32767]",
|
|
||||||
"System.Formats.Tar": "(,10.0.32767]",
|
|
||||||
"System.Globalization": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Extensions": "(,4.3.32767]",
|
|
||||||
"System.IO": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
|
||||||
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
|
||||||
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
|
||||||
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipelines": "(,10.0.32767]",
|
|
||||||
"System.IO.Pipes": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
|
||||||
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
|
||||||
"System.Linq": "(,4.3.32767]",
|
|
||||||
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
|
||||||
"System.Linq.Expressions": "(,4.3.32767]",
|
|
||||||
"System.Linq.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Linq.Queryable": "(,4.3.32767]",
|
|
||||||
"System.Memory": "(,5.0.32767]",
|
|
||||||
"System.Net.Http": "(,4.3.32767]",
|
|
||||||
"System.Net.Http.Json": "(,10.0.32767]",
|
|
||||||
"System.Net.NameResolution": "(,4.3.32767]",
|
|
||||||
"System.Net.NetworkInformation": "(,4.3.32767]",
|
|
||||||
"System.Net.Ping": "(,4.3.32767]",
|
|
||||||
"System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Net.Requests": "(,4.3.32767]",
|
|
||||||
"System.Net.Security": "(,4.3.32767]",
|
|
||||||
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
|
||||||
"System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
|
||||||
"System.Numerics.Vectors": "(,5.0.32767]",
|
|
||||||
"System.ObjectModel": "(,4.3.32767]",
|
|
||||||
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
|
||||||
"System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"System.Reflection": "(,4.3.32767]",
|
|
||||||
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
|
||||||
"System.Reflection.Emit": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Reflection.Metadata": "(,10.0.32767]",
|
|
||||||
"System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
|
||||||
"System.Resources.Reader": "(,4.3.32767]",
|
|
||||||
"System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"System.Resources.Writer": "(,4.3.32767]",
|
|
||||||
"System.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
|
||||||
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Loader": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Numerics": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
|
||||||
"System.Security.AccessControl": "(,6.0.32767]",
|
|
||||||
"System.Security.Claims": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal.Windows": "(,5.0.32767]",
|
|
||||||
"System.Security.SecureString": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
|
||||||
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Text.Encodings.Web": "(,10.0.32767]",
|
|
||||||
"System.Text.Json": "(,10.0.32767]",
|
|
||||||
"System.Text.RegularExpressions": "(,4.3.32767]",
|
|
||||||
"System.Threading": "(,4.3.32767]",
|
|
||||||
"System.Threading.AccessControl": "(,10.0.32767]",
|
|
||||||
"System.Threading.Channels": "(,10.0.32767]",
|
|
||||||
"System.Threading.Overlapped": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
|
||||||
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
|
||||||
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Threading.Thread": "(,4.3.32767]",
|
|
||||||
"System.Threading.ThreadPool": "(,4.3.32767]",
|
|
||||||
"System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"System.ValueTuple": "(,4.5.32767]",
|
|
||||||
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
|
||||||
"System.Xml.XDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"restore": {
|
|
||||||
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
|
||||||
"projectName": "QuantEngine.Core",
|
|
||||||
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj",
|
|
||||||
"packagesPath": "D:\\DevCache\\nuget-packages",
|
|
||||||
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\obj\\",
|
|
||||||
"projectStyle": "PackageReference",
|
|
||||||
"fallbackFolders": [
|
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
|
||||||
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
|
||||||
],
|
|
||||||
"configFilePaths": [
|
|
||||||
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
|
||||||
],
|
|
||||||
"originalTargetFrameworks": [
|
|
||||||
"net10.0"
|
|
||||||
],
|
|
||||||
"sources": {
|
|
||||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
|
||||||
"C:\\Program Files\\dotnet\\library-packs": {},
|
|
||||||
"https://api.nuget.org/v3/index.json": {}
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"projectReferences": {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"warningProperties": {
|
|
||||||
"warnAsError": [
|
|
||||||
"NU1605"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"restoreAuditProperties": {
|
|
||||||
"enableAudit": "true",
|
|
||||||
"auditLevel": "low",
|
|
||||||
"auditMode": "all"
|
|
||||||
},
|
|
||||||
"SdkAnalysisLevel": "10.0.300"
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"imports": [
|
|
||||||
"net461",
|
|
||||||
"net462",
|
|
||||||
"net47",
|
|
||||||
"net471",
|
|
||||||
"net472",
|
|
||||||
"net48",
|
|
||||||
"net481"
|
|
||||||
],
|
|
||||||
"assetTargetFallback": true,
|
|
||||||
"warn": true,
|
|
||||||
"frameworkReferences": {
|
|
||||||
"Microsoft.NETCore.App": {
|
|
||||||
"privateAssets": "all"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.301/PortableRuntimeIdentifierGraph.json",
|
|
||||||
"packagesToPrune": {
|
|
||||||
"Microsoft.CSharp": "(,4.7.32767]",
|
|
||||||
"Microsoft.VisualBasic": "(,10.4.32767]",
|
|
||||||
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
|
||||||
"runtime.any.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.AppContext": "(,4.3.32767]",
|
|
||||||
"System.Buffers": "(,5.0.32767]",
|
|
||||||
"System.Collections": "(,4.3.32767]",
|
|
||||||
"System.Collections.Concurrent": "(,4.3.32767]",
|
|
||||||
"System.Collections.Immutable": "(,10.0.32767]",
|
|
||||||
"System.Collections.NonGeneric": "(,4.3.32767]",
|
|
||||||
"System.Collections.Specialized": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
|
||||||
"System.Console": "(,4.3.32767]",
|
|
||||||
"System.Data.Common": "(,4.3.32767]",
|
|
||||||
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
|
||||||
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
|
||||||
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Process": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"System.Drawing.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Dynamic.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Formats.Asn1": "(,10.0.32767]",
|
|
||||||
"System.Formats.Tar": "(,10.0.32767]",
|
|
||||||
"System.Globalization": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Extensions": "(,4.3.32767]",
|
|
||||||
"System.IO": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
|
||||||
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
|
||||||
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
|
||||||
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipelines": "(,10.0.32767]",
|
|
||||||
"System.IO.Pipes": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
|
||||||
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
|
||||||
"System.Linq": "(,4.3.32767]",
|
|
||||||
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
|
||||||
"System.Linq.Expressions": "(,4.3.32767]",
|
|
||||||
"System.Linq.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Linq.Queryable": "(,4.3.32767]",
|
|
||||||
"System.Memory": "(,5.0.32767]",
|
|
||||||
"System.Net.Http": "(,4.3.32767]",
|
|
||||||
"System.Net.Http.Json": "(,10.0.32767]",
|
|
||||||
"System.Net.NameResolution": "(,4.3.32767]",
|
|
||||||
"System.Net.NetworkInformation": "(,4.3.32767]",
|
|
||||||
"System.Net.Ping": "(,4.3.32767]",
|
|
||||||
"System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Net.Requests": "(,4.3.32767]",
|
|
||||||
"System.Net.Security": "(,4.3.32767]",
|
|
||||||
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
|
||||||
"System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
|
||||||
"System.Numerics.Vectors": "(,5.0.32767]",
|
|
||||||
"System.ObjectModel": "(,4.3.32767]",
|
|
||||||
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
|
||||||
"System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"System.Reflection": "(,4.3.32767]",
|
|
||||||
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
|
||||||
"System.Reflection.Emit": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Reflection.Metadata": "(,10.0.32767]",
|
|
||||||
"System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
|
||||||
"System.Resources.Reader": "(,4.3.32767]",
|
|
||||||
"System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"System.Resources.Writer": "(,4.3.32767]",
|
|
||||||
"System.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
|
||||||
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Loader": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Numerics": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
|
||||||
"System.Security.AccessControl": "(,6.0.32767]",
|
|
||||||
"System.Security.Claims": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal.Windows": "(,5.0.32767]",
|
|
||||||
"System.Security.SecureString": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
|
||||||
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Text.Encodings.Web": "(,10.0.32767]",
|
|
||||||
"System.Text.Json": "(,10.0.32767]",
|
|
||||||
"System.Text.RegularExpressions": "(,4.3.32767]",
|
|
||||||
"System.Threading": "(,4.3.32767]",
|
|
||||||
"System.Threading.AccessControl": "(,10.0.32767]",
|
|
||||||
"System.Threading.Channels": "(,10.0.32767]",
|
|
||||||
"System.Threading.Overlapped": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
|
||||||
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
|
||||||
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Threading.Thread": "(,4.3.32767]",
|
|
||||||
"System.Threading.ThreadPool": "(,4.3.32767]",
|
|
||||||
"System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"System.ValueTuple": "(,4.5.32767]",
|
|
||||||
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
|
||||||
"System.Xml.XDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
|
||||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
|
||||||
<PropertyGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
|
||||||
<RestoreSuccess Condition=" '$(RestoreSuccess)' == '' ">True</RestoreSuccess>
|
|
||||||
<RestoreTool Condition=" '$(RestoreTool)' == '' ">NuGet</RestoreTool>
|
|
||||||
<ProjectAssetsFile Condition=" '$(ProjectAssetsFile)' == '' ">$(MSBuildThisFileDirectory)project.assets.json</ProjectAssetsFile>
|
|
||||||
<NuGetPackageRoot Condition=" '$(NuGetPackageRoot)' == '' ">D:\DevCache\nuget-packages</NuGetPackageRoot>
|
|
||||||
<NuGetPackageFolders Condition=" '$(NuGetPackageFolders)' == '' ">D:\DevCache\nuget-packages;C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages;C:\Program Files\dotnet\sdk\NuGetFallbackFolder</NuGetPackageFolders>
|
|
||||||
<NuGetProjectStyle Condition=" '$(NuGetProjectStyle)' == '' ">PackageReference</NuGetProjectStyle>
|
|
||||||
<NuGetToolVersion Condition=" '$(NuGetToolVersion)' == '' ">7.0.0</NuGetToolVersion>
|
|
||||||
</PropertyGroup>
|
|
||||||
<ItemGroup Condition=" '$(ExcludeRestorePackageImports)' != 'true' ">
|
|
||||||
<SourceRoot Include="D:\DevCache\nuget-packages\" />
|
|
||||||
<SourceRoot Include="C:\Program Files (x86)\Microsoft Visual Studio\Shared\NuGetPackages\" />
|
|
||||||
<SourceRoot Include="C:\Program Files\dotnet\sdk\NuGetFallbackFolder\" />
|
|
||||||
</ItemGroup>
|
|
||||||
</Project>
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
<?xml version="1.0" encoding="utf-8" standalone="no"?>
|
|
||||||
<Project ToolsVersion="14.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" />
|
|
||||||
@@ -1,381 +0,0 @@
|
|||||||
{
|
|
||||||
"version": 4,
|
|
||||||
"targets": {
|
|
||||||
"net10.0": {
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"framework": ".NETCoreApp,Version=v10.0",
|
|
||||||
"compile": {
|
|
||||||
"bin/placeholder/QuantEngine.Core.dll": {}
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"bin/placeholder/QuantEngine.Core.dll": {}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"libraries": {
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"path": "../QuantEngine.Core/QuantEngine.Core.csproj",
|
|
||||||
"msbuildProject": "../QuantEngine.Core/QuantEngine.Core.csproj"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"projectFileDependencyGroups": {
|
|
||||||
"net10.0": [
|
|
||||||
"QuantEngine.Core >= 1.0.0"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"packageFolders": {
|
|
||||||
"D:\\DevCache\\nuget-packages": {},
|
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages": {},
|
|
||||||
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder": {}
|
|
||||||
},
|
|
||||||
"project": {
|
|
||||||
"version": "1.0.0",
|
|
||||||
"restore": {
|
|
||||||
"projectUniqueName": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
|
||||||
"projectName": "QuantEngine.Application",
|
|
||||||
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
|
||||||
"packagesPath": "D:\\DevCache\\nuget-packages",
|
|
||||||
"outputPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\obj\\",
|
|
||||||
"projectStyle": "PackageReference",
|
|
||||||
"fallbackFolders": [
|
|
||||||
"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\NuGetPackages",
|
|
||||||
"C:\\Program Files\\dotnet\\sdk\\NuGetFallbackFolder"
|
|
||||||
],
|
|
||||||
"configFilePaths": [
|
|
||||||
"C:\\Users\\kjh20\\AppData\\Roaming\\NuGet\\NuGet.Config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.FallbackLocation.config",
|
|
||||||
"C:\\Program Files (x86)\\NuGet\\Config\\Microsoft.VisualStudio.Offline.config"
|
|
||||||
],
|
|
||||||
"originalTargetFrameworks": [
|
|
||||||
"net10.0"
|
|
||||||
],
|
|
||||||
"sources": {
|
|
||||||
"C:\\Program Files (x86)\\Microsoft SDKs\\NuGetPackages\\": {},
|
|
||||||
"C:\\Program Files\\dotnet\\library-packs": {},
|
|
||||||
"https://api.nuget.org/v3/index.json": {}
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"projectReferences": {
|
|
||||||
"C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj": {
|
|
||||||
"projectPath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Core\\QuantEngine.Core.csproj"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"warningProperties": {
|
|
||||||
"warnAsError": [
|
|
||||||
"NU1605"
|
|
||||||
]
|
|
||||||
},
|
|
||||||
"restoreAuditProperties": {
|
|
||||||
"enableAudit": "true",
|
|
||||||
"auditLevel": "low",
|
|
||||||
"auditMode": "all"
|
|
||||||
},
|
|
||||||
"SdkAnalysisLevel": "10.0.300"
|
|
||||||
},
|
|
||||||
"frameworks": {
|
|
||||||
"net10.0": {
|
|
||||||
"framework": "net10.0",
|
|
||||||
"targetAlias": "net10.0",
|
|
||||||
"imports": [
|
|
||||||
"net461",
|
|
||||||
"net462",
|
|
||||||
"net47",
|
|
||||||
"net471",
|
|
||||||
"net472",
|
|
||||||
"net48",
|
|
||||||
"net481"
|
|
||||||
],
|
|
||||||
"assetTargetFallback": true,
|
|
||||||
"warn": true,
|
|
||||||
"frameworkReferences": {
|
|
||||||
"Microsoft.NETCore.App": {
|
|
||||||
"privateAssets": "all"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"runtimeIdentifierGraphPath": "C:\\Program Files\\dotnet\\sdk\\10.0.301/PortableRuntimeIdentifierGraph.json",
|
|
||||||
"packagesToPrune": {
|
|
||||||
"Microsoft.CSharp": "(,4.7.32767]",
|
|
||||||
"Microsoft.VisualBasic": "(,10.4.32767]",
|
|
||||||
"Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"Microsoft.Win32.Registry": "(,5.0.32767]",
|
|
||||||
"runtime.any.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.any.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Collections": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.IO": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"runtime.aot.System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.debian.8-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.debian.9-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.23-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.24-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.27-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.fedora.28-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.13.2-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.1-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.opensuse.42.3-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.Apple": "(,4.3.32767]",
|
|
||||||
"runtime.osx.10.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.rhel.7-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.14.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.04-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.16.10-x64.runtime.native.System.Security.Cryptography.OpenSsl": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Http": "(,4.3.32767]",
|
|
||||||
"runtime.ubuntu.18.04-x64.runtime.native.System.Net.Security": "(,4.3.32767]",
|
|
||||||
"runtime.unix.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.unix.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win.Microsoft.Win32.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Console": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"runtime.win.System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"runtime.win10-arm-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-arm64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win10-x64-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win10-x86-aot.runtime.native.System.IO.Compression": "(,4.0.32767]",
|
|
||||||
"runtime.win7-x64.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7-x86.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"runtime.win7.System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"runtime.win8-arm.runtime.native.System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.AppContext": "(,4.3.32767]",
|
|
||||||
"System.Buffers": "(,5.0.32767]",
|
|
||||||
"System.Collections": "(,4.3.32767]",
|
|
||||||
"System.Collections.Concurrent": "(,4.3.32767]",
|
|
||||||
"System.Collections.Immutable": "(,10.0.32767]",
|
|
||||||
"System.Collections.NonGeneric": "(,4.3.32767]",
|
|
||||||
"System.Collections.Specialized": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Annotations": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.EventBasedAsync": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.Primitives": "(,4.3.32767]",
|
|
||||||
"System.ComponentModel.TypeConverter": "(,4.3.32767]",
|
|
||||||
"System.Console": "(,4.3.32767]",
|
|
||||||
"System.Data.Common": "(,4.3.32767]",
|
|
||||||
"System.Data.DataSetExtensions": "(,4.4.32767]",
|
|
||||||
"System.Diagnostics.Contracts": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Debug": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.DiagnosticSource": "(,10.0.32767]",
|
|
||||||
"System.Diagnostics.FileVersionInfo": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Process": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.StackTrace": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TextWriterTraceListener": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tools": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.TraceSource": "(,4.3.32767]",
|
|
||||||
"System.Diagnostics.Tracing": "(,4.3.32767]",
|
|
||||||
"System.Drawing.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Dynamic.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Formats.Asn1": "(,10.0.32767]",
|
|
||||||
"System.Formats.Tar": "(,10.0.32767]",
|
|
||||||
"System.Globalization": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Calendars": "(,4.3.32767]",
|
|
||||||
"System.Globalization.Extensions": "(,4.3.32767]",
|
|
||||||
"System.IO": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression": "(,4.3.32767]",
|
|
||||||
"System.IO.Compression.ZipFile": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.AccessControl": "(,4.4.32767]",
|
|
||||||
"System.IO.FileSystem.DriveInfo": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Primitives": "(,4.3.32767]",
|
|
||||||
"System.IO.FileSystem.Watcher": "(,4.3.32767]",
|
|
||||||
"System.IO.IsolatedStorage": "(,4.3.32767]",
|
|
||||||
"System.IO.MemoryMappedFiles": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipelines": "(,10.0.32767]",
|
|
||||||
"System.IO.Pipes": "(,4.3.32767]",
|
|
||||||
"System.IO.Pipes.AccessControl": "(,5.0.32767]",
|
|
||||||
"System.IO.UnmanagedMemoryStream": "(,4.3.32767]",
|
|
||||||
"System.Linq": "(,4.3.32767]",
|
|
||||||
"System.Linq.AsyncEnumerable": "(,10.0.32767]",
|
|
||||||
"System.Linq.Expressions": "(,4.3.32767]",
|
|
||||||
"System.Linq.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Linq.Queryable": "(,4.3.32767]",
|
|
||||||
"System.Memory": "(,5.0.32767]",
|
|
||||||
"System.Net.Http": "(,4.3.32767]",
|
|
||||||
"System.Net.Http.Json": "(,10.0.32767]",
|
|
||||||
"System.Net.NameResolution": "(,4.3.32767]",
|
|
||||||
"System.Net.NetworkInformation": "(,4.3.32767]",
|
|
||||||
"System.Net.Ping": "(,4.3.32767]",
|
|
||||||
"System.Net.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Net.Requests": "(,4.3.32767]",
|
|
||||||
"System.Net.Security": "(,4.3.32767]",
|
|
||||||
"System.Net.ServerSentEvents": "(,10.0.32767]",
|
|
||||||
"System.Net.Sockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebHeaderCollection": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets": "(,4.3.32767]",
|
|
||||||
"System.Net.WebSockets.Client": "(,4.3.32767]",
|
|
||||||
"System.Numerics.Vectors": "(,5.0.32767]",
|
|
||||||
"System.ObjectModel": "(,4.3.32767]",
|
|
||||||
"System.Private.DataContractSerialization": "(,4.3.32767]",
|
|
||||||
"System.Private.Uri": "(,4.3.32767]",
|
|
||||||
"System.Reflection": "(,4.3.32767]",
|
|
||||||
"System.Reflection.DispatchProxy": "(,6.0.32767]",
|
|
||||||
"System.Reflection.Emit": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.ILGeneration": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Emit.Lightweight": "(,4.7.32767]",
|
|
||||||
"System.Reflection.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Reflection.Metadata": "(,10.0.32767]",
|
|
||||||
"System.Reflection.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Reflection.TypeExtensions": "(,4.3.32767]",
|
|
||||||
"System.Resources.Reader": "(,4.3.32767]",
|
|
||||||
"System.Resources.ResourceManager": "(,4.3.32767]",
|
|
||||||
"System.Resources.Writer": "(,4.3.32767]",
|
|
||||||
"System.Runtime": "(,4.3.32767]",
|
|
||||||
"System.Runtime.CompilerServices.Unsafe": "(,7.0.32767]",
|
|
||||||
"System.Runtime.CompilerServices.VisualC": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Handles": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices": "(,4.3.32767]",
|
|
||||||
"System.Runtime.InteropServices.RuntimeInformation": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Loader": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Numerics": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Formatters": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Json": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Runtime.Serialization.Xml": "(,4.3.32767]",
|
|
||||||
"System.Security.AccessControl": "(,6.0.32767]",
|
|
||||||
"System.Security.Claims": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Algorithms": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Cng": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Csp": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.OpenSsl": "(,5.0.32767]",
|
|
||||||
"System.Security.Cryptography.Primitives": "(,4.3.32767]",
|
|
||||||
"System.Security.Cryptography.X509Certificates": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal": "(,4.3.32767]",
|
|
||||||
"System.Security.Principal.Windows": "(,5.0.32767]",
|
|
||||||
"System.Security.SecureString": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding": "(,4.3.32767]",
|
|
||||||
"System.Text.Encoding.CodePages": "(,10.0.32767]",
|
|
||||||
"System.Text.Encoding.Extensions": "(,4.3.32767]",
|
|
||||||
"System.Text.Encodings.Web": "(,10.0.32767]",
|
|
||||||
"System.Text.Json": "(,10.0.32767]",
|
|
||||||
"System.Text.RegularExpressions": "(,4.3.32767]",
|
|
||||||
"System.Threading": "(,4.3.32767]",
|
|
||||||
"System.Threading.AccessControl": "(,10.0.32767]",
|
|
||||||
"System.Threading.Channels": "(,10.0.32767]",
|
|
||||||
"System.Threading.Overlapped": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks": "(,4.3.32767]",
|
|
||||||
"System.Threading.Tasks.Dataflow": "(,10.0.32767]",
|
|
||||||
"System.Threading.Tasks.Extensions": "(,5.0.32767]",
|
|
||||||
"System.Threading.Tasks.Parallel": "(,4.3.32767]",
|
|
||||||
"System.Threading.Thread": "(,4.3.32767]",
|
|
||||||
"System.Threading.ThreadPool": "(,4.3.32767]",
|
|
||||||
"System.Threading.Timer": "(,4.3.32767]",
|
|
||||||
"System.ValueTuple": "(,4.5.32767]",
|
|
||||||
"System.Xml.ReaderWriter": "(,4.3.32767]",
|
|
||||||
"System.Xml.XDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlDocument": "(,4.3.32767]",
|
|
||||||
"System.Xml.XmlSerializer": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath": "(,4.3.32767]",
|
|
||||||
"System.Xml.XPath.XDocument": "(,5.0.32767]"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
{
|
|
||||||
"version": 2,
|
|
||||||
"dgSpecHash": "fHUX04f/fhA=",
|
|
||||||
"success": true,
|
|
||||||
"projectFilePath": "C:\\Temp\\data_feed\\src\\dotnet\\QuantEngine.Application\\QuantEngine.Application.csproj",
|
|
||||||
"expectedPackageFiles": [],
|
|
||||||
"logs": []
|
|
||||||
}
|
|
||||||
@@ -123,6 +123,12 @@ public class ApplicationServiceTests
|
|||||||
public (string Domain, string TargetRef)? LastReleasedLock { get; private set; }
|
public (string Domain, string TargetRef)? LastReleasedLock { get; private set; }
|
||||||
|
|
||||||
public Task<IEnumerable<Setting>> GetSettingsAsync() => Task.FromResult(Enumerable.Empty<Setting>());
|
public Task<IEnumerable<Setting>> GetSettingsAsync() => Task.FromResult(Enumerable.Empty<Setting>());
|
||||||
|
public Task<IEnumerable<WorkspaceAccount>> GetAccountsAsync() => Task.FromResult(Enumerable.Empty<WorkspaceAccount>());
|
||||||
|
public Task<WorkspaceAccount?> GetAccountByUsernameAsync(string username) => Task.FromResult<WorkspaceAccount?>(null);
|
||||||
|
public Task<bool> UpsertAccountAsync(WorkspaceAccount account) => Task.FromResult(true);
|
||||||
|
public Task<WorkspaceSession?> GetSessionByTokenHashAsync(string tokenHash) => Task.FromResult<WorkspaceSession?>(null);
|
||||||
|
public Task<bool> UpsertSessionAsync(WorkspaceSession session) => Task.FromResult(true);
|
||||||
|
public Task<bool> RevokeSessionAsync(string tokenHash, string revokedAt) => Task.FromResult(true);
|
||||||
public Task<Setting?> GetSettingByKeyAsync(string key) => Task.FromResult<Setting?>(null);
|
public Task<Setting?> GetSettingByKeyAsync(string key) => Task.FromResult<Setting?>(null);
|
||||||
public Task<bool> UpsertSettingAsync(Setting setting) { LastSetting = setting; return Task.FromResult(true); }
|
public Task<bool> UpsertSettingAsync(Setting setting) { LastSetting = setting; return Task.FromResult(true); }
|
||||||
public Task<bool> DeleteSettingAsync(string key) => Task.FromResult(true);
|
public Task<bool> DeleteSettingAsync(string key) => Task.FromResult(true);
|
||||||
|
|||||||
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -1,536 +0,0 @@
|
|||||||
{
|
|
||||||
"runtimeTarget": {
|
|
||||||
"name": ".NETCoreApp,Version=v10.0",
|
|
||||||
"signature": ""
|
|
||||||
},
|
|
||||||
"compilationOptions": {},
|
|
||||||
"targets": {
|
|
||||||
".NETCoreApp,Version=v10.0": {
|
|
||||||
"QuantEngine.Core.Tests/1.0.0": {
|
|
||||||
"dependencies": {
|
|
||||||
"Microsoft.NET.Test.Sdk": "17.14.1",
|
|
||||||
"QuantEngine.Application": "1.0.0",
|
|
||||||
"QuantEngine.Core": "1.0.0",
|
|
||||||
"QuantEngine.Infrastructure": "1.0.0",
|
|
||||||
"xunit": "2.9.3"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Core.Tests.dll": {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Dapper/2.1.79": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net10.0/Dapper.dll": {
|
|
||||||
"assemblyVersion": "2.0.0.0",
|
|
||||||
"fileVersion": "2.1.79.29349"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.CodeCoverage/17.14.1": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net8.0/Microsoft.VisualStudio.CodeCoverage.Shim.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.225.12603"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net10.0/Microsoft.Extensions.DependencyInjection.Abstractions.dll": {
|
|
||||||
"assemblyVersion": "10.0.0.0",
|
|
||||||
"fileVersion": "10.0.25.52411"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
|
||||||
"dependencies": {
|
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions": "10.0.0"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"lib/net10.0/Microsoft.Extensions.Logging.Abstractions.dll": {
|
|
||||||
"assemblyVersion": "10.0.0.0",
|
|
||||||
"fileVersion": "10.0.25.52411"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.NET.Test.Sdk/17.14.1": {
|
|
||||||
"dependencies": {
|
|
||||||
"Microsoft.CodeCoverage": "17.14.1",
|
|
||||||
"Microsoft.TestPlatform.TestHost": "17.14.1"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.TestPlatform.ObjectModel/17.14.1": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net8.0/Microsoft.TestPlatform.CoreUtilities.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/Microsoft.TestPlatform.PlatformAbstractions.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/Microsoft.VisualStudio.TestPlatform.ObjectModel.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"resources": {
|
|
||||||
"lib/net8.0/cs/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "cs"
|
|
||||||
},
|
|
||||||
"lib/net8.0/cs/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "cs"
|
|
||||||
},
|
|
||||||
"lib/net8.0/de/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "de"
|
|
||||||
},
|
|
||||||
"lib/net8.0/de/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "de"
|
|
||||||
},
|
|
||||||
"lib/net8.0/es/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "es"
|
|
||||||
},
|
|
||||||
"lib/net8.0/es/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "es"
|
|
||||||
},
|
|
||||||
"lib/net8.0/fr/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "fr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/fr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "fr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/it/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "it"
|
|
||||||
},
|
|
||||||
"lib/net8.0/it/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "it"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ja/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "ja"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ja/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "ja"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ko/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "ko"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ko/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "ko"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pl/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "pl"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pl/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "pl"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pt-BR/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "pt-BR"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pt-BR/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "pt-BR"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ru/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "ru"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ru/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "ru"
|
|
||||||
},
|
|
||||||
"lib/net8.0/tr/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "tr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/tr/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "tr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hans/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "zh-Hans"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "zh-Hans"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hant/Microsoft.TestPlatform.CoreUtilities.resources.dll": {
|
|
||||||
"locale": "zh-Hant"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.ObjectModel.resources.dll": {
|
|
||||||
"locale": "zh-Hant"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Microsoft.TestPlatform.TestHost/17.14.1": {
|
|
||||||
"dependencies": {
|
|
||||||
"Microsoft.TestPlatform.ObjectModel": "17.14.1",
|
|
||||||
"Newtonsoft.Json": "13.0.3"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"lib/net8.0/Microsoft.TestPlatform.CommunicationUtilities.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/Microsoft.TestPlatform.CrossPlatEngine.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/Microsoft.TestPlatform.Utilities.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/Microsoft.VisualStudio.TestPlatform.Common.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
},
|
|
||||||
"lib/net8.0/testhost.dll": {
|
|
||||||
"assemblyVersion": "15.0.0.0",
|
|
||||||
"fileVersion": "17.1400.125.30202"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"resources": {
|
|
||||||
"lib/net8.0/cs/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "cs"
|
|
||||||
},
|
|
||||||
"lib/net8.0/cs/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "cs"
|
|
||||||
},
|
|
||||||
"lib/net8.0/cs/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "cs"
|
|
||||||
},
|
|
||||||
"lib/net8.0/de/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "de"
|
|
||||||
},
|
|
||||||
"lib/net8.0/de/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "de"
|
|
||||||
},
|
|
||||||
"lib/net8.0/de/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "de"
|
|
||||||
},
|
|
||||||
"lib/net8.0/es/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "es"
|
|
||||||
},
|
|
||||||
"lib/net8.0/es/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "es"
|
|
||||||
},
|
|
||||||
"lib/net8.0/es/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "es"
|
|
||||||
},
|
|
||||||
"lib/net8.0/fr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "fr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/fr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "fr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/fr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "fr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/it/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "it"
|
|
||||||
},
|
|
||||||
"lib/net8.0/it/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "it"
|
|
||||||
},
|
|
||||||
"lib/net8.0/it/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "it"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ja/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "ja"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ja/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "ja"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ja/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "ja"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ko/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "ko"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ko/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "ko"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ko/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "ko"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pl/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "pl"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pl/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "pl"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pl/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "pl"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pt-BR/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "pt-BR"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pt-BR/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "pt-BR"
|
|
||||||
},
|
|
||||||
"lib/net8.0/pt-BR/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "pt-BR"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ru/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "ru"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ru/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "ru"
|
|
||||||
},
|
|
||||||
"lib/net8.0/ru/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "ru"
|
|
||||||
},
|
|
||||||
"lib/net8.0/tr/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "tr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/tr/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "tr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/tr/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "tr"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hans/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "zh-Hans"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hans/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "zh-Hans"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hans/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "zh-Hans"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hant/Microsoft.TestPlatform.CommunicationUtilities.resources.dll": {
|
|
||||||
"locale": "zh-Hant"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hant/Microsoft.TestPlatform.CrossPlatEngine.resources.dll": {
|
|
||||||
"locale": "zh-Hant"
|
|
||||||
},
|
|
||||||
"lib/net8.0/zh-Hant/Microsoft.VisualStudio.TestPlatform.Common.resources.dll": {
|
|
||||||
"locale": "zh-Hant"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Newtonsoft.Json/13.0.3": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net6.0/Newtonsoft.Json.dll": {
|
|
||||||
"assemblyVersion": "13.0.0.0",
|
|
||||||
"fileVersion": "13.0.3.27908"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"Npgsql/10.0.3": {
|
|
||||||
"dependencies": {
|
|
||||||
"Microsoft.Extensions.Logging.Abstractions": "10.0.0"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"lib/net10.0/Npgsql.dll": {
|
|
||||||
"assemblyVersion": "10.0.3.0",
|
|
||||||
"fileVersion": "10.0.3.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit/2.9.3": {
|
|
||||||
"dependencies": {
|
|
||||||
"xunit.assert": "2.9.3",
|
|
||||||
"xunit.core": "2.9.3"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit.abstractions/2.0.3": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/netstandard2.0/xunit.abstractions.dll": {
|
|
||||||
"assemblyVersion": "2.0.0.0",
|
|
||||||
"fileVersion": "2.0.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit.assert/2.9.3": {
|
|
||||||
"runtime": {
|
|
||||||
"lib/net6.0/xunit.assert.dll": {
|
|
||||||
"assemblyVersion": "2.9.3.0",
|
|
||||||
"fileVersion": "2.9.3.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit.core/2.9.3": {
|
|
||||||
"dependencies": {
|
|
||||||
"xunit.extensibility.core": "2.9.3",
|
|
||||||
"xunit.extensibility.execution": "2.9.3"
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit.extensibility.core/2.9.3": {
|
|
||||||
"dependencies": {
|
|
||||||
"xunit.abstractions": "2.0.3"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"lib/netstandard1.1/xunit.core.dll": {
|
|
||||||
"assemblyVersion": "2.9.3.0",
|
|
||||||
"fileVersion": "2.9.3.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"xunit.extensibility.execution/2.9.3": {
|
|
||||||
"dependencies": {
|
|
||||||
"xunit.extensibility.core": "2.9.3"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"lib/netstandard1.1/xunit.execution.dotnet.dll": {
|
|
||||||
"assemblyVersion": "2.9.3.0",
|
|
||||||
"fileVersion": "2.9.3.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"QuantEngine.Application/1.0.0": {
|
|
||||||
"dependencies": {
|
|
||||||
"QuantEngine.Core": "1.0.0"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Application.dll": {
|
|
||||||
"assemblyVersion": "1.0.0.0",
|
|
||||||
"fileVersion": "1.0.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Core.dll": {
|
|
||||||
"assemblyVersion": "1.0.0.0",
|
|
||||||
"fileVersion": "1.0.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"QuantEngine.Infrastructure/1.0.0": {
|
|
||||||
"dependencies": {
|
|
||||||
"Dapper": "2.1.79",
|
|
||||||
"Npgsql": "10.0.3",
|
|
||||||
"QuantEngine.Application": "1.0.0",
|
|
||||||
"QuantEngine.Core": "1.0.0"
|
|
||||||
},
|
|
||||||
"runtime": {
|
|
||||||
"QuantEngine.Infrastructure.dll": {
|
|
||||||
"assemblyVersion": "1.0.0.0",
|
|
||||||
"fileVersion": "1.0.0.0"
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
"libraries": {
|
|
||||||
"QuantEngine.Core.Tests/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
},
|
|
||||||
"Dapper/2.1.79": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-8YijbzgTfmqmQOnVNorYM6K++pxqnW3nJ4aC1sRHzxUA2CcuoJ9gsTem3kgBnPRMc38zZHl4Esb6hAezXIEEuw==",
|
|
||||||
"path": "dapper/2.1.79",
|
|
||||||
"hashPath": "dapper.2.1.79.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.CodeCoverage/17.14.1": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-pmTrhfFIoplzFVbhVwUquT+77CbGH+h4/3mBpdmIlYtBi9nAB+kKI6dN3A/nV4DFi3wLLx/BlHIPK+MkbQ6Tpg==",
|
|
||||||
"path": "microsoft.codecoverage/17.14.1",
|
|
||||||
"hashPath": "microsoft.codecoverage.17.14.1.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.Extensions.DependencyInjection.Abstractions/10.0.0": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-L3AdmZ1WOK4XXT5YFPEwyt0ep6l8lGIPs7F5OOBZc77Zqeo01Of7XXICy47628sdVl0v/owxYJTe86DTgFwKCA==",
|
|
||||||
"path": "microsoft.extensions.dependencyinjection.abstractions/10.0.0",
|
|
||||||
"hashPath": "microsoft.extensions.dependencyinjection.abstractions.10.0.0.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.Extensions.Logging.Abstractions/10.0.0": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-FU/IfjDfwaMuKr414SSQNTIti/69bHEMb+QKrskRb26oVqpx3lNFXMjs/RC9ZUuhBhcwDM2BwOgoMw+PZ+beqQ==",
|
|
||||||
"path": "microsoft.extensions.logging.abstractions/10.0.0",
|
|
||||||
"hashPath": "microsoft.extensions.logging.abstractions.10.0.0.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.NET.Test.Sdk/17.14.1": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-HJKqKOE+vshXra2aEHpi2TlxYX7Z9VFYkr+E5rwEvHC8eIXiyO+K9kNm8vmNom3e2rA56WqxU+/N9NJlLGXsJQ==",
|
|
||||||
"path": "microsoft.net.test.sdk/17.14.1",
|
|
||||||
"hashPath": "microsoft.net.test.sdk.17.14.1.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.TestPlatform.ObjectModel/17.14.1": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-xTP1W6Mi6SWmuxd3a+jj9G9UoC850WGwZUps1Wah9r1ZxgXhdJfj1QqDLJkFjHDCvN42qDL2Ps5KjQYWUU0zcQ==",
|
|
||||||
"path": "microsoft.testplatform.objectmodel/17.14.1",
|
|
||||||
"hashPath": "microsoft.testplatform.objectmodel.17.14.1.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Microsoft.TestPlatform.TestHost/17.14.1": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-d78LPzGKkJwsJXAQwsbJJ7LE7D1wB+rAyhHHAaODF+RDSQ0NgMjDFkSA1Djw18VrxO76GlKAjRUhl+H8NL8Z+Q==",
|
|
||||||
"path": "microsoft.testplatform.testhost/17.14.1",
|
|
||||||
"hashPath": "microsoft.testplatform.testhost.17.14.1.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Newtonsoft.Json/13.0.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-HrC5BXdl00IP9zeV+0Z848QWPAoCr9P3bDEZguI+gkLcBKAOxix/tLEAAHC+UvDNPv4a2d18lOReHMOagPa+zQ==",
|
|
||||||
"path": "newtonsoft.json/13.0.3",
|
|
||||||
"hashPath": "newtonsoft.json.13.0.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"Npgsql/10.0.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-7nb5YzXuvWWJxB0J8DiyL3we+X4FOctZrt0fIBnucOIaIevFEEwGQVZKtiu9olXdlNAK1eNgqSral6r/jlhI4w==",
|
|
||||||
"path": "npgsql/10.0.3",
|
|
||||||
"hashPath": "npgsql.10.0.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit/2.9.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-TlXQBinK35LpOPKHAqbLY4xlEen9TBafjs0V5KnA4wZsoQLQJiirCR4CbIXvOH8NzkW4YeJKP5P/Bnrodm0h9Q==",
|
|
||||||
"path": "xunit/2.9.3",
|
|
||||||
"hashPath": "xunit.2.9.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit.abstractions/2.0.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-pot1I4YOxlWjIb5jmwvvQNbTrZ3lJQ+jUGkGjWE3hEFM0l5gOnBWS+H3qsex68s5cO52g+44vpGzhAt+42vwKg==",
|
|
||||||
"path": "xunit.abstractions/2.0.3",
|
|
||||||
"hashPath": "xunit.abstractions.2.0.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit.assert/2.9.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-/Kq28fCE7MjOV42YLVRAJzRF0WmEqsmflm0cfpMjGtzQ2lR5mYVj1/i0Y8uDAOLczkL3/jArrwehfMD0YogMAA==",
|
|
||||||
"path": "xunit.assert/2.9.3",
|
|
||||||
"hashPath": "xunit.assert.2.9.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit.core/2.9.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-BiAEvqGvyme19wE0wTKdADH+NloYqikiU0mcnmiNyXaF9HyHmE6sr/3DC5vnBkgsWaE6yPyWszKSPSApWdRVeQ==",
|
|
||||||
"path": "xunit.core/2.9.3",
|
|
||||||
"hashPath": "xunit.core.2.9.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit.extensibility.core/2.9.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-kf3si0YTn2a8J8eZNb+zFpwfoyvIrQ7ivNk5ZYA5yuYk1bEtMe4DxJ2CF/qsRgmEnDr7MnW1mxylBaHTZ4qErA==",
|
|
||||||
"path": "xunit.extensibility.core/2.9.3",
|
|
||||||
"hashPath": "xunit.extensibility.core.2.9.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"xunit.extensibility.execution/2.9.3": {
|
|
||||||
"type": "package",
|
|
||||||
"serviceable": true,
|
|
||||||
"sha512": "sha512-yMb6vMESlSrE3Wfj7V6cjQ3S4TXdXpRqYeNEI3zsX31uTsGMJjEw6oD5F5u1cHnMptjhEECnmZSsPxB6ChZHDQ==",
|
|
||||||
"path": "xunit.extensibility.execution/2.9.3",
|
|
||||||
"hashPath": "xunit.extensibility.execution.2.9.3.nupkg.sha512"
|
|
||||||
},
|
|
||||||
"QuantEngine.Application/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
},
|
|
||||||
"QuantEngine.Core/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
},
|
|
||||||
"QuantEngine.Infrastructure/1.0.0": {
|
|
||||||
"type": "project",
|
|
||||||
"serviceable": false,
|
|
||||||
"sha512": ""
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
Binary file not shown.
-13
@@ -1,13 +0,0 @@
|
|||||||
{
|
|
||||||
"runtimeOptions": {
|
|
||||||
"tfm": "net10.0",
|
|
||||||
"framework": {
|
|
||||||
"name": "Microsoft.NETCore.App",
|
|
||||||
"version": "10.0.0"
|
|
||||||
},
|
|
||||||
"configProperties": {
|
|
||||||
"MSTest.EnableParentProcessQuery": true,
|
|
||||||
"System.Runtime.Serialization.EnableUnsafeBinaryFormatterSerialization": false
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
BIN
Binary file not shown.
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user