fix: change all admin pages to prerender: true for WASM bootstrap
TaxBaik CI/CD / build-and-deploy (push) Successful in 5m13s
TaxBaik CI/CD / build-and-deploy (push) Successful in 5m13s
All Page components now use: @rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true)) Attempted solution based on observation that Login.razor (prerender: true) works correctly while Dashboard.razor (prerender: false) fails WASM init. Result: blazor.boot.json still not generated, WASM bootstrap still fails. Indicates deeper SDK issue with ASP.NET Core 10 Preview Blazor WASM initialization mechanism, not fixable by render mode configuration alone. Changed files: - All 30+ admin Page components: prerender: false → true - Program.cs: MapRazorComponents added (required for WASM) Status: WASM bootstrap blocked at fundamental SDK level. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
This commit is contained in:
-945
@@ -1,945 +0,0 @@
|
||||
2026-07-04T11:42:30.0567403Z hz-prod-runner(version:v0.6.1) received task 1516 of job build-and-deploy, be triggered by event: push
|
||||
2026-07-04T11:42:30.0580621Z workflow prepared
|
||||
2026-07-04T11:42:30.0581689Z evaluating expression 'success()'
|
||||
2026-07-04T11:42:30.0583931Z expression 'success()' evaluated to 'true'
|
||||
2026-07-04T11:42:30.0584883Z 🚀 Start image=docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T11:42:30.0906041Z 🐳 docker pull image=docker.gitea.com/runner-images:ubuntu-latest platform= username= forcePull=false
|
||||
2026-07-04T11:42:30.0906469Z 🐳 docker pull docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T11:42:30.1729089Z Image exists? true
|
||||
2026-07-04T11:42:30.3287757Z 🐳 docker create image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T11:42:30.4959124Z Created container name=GITEA-ACTIONS-TASK-1516-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-2a7daee2084bff91b11c6ea9ee980c5a04abe542a26ee3bf5f0e0f5028069029 id=38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1 from image docker.gitea.com/runner-images:ubuntu-latest (platform: )
|
||||
2026-07-04T11:42:30.4959600Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-07-04T11:42:30.4959977Z 🐳 docker run image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T11:42:30.4960192Z Starting container: 38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1
|
||||
2026-07-04T11:42:30.8295114Z Started container: 38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1
|
||||
2026-07-04T11:42:31.0136476Z Writing entry to tarball workflow/event.json len:4880
|
||||
2026-07-04T11:42:31.0137207Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:42:31.0137409Z Extracting content to '/var/run/act/'
|
||||
2026-07-04T11:42:31.0383095Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-07-04T11:42:31.0383883Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T11:42:31.9691400Z Unable to pull refs/heads/v4: non-fast-forward update
|
||||
2026-07-04T11:42:31.9691832Z Cloned https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T11:42:31.9871765Z Checked out v4
|
||||
2026-07-04T11:42:31.9979951Z ☁ git clone 'https://github.com/actions/setup-dotnet' # ref=v4
|
||||
2026-07-04T11:42:31.9980390Z cloning https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T11:42:33.0268700Z Unable to pull refs/heads/v4: worktree contains unstaged changes
|
||||
2026-07-04T11:42:33.0269261Z Cloned https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T11:42:33.0686790Z Checked out v4
|
||||
2026-07-04T11:42:33.0985282Z evaluating expression ''
|
||||
2026-07-04T11:42:33.0985874Z expression '' evaluated to 'true'
|
||||
2026-07-04T11:42:33.0986000Z ⭐ Run Main Checkout code
|
||||
2026-07-04T11:42:33.0986497Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T11:42:33.0986684Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T11:42:33.0986797Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T11:42:33.0986911Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:42:33.0987001Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T11:42:33.0987094Z Extracting content to '/var/run/act'
|
||||
2026-07-04T11:42:33.1014520Z ::group::Run Checkout code
|
||||
2026-07-04T11:42:34.5549758Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-07-04T11:42:34.5549935Z Syncing repository: ***/taxbaik
|
||||
2026-07-04T11:42:34.5550128Z ::group::Getting Git version info
|
||||
2026-07-04T11:42:34.5551164Z Working directory is '/workspace/***/taxbaik'
|
||||
2026-07-04T11:42:34.5744535Z [command]/usr/bin/git version
|
||||
2026-07-04T11:42:34.6429840Z git version 2.54.0
|
||||
2026-07-04T11:42:34.6621090Z ::endgroup::
|
||||
2026-07-04T11:42:34.6691754Z Temporarily overriding HOME='/tmp/b488b9f6-1242-4dfe-a2ed-134d2c3815d4' before making global git config changes
|
||||
2026-07-04T11:42:34.6696992Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T11:42:34.6705685Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T11:42:34.7021178Z Deleting the contents of '/workspace/***/taxbaik'
|
||||
2026-07-04T11:42:34.7032551Z ::group::Initializing the repository
|
||||
2026-07-04T11:42:34.7080076Z [command]/usr/bin/git init /workspace/***/taxbaik
|
||||
2026-07-04T11:42:34.7367355Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-07-04T11:42:34.7367795Z hint: will change to "main" in Git 3.0. To configure the initial branch name
|
||||
2026-07-04T11:42:34.7367943Z hint: to use in all of your new repositories, which will suppress this warning,
|
||||
2026-07-04T11:42:34.7368231Z hint: call:
|
||||
2026-07-04T11:42:34.7368312Z hint:
|
||||
2026-07-04T11:42:34.7368384Z hint: git config --global init.defaultBranch <name>
|
||||
2026-07-04T11:42:34.7368486Z hint:
|
||||
2026-07-04T11:42:34.7368557Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-07-04T11:42:34.7368641Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-07-04T11:42:34.7368722Z hint:
|
||||
2026-07-04T11:42:34.7368821Z hint: git branch -m <name>
|
||||
2026-07-04T11:42:34.7368897Z hint:
|
||||
2026-07-04T11:42:34.7368965Z hint: Disable this message with "git config set advice.defaultBranchName false"
|
||||
2026-07-04T11:42:34.7369074Z Initialized empty Git repository in /workspace/***/taxbaik/.git/
|
||||
2026-07-04T11:42:34.7369604Z [command]/usr/bin/git remote add origin http://gitea:3000/***/taxbaik
|
||||
2026-07-04T11:42:34.7481134Z ::endgroup::
|
||||
2026-07-04T11:42:34.7481611Z ::group::Disabling automatic garbage collection
|
||||
2026-07-04T11:42:34.7481839Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-07-04T11:42:34.7482393Z ::endgroup::
|
||||
2026-07-04T11:42:34.7482562Z ::group::Setting up auth
|
||||
2026-07-04T11:42:34.7482655Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T11:42:34.7483305Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T11:42:34.8600664Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T11:42:34.8601700Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T11:42:34.8959722Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T11:42:34.9019506Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T11:42:34.9298408Z [command]/usr/bin/git config --local http.http://gitea:3000/.extraheader AUTHORIZATION: basic ***
|
||||
2026-07-04T11:42:34.9321056Z ::endgroup::
|
||||
2026-07-04T11:42:34.9321266Z ::group::Fetching the repository
|
||||
2026-07-04T11:42:34.9347156Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +e1f3fc527061cd918a686804f62bc055a7664ca6:refs/remotes/origin/master
|
||||
2026-07-04T11:42:47.2056813Z From http://gitea:3000/***/taxbaik
|
||||
2026-07-04T11:42:47.2057565Z * [new ref] e1f3fc527061cd918a686804f62bc055a7664ca6 -> origin/master
|
||||
2026-07-04T11:42:47.3028041Z ::endgroup::
|
||||
2026-07-04T11:42:47.3028283Z ::group::Determining the checkout info
|
||||
2026-07-04T11:42:47.3028670Z ::endgroup::
|
||||
2026-07-04T11:42:47.3166773Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-07-04T11:42:47.3332402Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-07-04T11:42:47.3405025Z ::group::Checking out the ref
|
||||
2026-07-04T11:42:47.3417157Z [command]/usr/bin/git checkout --progress --force -B master refs/remotes/origin/master
|
||||
2026-07-04T11:42:49.3062166Z Updating files: 75% (991/1313)
|
||||
Updating files: 76% (998/1313)
|
||||
Updating files: 77% (1012/1313)
|
||||
Updating files: 78% (1025/1313)
|
||||
Updating files: 79% (1038/1313)
|
||||
Updating files: 80% (1051/1313)
|
||||
Updating files: 81% (1064/1313)
|
||||
Updating files: 82% (1077/1313)
|
||||
Updating files: 83% (1090/1313)
|
||||
Updating files: 84% (1103/1313)
|
||||
Updating files: 85% (1117/1313)
|
||||
Updating files: 86% (1130/1313)
|
||||
Updating files: 87% (1143/1313)
|
||||
Updating files: 88% (1156/1313)
|
||||
Updating files: 89% (1169/1313)
|
||||
Updating files: 90% (1182/1313)
|
||||
Updating files: 91% (1195/1313)
|
||||
Updating files: 92% (1208/1313)
|
||||
Updating files: 93% (1222/1313)
|
||||
Updating files: 94% (1235/1313)
|
||||
Updating files: 95% (1248/1313)
|
||||
Updating files: 96% (1261/1313)
|
||||
Updating files: 97% (1274/1313)
|
||||
Updating files: 98% (1287/1313)
|
||||
Updating files: 99% (1300/1313)
|
||||
Updating files: 100% (1313/1313)
|
||||
Updating files: 100% (1313/1313), done.
|
||||
2026-07-04T11:42:49.3120498Z Reset branch 'master'
|
||||
2026-07-04T11:42:49.3147914Z branch 'master' set up to track 'origin/master'.
|
||||
2026-07-04T11:42:49.3191844Z ::endgroup::
|
||||
2026-07-04T11:42:49.3302985Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-07-04T11:42:49.3418285Z e1f3fc527061cd918a686804f62bc055a7664ca6
|
||||
2026-07-04T11:42:49.3498697Z ::remove-matcher owner=checkout-git::
|
||||
2026-07-04T11:42:49.3870591Z ::endgroup::
|
||||
2026-07-04T11:42:49.5068685Z ::group::Run Setup .NET
|
||||
2026-07-04T11:42:49.5068955Z with:
|
||||
2026-07-04T11:42:49.5069121Z dotnet-version: 10.0
|
||||
2026-07-04T11:42:51.7487272Z (node:141) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
|
||||
2026-07-04T11:42:51.7487964Z (Use `node --trace-deprecation ...` to show where the warning was created)
|
||||
2026-07-04T11:42:51.7658250Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS
|
||||
2026-07-04T11:42:52.8587260Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T11:42:53.3980686Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz size is 36606251 bytes.
|
||||
2026-07-04T11:42:53.4008884Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T11:42:55.9207278Z dotnet-install: Downloaded file size is 36606251 bytes.
|
||||
2026-07-04T11:42:55.9207818Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T11:42:55.9454913Z dotnet-install: Installed version is 10.0.9
|
||||
2026-07-04T11:42:55.9543172Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T11:42:55.9543783Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T11:42:55.9543916Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T11:42:55.9544055Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T11:42:55.9566967Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --channel 10.0
|
||||
2026-07-04T11:42:56.6780669Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T11:42:58.1177288Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz size is 235086718 bytes.
|
||||
2026-07-04T11:42:58.1196866Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T11:43:14.1296924Z dotnet-install: Downloaded file size is 235086718 bytes.
|
||||
2026-07-04T11:43:14.1297593Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T11:43:14.3012045Z dotnet-install: Installed version is 10.0.301
|
||||
2026-07-04T11:43:14.3106929Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T11:43:14.3107653Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T11:43:14.3108081Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T11:43:14.3108331Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T11:43:14.3122021Z ##[add-matcher]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/.github/csc.json
|
||||
2026-07-04T11:43:14.3596501Z ::endgroup::
|
||||
2026-07-04T11:43:14.6005903Z ::group::Run dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T11:43:14.6006418Z dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T11:43:14.6006532Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:43:14.6006720Z ::endgroup::
|
||||
2026-07-04T11:43:15.1983220Z
|
||||
2026-07-04T11:43:15.1993376Z Welcome to .NET 10.0!
|
||||
2026-07-04T11:43:15.1993739Z ---------------------
|
||||
2026-07-04T11:43:15.1993852Z SDK Version: 10.0.301
|
||||
2026-07-04T11:43:15.1993939Z
|
||||
2026-07-04T11:43:15.1994017Z Telemetry
|
||||
2026-07-04T11:43:15.1994238Z ---------
|
||||
2026-07-04T11:43:15.1994335Z The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
|
||||
2026-07-04T11:43:15.1994504Z
|
||||
2026-07-04T11:43:15.1994587Z Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
|
||||
2026-07-04T11:43:15.6166548Z
|
||||
2026-07-04T11:43:15.6168560Z ----------------
|
||||
2026-07-04T11:43:15.6168781Z Installed an ASP.NET Core HTTPS development certificate.
|
||||
2026-07-04T11:43:15.6169045Z To trust the certificate, run 'dotnet dev-certs https --trust'
|
||||
2026-07-04T11:43:15.6170166Z Learn about HTTPS: https://aka.ms/dotnet-https
|
||||
2026-07-04T11:43:15.6171653Z
|
||||
2026-07-04T11:43:15.6187095Z ----------------
|
||||
2026-07-04T11:43:15.6187441Z Write your first app: https://aka.ms/dotnet-hello-world
|
||||
2026-07-04T11:43:15.6187561Z Find out what's new: https://aka.ms/dotnet-whats-new
|
||||
2026-07-04T11:43:15.6187695Z Explore documentation: https://aka.ms/dotnet-docs
|
||||
2026-07-04T11:43:15.6187906Z Report issues and find source on GitHub: https://github.com/dotnet/core
|
||||
2026-07-04T11:43:15.6188022Z Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
|
||||
2026-07-04T11:43:15.6188119Z --------------------------------------------------------------------------------------
|
||||
2026-07-04T11:43:17.6127744Z Determining projects to restore...
|
||||
2026-07-04T11:43:25.0109033Z Restored /workspace/***/taxbaik/src/TaxBaik.Infrastructure/TaxBaik.Infrastructure.csproj (in 5.86 sec).
|
||||
2026-07-04T11:43:25.0112880Z Restored /workspace/***/taxbaik/src/TaxBaik.Web/TaxBaik.Web.csproj (in 5.86 sec).
|
||||
2026-07-04T11:43:25.0327726Z Restored /workspace/***/taxbaik/src/TaxBaik.Domain/TaxBaik.Domain.csproj (in 9 ms).
|
||||
2026-07-04T11:43:25.3129051Z Restored /workspace/***/taxbaik/src/TaxBaik.Application/TaxBaik.Application.csproj (in 262 ms).
|
||||
2026-07-04T11:43:31.6801430Z Restored /workspace/***/taxbaik/src/TaxBaik.Application.Tests/TaxBaik.Application.Tests.csproj (in 6.31 sec).
|
||||
2026-07-04T11:43:32.4593603Z Restored /workspace/***/taxbaik/src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj (in 7.43 sec).
|
||||
2026-07-04T11:43:32.7525159Z ::group::Run dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:43:32.7525554Z dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:43:32.7525805Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:43:32.7525993Z ::endgroup::
|
||||
2026-07-04T11:43:53.4249034Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:44:05.0763087Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:44:09.1168757Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T11:45:17.9673308Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:45:18.0118709Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/wwwroot
|
||||
2026-07-04T11:45:54.8469841Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T11:45:58.7533019Z TaxBaik.Application.Tests -> /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll
|
||||
2026-07-04T11:45:58.9053066Z
|
||||
2026-07-04T11:45:58.9054121Z Build succeeded.
|
||||
2026-07-04T11:45:58.9054328Z 0 Warning(s)
|
||||
2026-07-04T11:45:58.9054503Z 0 Error(s)
|
||||
2026-07-04T11:45:58.9054957Z
|
||||
2026-07-04T11:45:58.9055109Z Time Elapsed 00:02:24.73
|
||||
2026-07-04T11:45:59.3909332Z ::group::Run dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T11:45:59.3909711Z dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T11:45:59.3909832Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:45:59.3909955Z ::endgroup::
|
||||
2026-07-04T11:46:06.7562907Z Test run for /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll (.NETCoreApp,Version=v10.0)
|
||||
2026-07-04T11:46:07.4871282Z A total of 1 test files matched the specified pattern.
|
||||
2026-07-04T11:46:11.1428818Z
|
||||
2026-07-04T11:46:11.2278716Z Passed! - Failed: 0, Passed: 26, Skipped: 0, Total: 26, Duration: 549 ms - TaxBaik.Application.Tests.dll (net10.0)
|
||||
2026-07-04T11:46:11.7079415Z ::group::Run set -e
|
||||
2026-07-04T11:46:11.7079754Z set -e
|
||||
2026-07-04T11:46:11.7079872Z mkdir -p ./publish-logs
|
||||
2026-07-04T11:46:11.7079963Z web_log="./publish-logs/publish-web.log"
|
||||
2026-07-04T11:46:11.7080061Z start=$(date +%s)
|
||||
2026-07-04T11:46:11.7080147Z # Web.Client needs a Release static-web-assets manifest for Web publish.
|
||||
2026-07-04T11:46:11.7080239Z # Build it explicitly so publish can reuse the prepared outputs.
|
||||
2026-07-04T11:46:11.7080328Z dotnet build src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:46:11.7080428Z # Build the Web host in Release as well so publish has the same inputs
|
||||
2026-07-04T11:46:11.7080514Z # the server uses in production.
|
||||
2026-07-04T11:46:11.7080599Z dotnet build src/TaxBaik.Web/TaxBaik.Web.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:46:11.7080694Z echo "--- Web.Client Release artifacts ---"
|
||||
2026-07-04T11:46:11.7080773Z ls -la src/TaxBaik.Web.Client/bin/Release/net10.0 || true
|
||||
2026-07-04T11:46:11.7080858Z ls -la src/TaxBaik.Web.Client/obj/Release/net10.0 || true
|
||||
2026-07-04T11:46:11.7080939Z if ! dotnet publish src/TaxBaik.Web/ \
|
||||
2026-07-04T11:46:11.7081016Z -c Release \
|
||||
2026-07-04T11:46:11.7081110Z -o ./publish \
|
||||
2026-07-04T11:46:11.7081184Z --no-restore \
|
||||
2026-07-04T11:46:11.7081258Z -p:SelfContained=false \
|
||||
2026-07-04T11:46:11.7081332Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T11:46:11.7081410Z -p:PerformanceSummary=true \
|
||||
2026-07-04T11:46:11.7081585Z -clp:Summary \
|
||||
2026-07-04T11:46:11.7081673Z -bl:"./publish-logs/publish-web.binlog" >"$web_log" 2>&1; then
|
||||
2026-07-04T11:46:11.7081765Z echo "=== Publish Web failed; tailing log ==="
|
||||
2026-07-04T11:46:11.7081865Z tail -n 120 "$web_log" || true
|
||||
2026-07-04T11:46:11.7081950Z exit 1
|
||||
2026-07-04T11:46:11.7082038Z fi
|
||||
2026-07-04T11:46:11.7082108Z end=$(date +%s)
|
||||
2026-07-04T11:46:11.7082208Z echo "✓ Publish Web elapsed: $((end - start))s"
|
||||
2026-07-04T11:46:11.7082314Z ls -lh ./publish-logs/publish-web.binlog
|
||||
2026-07-04T11:46:11.7082407Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:46:11.7082514Z ::endgroup::
|
||||
2026-07-04T11:46:15.5308281Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:46:16.2218336Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:47:07.0057046Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:07.0057566Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T11:47:07.1355542Z
|
||||
2026-07-04T11:47:07.1376553Z Build succeeded.
|
||||
2026-07-04T11:47:07.1390711Z 0 Warning(s)
|
||||
2026-07-04T11:47:07.1391205Z 0 Error(s)
|
||||
2026-07-04T11:47:07.1391393Z
|
||||
2026-07-04T11:47:07.1391776Z Time Elapsed 00:00:54.15
|
||||
2026-07-04T11:47:14.7841475Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:47:14.9093264Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T11:47:16.7126389Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:47:26.1349693Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:26.1377350Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T11:47:45.8590530Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T11:47:46.1057603Z
|
||||
2026-07-04T11:47:46.1058993Z Build succeeded.
|
||||
2026-07-04T11:47:46.1106751Z 0 Warning(s)
|
||||
2026-07-04T11:47:46.1107029Z 0 Error(s)
|
||||
2026-07-04T11:47:46.1107202Z
|
||||
2026-07-04T11:47:46.1317117Z Time Elapsed 00:00:36.73
|
||||
2026-07-04T11:47:46.4310398Z --- Web.Client Release artifacts ---
|
||||
2026-07-04T11:47:46.4667727Z total 42056
|
||||
2026-07-04T11:47:46.4668992Z drwxr-xr-x 3 root root 20480 Jul 4 11:47 .
|
||||
2026-07-04T11:47:46.4694723Z drwxr-xr-x 3 root root 4096 Jul 4 11:46 ..
|
||||
2026-07-04T11:47:46.4695108Z -rwxr--r-- 1 root root 55632 May 20 20:19 Microsoft.AspNetCore.Authorization.dll
|
||||
2026-07-04T11:47:46.4695685Z -rwxr--r-- 1 root root 34128 May 20 20:19 Microsoft.AspNetCore.Components.Authorization.dll
|
||||
2026-07-04T11:47:46.4695976Z -rwxr--r-- 1 root root 47952 May 20 20:19 Microsoft.AspNetCore.Components.Forms.dll
|
||||
2026-07-04T11:47:46.4696583Z -rwxr--r-- 1 root root 189264 May 20 20:19 Microsoft.AspNetCore.Components.Web.dll
|
||||
2026-07-04T11:47:46.4696870Z -rwxr--r-- 1 root root 166736 May 20 20:20 Microsoft.AspNetCore.Components.WebAssembly.dll
|
||||
2026-07-04T11:47:46.4697376Z -rwxr--r-- 1 root root 399184 May 20 20:19 Microsoft.AspNetCore.Components.dll
|
||||
2026-07-04T11:47:46.4697743Z -rwxr--r-- 1 root root 16208 May 20 20:18 Microsoft.AspNetCore.Metadata.dll
|
||||
2026-07-04T11:47:46.4697927Z -rwxr--r-- 1 root root 19248 Dec 12 2025 Microsoft.Bcl.Cryptography.dll
|
||||
2026-07-04T11:47:46.4698489Z -rwxr--r-- 1 root root 311632 May 20 18:30 Microsoft.CSharp.dll
|
||||
2026-07-04T11:47:46.4698771Z -rwxr--r-- 1 root root 38192 Oct 24 2025 Microsoft.Extensions.Caching.Abstractions.dll
|
||||
2026-07-04T11:47:46.4699552Z -rwxr--r-- 1 root root 28496 May 20 19:29 Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
2026-07-04T11:47:46.4699752Z -rwxr--r-- 1 root root 43344 May 20 19:32 Microsoft.Extensions.Configuration.Binder.dll
|
||||
2026-07-04T11:47:46.4699872Z -rwxr--r-- 1 root root 28496 May 20 19:34 Microsoft.Extensions.Configuration.FileExtensions.dll
|
||||
2026-07-04T11:47:46.4700414Z -rwxr--r-- 1 root root 27984 May 20 19:36 Microsoft.Extensions.Configuration.Json.dll
|
||||
2026-07-04T11:47:46.4700599Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Configuration.dll
|
||||
2026-07-04T11:47:46.4700693Z -rwxr--r-- 1 root root 65872 May 20 19:29 Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
2026-07-04T11:47:46.4700787Z -rwxr--r-- 1 root root 95568 May 20 19:30 Microsoft.Extensions.DependencyInjection.dll
|
||||
2026-07-04T11:47:46.4700895Z -rwxr--r-- 1 root root 31056 May 20 19:32 Microsoft.Extensions.Diagnostics.Abstractions.dll
|
||||
2026-07-04T11:47:46.4700983Z -rwxr--r-- 1 root root 36176 May 20 19:34 Microsoft.Extensions.Diagnostics.dll
|
||||
2026-07-04T11:47:46.4701400Z -rwxr--r-- 1 root root 23376 May 20 19:29 Microsoft.Extensions.FileProviders.Abstractions.dll
|
||||
2026-07-04T11:47:46.4701559Z -rwxr--r-- 1 root root 45392 May 20 19:33 Microsoft.Extensions.FileProviders.Physical.dll
|
||||
2026-07-04T11:47:46.4701682Z -rwxr--r-- 1 root root 47952 May 20 19:30 Microsoft.Extensions.FileSystemGlobbing.dll
|
||||
2026-07-04T11:47:46.4702060Z -rwxr--r-- 1 root root 93008 May 20 19:37 Microsoft.Extensions.Http.dll
|
||||
2026-07-04T11:47:46.4702248Z -rwxr--r-- 1 root root 19576 Mar 25 2023 Microsoft.Extensions.Localization.Abstractions.dll
|
||||
2026-07-04T11:47:46.4702365Z -rwxr--r-- 1 root root 31872 Mar 25 2023 Microsoft.Extensions.Localization.dll
|
||||
2026-07-04T11:47:46.4702453Z -rwxr--r-- 1 root root 66896 May 20 19:29 Microsoft.Extensions.Logging.Abstractions.dll
|
||||
2026-07-04T11:47:46.4702541Z -rwxr--r-- 1 root root 51536 May 20 19:33 Microsoft.Extensions.Logging.dll
|
||||
2026-07-04T11:47:46.4702846Z -rwxr--r-- 1 root root 21840 May 20 19:33 Microsoft.Extensions.Options.ConfigurationExtensions.dll
|
||||
2026-07-04T11:47:46.4703042Z -rwxr--r-- 1 root root 65360 May 20 19:30 Microsoft.Extensions.Options.dll
|
||||
2026-07-04T11:47:46.4703143Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Primitives.dll
|
||||
2026-07-04T11:47:46.4703226Z -rwxr--r-- 1 root root 43344 May 20 20:19 Microsoft.Extensions.Validation.dll
|
||||
2026-07-04T11:47:46.4703337Z -rwxr--r-- 1 root root 19296 Jun 2 20:51 Microsoft.IdentityModel.Abstractions.dll
|
||||
2026-07-04T11:47:46.4703427Z -rwxr--r-- 1 root root 172856 Jun 2 20:52 Microsoft.IdentityModel.JsonWebTokens.dll
|
||||
2026-07-04T11:47:46.4704111Z -rwxr--r-- 1 root root 38200 Jun 2 20:51 Microsoft.IdentityModel.Logging.dll
|
||||
2026-07-04T11:47:46.4704286Z -rwxr--r-- 1 root root 407352 Jun 2 20:51 Microsoft.IdentityModel.Tokens.dll
|
||||
2026-07-04T11:47:46.4704476Z -rwxr--r-- 1 root root 24912 May 20 20:20 Microsoft.JSInterop.WebAssembly.dll
|
||||
2026-07-04T11:47:46.4704857Z -rwxr--r-- 1 root root 75088 May 20 20:19 Microsoft.JSInterop.dll
|
||||
2026-07-04T11:47:46.4704976Z -rwxr--r-- 1 root root 428880 May 20 18:30 Microsoft.VisualBasic.Core.dll
|
||||
2026-07-04T11:47:46.4705099Z -rwxr--r-- 1 root root 17232 May 20 18:31 Microsoft.VisualBasic.dll
|
||||
2026-07-04T11:47:46.4705201Z -rwxr--r-- 1 root root 15696 May 20 18:29 Microsoft.Win32.Primitives.dll
|
||||
2026-07-04T11:47:46.4705472Z -rwxr--r-- 1 root root 33104 May 20 18:29 Microsoft.Win32.Registry.dll
|
||||
2026-07-04T11:47:46.4705850Z -rwxr--r-- 1 root root 9108480 Sep 14 2023 MudBlazor.dll
|
||||
2026-07-04T11:47:46.4705955Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.AppContext.dll
|
||||
2026-07-04T11:47:46.4706348Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Buffers.dll
|
||||
2026-07-04T11:47:46.4706499Z -rwxr--r-- 1 root root 88912 May 20 18:29 System.Collections.Concurrent.dll
|
||||
2026-07-04T11:47:46.4706619Z -rwxr--r-- 1 root root 251216 May 20 18:29 System.Collections.Immutable.dll
|
||||
2026-07-04T11:47:46.4706709Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.NonGeneric.dll
|
||||
2026-07-04T11:47:46.4706812Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.Specialized.dll
|
||||
2026-07-04T11:47:46.4706922Z -rwxr--r-- 1 root root 112976 May 20 18:28 System.Collections.dll
|
||||
2026-07-04T11:47:46.4707306Z -rwxr--r-- 1 root root 102736 May 20 18:31 System.ComponentModel.Annotations.dll
|
||||
2026-07-04T11:47:46.4707413Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ComponentModel.DataAnnotations.dll
|
||||
2026-07-04T11:47:46.4707499Z -rwxr--r-- 1 root root 26448 May 20 18:29 System.ComponentModel.EventBasedAsync.dll
|
||||
2026-07-04T11:47:46.4707610Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.ComponentModel.Primitives.dll
|
||||
2026-07-04T11:47:46.4707692Z -rwxr--r-- 1 root root 316752 May 20 18:31 System.ComponentModel.TypeConverter.dll
|
||||
2026-07-04T11:47:46.4714163Z -rwxr--r-- 1 root root 16208 May 20 18:29 System.ComponentModel.dll
|
||||
2026-07-04T11:47:46.4714382Z -rwxr--r-- 1 root root 19280 May 20 18:31 System.Configuration.dll
|
||||
2026-07-04T11:47:46.4715040Z -rwxr--r-- 1 root root 54096 May 20 18:31 System.Console.dll
|
||||
2026-07-04T11:47:46.4715241Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Core.dll
|
||||
2026-07-04T11:47:46.4715834Z -rwxr--r-- 1 root root 1018192 May 20 18:31 System.Data.Common.dll
|
||||
2026-07-04T11:47:46.4716631Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Data.DataSetExtensions.dll
|
||||
2026-07-04T11:47:46.4716921Z -rwxr--r-- 1 root root 25424 May 20 18:31 System.Data.dll
|
||||
2026-07-04T11:47:46.4717074Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Diagnostics.Contracts.dll
|
||||
2026-07-04T11:47:46.4717681Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Diagnostics.Debug.dll
|
||||
2026-07-04T11:47:46.4718000Z -rwxr--r-- 1 root root 202576 May 20 18:29 System.Diagnostics.DiagnosticSource.dll
|
||||
2026-07-04T11:47:46.4718570Z -rwxr--r-- 1 root root 22864 May 20 18:29 System.Diagnostics.FileVersionInfo.dll
|
||||
2026-07-04T11:47:46.4718878Z -rwxr--r-- 1 root root 56656 May 20 18:29 System.Diagnostics.Process.dll
|
||||
2026-07-04T11:47:46.4719100Z -rwxr--r-- 1 root root 25936 May 20 18:29 System.Diagnostics.StackTrace.dll
|
||||
2026-07-04T11:47:46.4719801Z -rwxr--r-- 1 root root 31568 May 20 18:31 System.Diagnostics.TextWriterTraceListener.dll
|
||||
2026-07-04T11:47:46.4719987Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Diagnostics.Tools.dll
|
||||
2026-07-04T11:47:46.4724747Z -rwxr--r-- 1 root root 58704 May 20 18:29 System.Diagnostics.TraceSource.dll
|
||||
2026-07-04T11:47:46.4725246Z -rwxr--r-- 1 root root 16208 May 20 18:28 System.Diagnostics.Tracing.dll
|
||||
2026-07-04T11:47:46.4725363Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Drawing.Primitives.dll
|
||||
2026-07-04T11:47:46.4725454Z -rwxr--r-- 1 root root 20304 May 20 18:31 System.Drawing.dll
|
||||
2026-07-04T11:47:46.4725774Z -rwxr--r-- 1 root root 16208 May 20 18:30 System.Dynamic.Runtime.dll
|
||||
2026-07-04T11:47:46.4725920Z -rwxr--r-- 1 root root 97104 May 20 18:29 System.Formats.Asn1.dll
|
||||
2026-07-04T11:47:46.4726008Z -rwxr--r-- 1 root root 38736 May 20 18:29 System.Formats.Tar.dll
|
||||
2026-07-04T11:47:46.4726397Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.Calendars.dll
|
||||
2026-07-04T11:47:46.4726550Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Globalization.Extensions.dll
|
||||
2026-07-04T11:47:46.4726642Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.dll
|
||||
2026-07-04T11:47:46.4726740Z -rwxr--r-- 1 root root 28496 May 20 18:29 System.IO.Compression.Brotli.dll
|
||||
2026-07-04T11:47:46.4726846Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.IO.Compression.FileSystem.dll
|
||||
2026-07-04T11:47:46.4727134Z -rwxr--r-- 1 root root 53584 May 20 18:29 System.IO.Compression.ZipFile.dll
|
||||
2026-07-04T11:47:46.4727322Z -rwxr--r-- 1 root root 167760 May 20 18:31 System.IO.Compression.dll
|
||||
2026-07-04T11:47:46.4727437Z -rwxr--r-- 1 root root 32080 May 20 18:29 System.IO.FileSystem.AccessControl.dll
|
||||
2026-07-04T11:47:46.4727525Z -rwxr--r-- 1 root root 23888 May 20 18:29 System.IO.FileSystem.DriveInfo.dll
|
||||
2026-07-04T11:47:46.4727697Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.IO.FileSystem.Primitives.dll
|
||||
2026-07-04T11:47:46.4728370Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.IO.FileSystem.Watcher.dll
|
||||
2026-07-04T11:47:46.4731239Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.FileSystem.dll
|
||||
2026-07-04T11:47:46.4731474Z -rwxr--r-- 1 root root 35152 May 20 18:30 System.IO.IsolatedStorage.dll
|
||||
2026-07-04T11:47:46.4731757Z -rwxr--r-- 1 root root 50000 May 20 18:31 System.IO.MemoryMappedFiles.dll
|
||||
2026-07-04T11:47:46.4731888Z -rwxr--r-- 1 root root 78160 May 20 18:29 System.IO.Pipelines.dll
|
||||
2026-07-04T11:47:46.4731992Z -rwxr--r-- 1 root root 23376 May 20 18:29 System.IO.Pipes.AccessControl.dll
|
||||
2026-07-04T11:47:46.4732083Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.IO.Pipes.dll
|
||||
2026-07-04T11:47:46.4732167Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.UnmanagedMemoryStream.dll
|
||||
2026-07-04T11:47:46.4732269Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.dll
|
||||
2026-07-04T11:47:46.4732362Z -rwxr--r-- 1 root root 92000 Jun 2 20:51 System.IdentityModel.Tokens.Jwt.dll
|
||||
2026-07-04T11:47:46.4732446Z -rwxr--r-- 1 root root 456528 May 20 18:29 System.Linq.AsyncEnumerable.dll
|
||||
2026-07-04T11:47:46.4732551Z -rwxr--r-- 1 root root 575312 May 20 18:29 System.Linq.Expressions.dll
|
||||
2026-07-04T11:47:46.4732640Z -rwxr--r-- 1 root root 223056 May 20 18:31 System.Linq.Parallel.dll
|
||||
2026-07-04T11:47:46.4732725Z -rwxr--r-- 1 root root 78672 May 20 18:31 System.Linq.Queryable.dll
|
||||
2026-07-04T11:47:46.4732809Z -rwxr--r-- 1 root root 201040 May 20 18:29 System.Linq.dll
|
||||
2026-07-04T11:47:46.4732905Z -rwxr--r-- 1 root root 55632 May 20 18:28 System.Memory.dll
|
||||
2026-07-04T11:47:46.4733047Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.Http.Json.dll
|
||||
2026-07-04T11:47:46.4733211Z -rwxr--r-- 1 root root 296272 May 20 18:31 System.Net.Http.dll
|
||||
2026-07-04T11:47:46.4733432Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.HttpListener.dll
|
||||
2026-07-04T11:47:46.4733752Z -rwxr--r-- 1 root root 105296 May 20 18:31 System.Net.Mail.dll
|
||||
2026-07-04T11:47:46.4733914Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Net.NameResolution.dll
|
||||
2026-07-04T11:47:46.4737427Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.Net.NetworkInformation.dll
|
||||
2026-07-04T11:47:46.4737629Z -rwxr--r-- 1 root root 27984 May 20 18:29 System.Net.Ping.dll
|
||||
2026-07-04T11:47:46.4737758Z -rwxr--r-- 1 root root 107344 May 20 18:31 System.Net.Primitives.dll
|
||||
2026-07-04T11:47:46.4749705Z -rwxr--r-- 1 root root 39248 May 20 18:30 System.Net.Quic.dll
|
||||
2026-07-04T11:47:46.4749969Z -rwxr--r-- 1 root root 65872 May 20 18:30 System.Net.Requests.dll
|
||||
2026-07-04T11:47:46.4750071Z -rwxr--r-- 1 root root 114512 May 20 18:30 System.Net.Security.dll
|
||||
2026-07-04T11:47:46.4750164Z -rwxr--r-- 1 root root 40784 May 20 18:29 System.Net.ServerSentEvents.dll
|
||||
2026-07-04T11:47:46.4755941Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Net.ServicePoint.dll
|
||||
2026-07-04T11:47:46.4758836Z -rwxr--r-- 1 root root 74576 May 20 18:29 System.Net.Sockets.dll
|
||||
2026-07-04T11:47:46.4758989Z -rwxr--r-- 1 root root 56144 May 20 18:31 System.Net.WebClient.dll
|
||||
2026-07-04T11:47:46.4759110Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.Net.WebHeaderCollection.dll
|
||||
2026-07-04T11:47:46.4766505Z -rwxr--r-- 1 root root 21840 May 20 18:31 System.Net.WebProxy.dll
|
||||
2026-07-04T11:47:46.4766734Z -rwxr--r-- 1 root root 52560 May 20 18:31 System.Net.WebSockets.Client.dll
|
||||
2026-07-04T11:47:46.4777112Z -rwxr--r-- 1 root root 108880 May 20 18:31 System.Net.WebSockets.dll
|
||||
2026-07-04T11:47:46.4777629Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Net.dll
|
||||
2026-07-04T11:47:46.4777738Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Numerics.Vectors.dll
|
||||
2026-07-04T11:47:46.4777835Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Numerics.dll
|
||||
2026-07-04T11:47:46.4777927Z -rwxr--r-- 1 root root 41296 May 20 18:29 System.ObjectModel.dll
|
||||
2026-07-04T11:47:46.4778031Z -rwxr--r-- 1 root root 4880208 May 20 18:19 System.Private.CoreLib.dll
|
||||
2026-07-04T11:47:46.4778120Z -rwxr--r-- 1 root root 859472 May 20 18:31 System.Private.DataContractSerialization.dll
|
||||
2026-07-04T11:47:46.4778225Z -rwxr--r-- 1 root root 105808 May 20 18:28 System.Private.Uri.dll
|
||||
2026-07-04T11:47:46.4778315Z -rwxr--r-- 1 root root 153936 May 20 18:30 System.Private.Xml.Linq.dll
|
||||
2026-07-04T11:47:46.4778406Z -rwxr--r-- 1 root root 3106128 May 20 18:30 System.Private.Xml.dll
|
||||
2026-07-04T11:47:46.4778494Z -rwxr--r-- 1 root root 38224 May 20 18:31 System.Reflection.DispatchProxy.dll
|
||||
2026-07-04T11:47:46.4778636Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.ILGeneration.dll
|
||||
2026-07-04T11:47:46.4778754Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.Lightweight.dll
|
||||
2026-07-04T11:47:46.4778869Z -rwxr--r-- 1 root root 133456 May 20 18:29 System.Reflection.Emit.dll
|
||||
2026-07-04T11:47:46.4778954Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Reflection.Extensions.dll
|
||||
2026-07-04T11:47:46.4779106Z -rwxr--r-- 1 root root 503632 May 20 18:29 System.Reflection.Metadata.dll
|
||||
2026-07-04T11:47:46.4779280Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Reflection.Primitives.dll
|
||||
2026-07-04T11:47:46.4779471Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Reflection.TypeExtensions.dll
|
||||
2026-07-04T11:47:46.4779642Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Reflection.dll
|
||||
2026-07-04T11:47:46.4779820Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Resources.Reader.dll
|
||||
2026-07-04T11:47:46.4779997Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Resources.ResourceManager.dll
|
||||
2026-07-04T11:47:46.4780159Z -rwxr--r-- 1 root root 26960 May 20 18:31 System.Resources.Writer.dll
|
||||
2026-07-04T11:47:46.4780321Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Runtime.CompilerServices.Unsafe.dll
|
||||
2026-07-04T11:47:46.4783015Z -rwxr--r-- 1 root root 17232 May 20 18:30 System.Runtime.CompilerServices.VisualC.dll
|
||||
2026-07-04T11:47:46.4783246Z -rwxr--r-- 1 root root 17744 May 20 18:30 System.Runtime.Extensions.dll
|
||||
2026-07-04T11:47:46.4783840Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Runtime.Handles.dll
|
||||
2026-07-04T11:47:46.4784077Z -rwxr--r-- 1 root root 89936 May 20 18:31 System.Runtime.InteropServices.JavaScript.dll
|
||||
2026-07-04T11:47:46.4784217Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Runtime.InteropServices.RuntimeInformation.dll
|
||||
2026-07-04T11:47:46.4784315Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Runtime.InteropServices.dll
|
||||
2026-07-04T11:47:46.4784408Z -rwxr--r-- 1 root root 17232 May 20 18:29 System.Runtime.Intrinsics.dll
|
||||
2026-07-04T11:47:46.4784695Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Runtime.Loader.dll
|
||||
2026-07-04T11:47:46.4784787Z -rwxr--r-- 1 root root 145232 May 20 18:29 System.Runtime.Numerics.dll
|
||||
2026-07-04T11:47:46.4784881Z -rwxr--r-- 1 root root 65872 May 20 18:29 System.Runtime.Serialization.Formatters.dll
|
||||
2026-07-04T11:47:46.4784980Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Runtime.Serialization.Json.dll
|
||||
2026-07-04T11:47:46.4785088Z -rwxr--r-- 1 root root 23376 May 20 18:30 System.Runtime.Serialization.Primitives.dll
|
||||
2026-07-04T11:47:46.4785255Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Runtime.Serialization.Xml.dll
|
||||
2026-07-04T11:47:46.4787538Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Runtime.Serialization.dll
|
||||
2026-07-04T11:47:46.4787714Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Runtime.dll
|
||||
2026-07-04T11:47:46.4787807Z -rwxr--r-- 1 root root 58192 May 20 18:29 System.Security.AccessControl.dll
|
||||
2026-07-04T11:47:46.4787894Z -rwxr--r-- 1 root root 55120 May 20 18:29 System.Security.Claims.dll
|
||||
2026-07-04T11:47:46.4792248Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Security.Cryptography.Algorithms.dll
|
||||
2026-07-04T11:47:46.4792484Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Cng.dll
|
||||
2026-07-04T11:47:46.4792596Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Csp.dll
|
||||
2026-07-04T11:47:46.4792684Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Encoding.dll
|
||||
2026-07-04T11:47:46.4793025Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.OpenSsl.dll
|
||||
2026-07-04T11:47:46.4793131Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Primitives.dll
|
||||
2026-07-04T11:47:46.4793235Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Security.Cryptography.X509Certificates.dll
|
||||
2026-07-04T11:47:46.4793349Z -rwxr--r-- 1 root root 654160 May 20 18:31 System.Security.Cryptography.dll
|
||||
2026-07-04T11:47:46.4793439Z -rwxr--r-- 1 root root 37712 May 20 18:29 System.Security.Principal.Windows.dll
|
||||
2026-07-04T11:47:46.4797422Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Security.Principal.dll
|
||||
2026-07-04T11:47:46.4797641Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Security.SecureString.dll
|
||||
2026-07-04T11:47:46.4797736Z -rwxr--r-- 1 root root 18256 May 20 18:31 System.Security.dll
|
||||
2026-07-04T11:47:46.4797820Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ServiceModel.Web.dll
|
||||
2026-07-04T11:47:46.4797907Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.ServiceProcess.dll
|
||||
2026-07-04T11:47:46.4798463Z -rwxr--r-- 1 root root 742736 May 20 18:29 System.Text.Encoding.CodePages.dll
|
||||
2026-07-04T11:47:46.4798577Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Text.Encoding.Extensions.dll
|
||||
2026-07-04T11:47:46.4798664Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Text.Encoding.dll
|
||||
2026-07-04T11:47:46.4798753Z -rwxr--r-- 1 root root 65872 May 20 18:32 System.Text.Encodings.Web.dll
|
||||
2026-07-04T11:47:46.4800698Z -rwxr--r-- 1 root root 649040 May 20 18:30 System.Text.Json.dll
|
||||
2026-07-04T11:47:46.4800902Z -rwxr--r-- 1 root root 384848 May 20 18:30 System.Text.RegularExpressions.dll
|
||||
2026-07-04T11:47:46.4801000Z -rwxr--r-- 1 root root 33616 May 20 18:29 System.Threading.AccessControl.dll
|
||||
2026-07-04T11:47:46.4801108Z -rwxr--r-- 1 root root 66384 May 20 18:29 System.Threading.Channels.dll
|
||||
2026-07-04T11:47:46.4801200Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Overlapped.dll
|
||||
2026-07-04T11:47:46.4803346Z -rwxr--r-- 1 root root 185680 May 20 18:29 System.Threading.Tasks.Dataflow.dll
|
||||
2026-07-04T11:47:46.4803652Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Threading.Tasks.Extensions.dll
|
||||
2026-07-04T11:47:46.4803778Z -rwxr--r-- 1 root root 61264 May 20 18:31 System.Threading.Tasks.Parallel.dll
|
||||
2026-07-04T11:47:46.4803883Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Threading.Tasks.dll
|
||||
2026-07-04T11:47:46.4826592Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Thread.dll
|
||||
2026-07-04T11:47:46.4826923Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.ThreadPool.dll
|
||||
2026-07-04T11:47:46.4827478Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Threading.Timer.dll
|
||||
2026-07-04T11:47:46.4827621Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Threading.dll
|
||||
2026-07-04T11:47:46.4827719Z -rwxr--r-- 1 root root 175952 May 20 18:30 System.Transactions.Local.dll
|
||||
2026-07-04T11:47:46.4827816Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Transactions.dll
|
||||
2026-07-04T11:47:46.4827907Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.ValueTuple.dll
|
||||
2026-07-04T11:47:46.4827990Z -rwxr--r-- 1 root root 30032 May 20 18:31 System.Web.HttpUtility.dll
|
||||
2026-07-04T11:47:46.4828302Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Web.dll
|
||||
2026-07-04T11:47:46.4828408Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Windows.dll
|
||||
2026-07-04T11:47:46.4828498Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.Linq.dll
|
||||
2026-07-04T11:47:46.4828583Z -rwxr--r-- 1 root root 21840 May 20 18:30 System.Xml.ReaderWriter.dll
|
||||
2026-07-04T11:47:46.4828673Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Xml.Serialization.dll
|
||||
2026-07-04T11:47:46.4828756Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XDocument.dll
|
||||
2026-07-04T11:47:46.4828835Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XPath.XDocument.dll
|
||||
2026-07-04T11:47:46.4836968Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Xml.XPath.dll
|
||||
2026-07-04T11:47:46.4837091Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XmlDocument.dll
|
||||
2026-07-04T11:47:46.4837181Z -rwxr--r-- 1 root root 17744 May 20 18:31 System.Xml.XmlSerializer.dll
|
||||
2026-07-04T11:47:46.4837469Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Xml.dll
|
||||
2026-07-04T11:47:46.4837572Z -rwxr--r-- 1 root root 50000 May 20 18:32 System.dll
|
||||
2026-07-04T11:47:46.4837654Z -rw-r--r-- 1 root root 156672 Jul 4 11:44 TaxBaik.Application.dll
|
||||
2026-07-04T11:47:46.4837741Z -rw-r--r-- 1 root root 38472 Jul 4 11:44 TaxBaik.Application.pdb
|
||||
2026-07-04T11:47:46.4837836Z -rw-r--r-- 1 root root 37888 Jul 4 11:43 TaxBaik.Domain.dll
|
||||
2026-07-04T11:47:46.4837919Z -rw-r--r-- 1 root root 24100 Jul 4 11:43 TaxBaik.Domain.pdb
|
||||
2026-07-04T11:47:46.4838004Z -rw-r--r-- 1 root root 713216 Jul 4 11:46 TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:46.4838087Z -rw-r--r-- 1 root root 373136 Jul 4 11:46 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T11:47:46.4838338Z -rw-r--r-- 1 root root 2546 Jul 4 11:46 TaxBaik.Web.Client.runtimeconfig.json
|
||||
2026-07-04T11:47:46.4838449Z -rw-r--r-- 1 root root 1007340 Jul 4 11:47 TaxBaik.Web.Client.staticwebassets.endpoints.json
|
||||
2026-07-04T11:47:46.4838556Z -rw-r--r-- 1 root root 78064 Jul 4 11:47 TaxBaik.Web.Client.staticwebassets.runtime.json
|
||||
2026-07-04T11:47:46.4838657Z -rwxr--r-- 1 root root 16208 May 20 18:31 WindowsBase.dll
|
||||
2026-07-04T11:47:46.4838745Z -rwxr--r-- 1 root root 37898 May 20 18:42 dotnet.js
|
||||
2026-07-04T11:47:46.4838826Z -rwxr--r-- 1 root root 51818 May 20 18:42 dotnet.js.map
|
||||
2026-07-04T11:47:46.4838909Z -rwxr--r-- 1 root root 145050 May 20 18:43 dotnet.native.js
|
||||
2026-07-04T11:47:46.4839142Z -rwxr--r-- 1 root root 3002101 May 20 18:43 dotnet.native.wasm
|
||||
2026-07-04T11:47:46.4854365Z -rwxr--r-- 1 root root 198479 May 20 18:42 dotnet.runtime.js
|
||||
2026-07-04T11:47:46.4854700Z -rwxr--r-- 1 root root 276757 May 20 18:42 dotnet.runtime.js.map
|
||||
2026-07-04T11:47:46.4856315Z -rwxr--r-- 1 root root 956416 Apr 2 19:04 icudt_CJK.dat
|
||||
2026-07-04T11:47:46.4856510Z -rwxr--r-- 1 root root 550832 Apr 2 19:04 icudt_EFIGS.dat
|
||||
2026-07-04T11:47:46.4856618Z -rwxr--r-- 1 root root 1107168 Apr 2 19:04 icudt_no_CJK.dat
|
||||
2026-07-04T11:47:46.4856712Z -rwxr--r-- 1 root root 59728 May 20 18:31 mscorlib.dll
|
||||
2026-07-04T11:47:46.4856802Z -rwxr--r-- 1 root root 100688 May 20 18:32 netstandard.dll
|
||||
2026-07-04T11:47:46.4856882Z drwxr-xr-x 3 root root 4096 Jul 4 11:47 wwwroot
|
||||
2026-07-04T11:47:46.5011624Z total 4356
|
||||
2026-07-04T11:47:46.5012214Z drwxr-xr-x 8 root root 4096 Jul 4 11:47 .
|
||||
2026-07-04T11:47:46.5012363Z drwxr-xr-x 3 root root 4096 Jul 4 11:46 ..
|
||||
2026-07-04T11:47:46.5012540Z -rw-r--r-- 1 root root 196 Jul 4 11:46 .NETCoreApp,Version=v10.0.AssemblyAttributes.cs
|
||||
2026-07-04T11:47:46.5012747Z -rw-r--r-- 1 root root 137 Jul 4 11:46 EmbeddedAttribute.cs
|
||||
2026-07-04T11:47:46.5012869Z -rw-r--r-- 1 root root 0 Jul 4 11:47 TaxBaik..C36EE7CA.Up2Date
|
||||
2026-07-04T11:47:46.5012966Z -rw-r--r-- 1 root root 1008 Jul 4 11:46 TaxBaik.Web.Client.AssemblyInfo.cs
|
||||
2026-07-04T11:47:46.5013067Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.AssemblyInfoInputs.cache
|
||||
2026-07-04T11:47:46.5013226Z -rw-r--r-- 1 root root 16355 Jul 4 11:46 TaxBaik.Web.Client.GeneratedMSBuildEditorConfig.editorconfig
|
||||
2026-07-04T11:47:46.5013330Z -rw-r--r-- 1 root root 433 Jul 4 11:46 TaxBaik.Web.Client.GlobalUsings.g.cs
|
||||
2026-07-04T11:47:46.5013418Z -rw-r--r-- 1 root root 0 Jul 4 11:46 TaxBaik.Web.Client.MvcApplicationPartsAssemblyInfo.cache
|
||||
2026-07-04T11:47:46.5013674Z -rw-r--r-- 1 root root 27329 Jul 4 11:46 TaxBaik.Web.Client.assets.cache
|
||||
2026-07-04T11:47:46.5013797Z -rw-r--r-- 1 root root 20456 Jul 4 11:46 TaxBaik.Web.Client.csproj.AssemblyReference.cache
|
||||
2026-07-04T11:47:46.5013898Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.csproj.CoreCompileInputs.cache
|
||||
2026-07-04T11:47:46.5014122Z -rw-r--r-- 1 root root 136894 Jul 4 11:47 TaxBaik.Web.Client.csproj.FileListAbsolute.txt
|
||||
2026-07-04T11:47:46.5014229Z -rw-r--r-- 1 root root 713216 Jul 4 11:46 TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:46.5014324Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.genruntimeconfig.cache
|
||||
2026-07-04T11:47:46.5014437Z -rw-r--r-- 1 root root 373136 Jul 4 11:46 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T11:47:46.5014522Z -rw-r--r-- 1 root root 276 Jul 4 11:46 ValidatableTypeAttribute.cs
|
||||
2026-07-04T11:47:46.5014623Z -rw-r--r-- 1 root root 3 Jul 4 11:47 blazor.build.boot-extension.json
|
||||
2026-07-04T11:47:46.5014709Z drwxr-xr-x 2 root root 20480 Jul 4 11:47 compressed
|
||||
2026-07-04T11:47:46.5014796Z -rw-r--r-- 1 root root 93392 Jul 4 11:46 dotnet.js
|
||||
2026-07-04T11:47:46.5014882Z -rw-r--r-- 1 root root 276707 Jul 4 11:47 rbcswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5014965Z drwxr-xr-x 2 root root 4096 Jul 4 11:47 ref
|
||||
2026-07-04T11:47:46.5015048Z drwxr-xr-x 2 root root 4096 Jul 4 11:46 refint
|
||||
2026-07-04T11:47:46.5015127Z -rw-r--r-- 1 root root 322 Jul 4 11:46 rjimswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015214Z -rw-r--r-- 1 root root 3374 Jul 4 11:46 rjsmcshtml.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015311Z -rw-r--r-- 1 root root 3374 Jul 4 11:46 rjsmrazor.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015409Z -rw-r--r-- 1 root root 4157 Jul 4 11:46 rpswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015507Z drwxr-xr-x 2 root root 4096 Jul 4 11:46 staticwebassets
|
||||
2026-07-04T11:47:46.5015589Z -rw-r--r-- 1 root root 1007340 Jul 4 11:47 staticwebassets.build.endpoints.json
|
||||
2026-07-04T11:47:46.5015678Z -rw-r--r-- 1 root root 1564906 Jul 4 11:47 staticwebassets.build.json
|
||||
2026-07-04T11:47:46.5015781Z -rw-r--r-- 1 root root 44 Jul 4 11:47 staticwebassets.build.json.cache
|
||||
2026-07-04T11:47:46.5015869Z -rw-r--r-- 1 root root 78064 Jul 4 11:47 staticwebassets.development.json
|
||||
2026-07-04T11:47:46.5015953Z -rw-r--r-- 1 root root 0 Jul 4 11:47 swae.build.ex.cache
|
||||
2026-07-04T11:47:46.5016051Z drwxr-xr-x 2 root root 4096 Jul 4 11:47 tmp-webcil
|
||||
2026-07-04T11:47:46.5016368Z drwxr-xr-x 2 root root 20480 Jul 4 11:46 webcil
|
||||
2026-07-04T11:52:06.9293539Z ✓ Publish Web elapsed: 355s
|
||||
2026-07-04T11:52:06.9355856Z -rw-r--r-- 1 root root 2.2M Jul 4 11:52 ./publish-logs/publish-web.binlog
|
||||
2026-07-04T11:52:07.1179623Z ::group::Run set -e
|
||||
2026-07-04T11:52:07.1179966Z set -e
|
||||
2026-07-04T11:52:07.1180076Z mkdir -p ./publish-logs
|
||||
2026-07-04T11:52:07.1180177Z # Proxy is not part of the solution restore graph, so restore it once
|
||||
2026-07-04T11:52:07.1180269Z # here before publishing to avoid NETSDK1004 in CI.
|
||||
2026-07-04T11:52:07.1180375Z dotnet restore src/TaxBaik.Proxy/
|
||||
2026-07-04T11:52:07.1180458Z dotnet build src/TaxBaik.Proxy/TaxBaik.Proxy.csproj -c Release --no-restore
|
||||
2026-07-04T11:52:07.1180545Z start=$(date +%s)
|
||||
2026-07-04T11:52:07.1180618Z dotnet publish src/TaxBaik.Proxy/ \
|
||||
2026-07-04T11:52:07.1180693Z -c Release \
|
||||
2026-07-04T11:52:07.1180763Z -o ./publish/proxy \
|
||||
2026-07-04T11:52:07.1180877Z --no-restore \
|
||||
2026-07-04T11:52:07.1180947Z --no-build \
|
||||
2026-07-04T11:52:07.1181021Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T11:52:07.1181106Z -p:PerformanceSummary=true \
|
||||
2026-07-04T11:52:07.1181197Z -clp:Summary \
|
||||
2026-07-04T11:52:07.1181269Z -bl:./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:07.1181341Z end=$(date +%s)
|
||||
2026-07-04T11:52:07.1181433Z echo "✓ Publish Proxy elapsed: $((end - start))s"
|
||||
2026-07-04T11:52:07.1181524Z ls -lh ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:07.1181605Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:07.1181716Z ::endgroup::
|
||||
2026-07-04T11:52:09.6375394Z Determining projects to restore...
|
||||
2026-07-04T11:52:10.7577763Z Restored /workspace/***/taxbaik/src/TaxBaik.Proxy/TaxBaik.Proxy.csproj (in 218 ms).
|
||||
2026-07-04T11:52:15.5113205Z TaxBaik.Proxy -> /workspace/***/taxbaik/src/TaxBaik.Proxy/bin/Release/net10.0/TaxBaik.Proxy.dll
|
||||
2026-07-04T11:52:15.6377985Z
|
||||
2026-07-04T11:52:15.6378518Z Build succeeded.
|
||||
2026-07-04T11:52:15.6547716Z 0 Warning(s)
|
||||
2026-07-04T11:52:15.6548226Z 0 Error(s)
|
||||
2026-07-04T11:52:15.6548404Z
|
||||
2026-07-04T11:52:15.6548492Z Time Elapsed 00:00:03.35
|
||||
2026-07-04T11:52:19.1638052Z TaxBaik.Proxy -> /workspace/***/taxbaik/publish/proxy/
|
||||
2026-07-04T11:52:19.1887325Z
|
||||
2026-07-04T11:52:19.1911472Z Build succeeded.
|
||||
2026-07-04T11:52:19.1938777Z 0 Warning(s)
|
||||
2026-07-04T11:52:19.1940392Z 0 Error(s)
|
||||
2026-07-04T11:52:19.1943224Z
|
||||
2026-07-04T11:52:19.1944917Z Time Elapsed 00:00:01.93
|
||||
2026-07-04T11:52:19.2978414Z ✓ Publish Proxy elapsed: 4s
|
||||
2026-07-04T11:52:19.3007702Z -rw-r--r-- 1 root root 335K Jul 4 11:52 ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:19.4718601Z ::group::Run set -e
|
||||
2026-07-04T11:52:19.4719182Z set -e
|
||||
2026-07-04T11:52:19.4719307Z JWT_SECRET_KEY="***"
|
||||
2026-07-04T11:52:19.4719410Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T11:52:19.4719510Z TELEGRAM_CHAT_ID="***"
|
||||
2026-07-04T11:52:19.4719587Z TELEGRAM_INQUIRY_CHAT_ID=""
|
||||
2026-07-04T11:52:19.4719740Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T11:52:19.4719815Z [ -z "$JWT_SECRET_KEY" ] && { echo "Missing TAXBAIK_JWT_SECRET_KEY" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4719926Z [ -z "$TELEGRAM_BOT_TOKEN" ] && { echo "Missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4720014Z [ -z "$TELEGRAM_CHAT_ID" ] && { echo "Missing TAXBAIK_TELEGRAM_CHAT_ID" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4720103Z [ -z "$TELEGRAM_INQUIRY_CHAT_ID" ] && TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_CHAT_ID"
|
||||
2026-07-04T11:52:19.4720235Z [ -z "$TELEGRAM_SYSTEM_CHAT_ID" ] && TELEGRAM_SYSTEM_CHAT_ID="-5585148480"
|
||||
2026-07-04T11:52:19.4720321Z JWT_SECRET_KEY="$JWT_SECRET_KEY" \
|
||||
2026-07-04T11:52:19.4720412Z TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" \
|
||||
2026-07-04T11:52:19.4720488Z TELEGRAM_CHAT_ID="$TELEGRAM_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720567Z TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_INQUIRY_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720641Z TELEGRAM_SYSTEM_CHAT_ID="$TELEGRAM_SYSTEM_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720730Z python3 -c '
|
||||
2026-07-04T11:52:19.4720814Z import json, os, pathlib
|
||||
2026-07-04T11:52:19.4720884Z pathlib.Path("./publish/appsettings.Production.json").write_text(
|
||||
2026-07-04T11:52:19.4720964Z json.dumps({
|
||||
2026-07-04T11:52:19.4721057Z "Jwt": {"SecretKey": os.environ["JWT_SECRET_KEY"]},
|
||||
2026-07-04T11:52:19.4721142Z "Telegram": {
|
||||
2026-07-04T11:52:19.4721214Z "BotToken": os.environ["TELEGRAM_BOT_TOKEN"],
|
||||
2026-07-04T11:52:19.4721307Z "ChatId": os.environ["TELEGRAM_CHAT_ID"],
|
||||
2026-07-04T11:52:19.4721379Z "InquiryChatId": os.environ["TELEGRAM_INQUIRY_CHAT_ID"],
|
||||
2026-07-04T11:52:19.4721452Z "SystemChatId": os.environ["TELEGRAM_SYSTEM_CHAT_ID"]
|
||||
2026-07-04T11:52:19.4721532Z }
|
||||
2026-07-04T11:52:19.4721614Z }, ensure_ascii=False, indent=2),
|
||||
2026-07-04T11:52:19.4721684Z encoding="utf-8"
|
||||
2026-07-04T11:52:19.4721970Z )'
|
||||
2026-07-04T11:52:19.4722065Z test -s ./publish/appsettings.Production.json || { echo "appsettings.Production.json is empty" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4722178Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:19.4722271Z ::endgroup::
|
||||
2026-07-04T11:52:19.9176988Z ::group::Run test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177419Z test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177566Z test -s ./publish/proxy/TaxBaik.Proxy.runtimeconfig.json || { echo "TaxBaik.Proxy.runtimeconfig.json missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177671Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:19.9177787Z ::endgroup::
|
||||
2026-07-04T11:52:20.3760171Z ::group::Run mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T11:52:20.3760511Z mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T11:52:20.3760638Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:20.3760752Z ::endgroup::
|
||||
2026-07-04T11:52:20.7524276Z ::group::Run bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T11:52:20.7524614Z bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T11:52:20.7524730Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:20.7524834Z ::endgroup::
|
||||
2026-07-04T11:52:21.0212173Z Duplicate version check passed.
|
||||
2026-07-04T11:52:21.2645086Z ::group::Run bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T11:52:21.2645607Z bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T11:52:21.2645807Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:21.2646008Z ::endgroup::
|
||||
2026-07-04T11:52:21.4225050Z KST timestamp harness passed.
|
||||
2026-07-04T11:52:21.6127869Z ::group::Run COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:21.6128385Z COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:21.6128574Z BUILD_TIME=$(TZ=Asia/Seoul date +'%Y-%m-%d %H:%M:%S KST')
|
||||
2026-07-04T11:52:21.6128771Z mkdir -p ./publish/wwwroot
|
||||
2026-07-04T11:52:21.6128924Z printf '{\n "version": "%s",\n "built": "%s"\n}\n' "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
||||
2026-07-04T11:52:21.6129152Z echo "✓ Build: $COMMIT_HASH @ $BUILD_TIME"
|
||||
2026-07-04T11:52:21.6129314Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:21.6129472Z ::endgroup::
|
||||
2026-07-04T11:52:21.7777206Z ✓ Build: e1f3fc5 @ 2026-07-04 20:52:21 KST
|
||||
2026-07-04T11:52:22.0137274Z ::group::Run mkdir -p ~/.ssh
|
||||
2026-07-04T11:52:22.0137680Z mkdir -p ~/.ssh
|
||||
2026-07-04T11:52:22.0139108Z SSH_KEY_B64="***"
|
||||
2026-07-04T11:52:22.0143588Z SSH_KEY_RAW="***"
|
||||
2026-07-04T11:52:22.0143927Z if [ -n "$SSH_KEY_B64" ]; then
|
||||
2026-07-04T11:52:22.0144399Z printf '%s' "$SSH_KEY_B64" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0144705Z elif [ -n "$SSH_KEY_RAW" ]; then
|
||||
2026-07-04T11:52:22.0144952Z if printf '%s' "$SSH_KEY_RAW" | grep -q 'BEGIN .*PRIVATE KEY'; then
|
||||
2026-07-04T11:52:22.0145249Z printf '%b\n' "$SSH_KEY_RAW" > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0145595Z else
|
||||
2026-07-04T11:52:22.0145844Z printf '%s' "$SSH_KEY_RAW" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0146316Z fi
|
||||
2026-07-04T11:52:22.0146584Z else
|
||||
2026-07-04T11:52:22.0146852Z echo "Missing DEPLOY_SSH_KEY_B64 or DEPLOY_SSH_KEY" >&2; exit 1
|
||||
2026-07-04T11:52:22.0147082Z fi
|
||||
2026-07-04T11:52:22.0147278Z sed -i 's/\r$//' ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0147740Z chmod 600 ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0152024Z ssh-keyscan -H "***" >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||
2026-07-04T11:52:22.0152288Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:22.0153027Z ::endgroup::
|
||||
2026-07-04T11:52:22.9382983Z ::group::Run cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T11:52:22.9383396Z cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T11:52:22.9383581Z mkdir -p ./publish/scripts
|
||||
2026-07-04T11:52:22.9383680Z cp scripts/validate_migrations.sh ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T11:52:22.9383785Z chmod +x ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T11:52:22.9383881Z tar -czf taxbaik_deploy.tgz -C ./publish .
|
||||
2026-07-04T11:52:22.9383964Z echo "✓ Package: $(du -sh taxbaik_deploy.tgz | cut -f1)"
|
||||
2026-07-04T11:52:22.9384065Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:22.9384317Z ::endgroup::
|
||||
2026-07-04T11:52:28.6175249Z ✓ Package: 23M
|
||||
2026-07-04T11:52:28.7799681Z ::group::Run set -e
|
||||
2026-07-04T11:52:28.7800041Z set -e
|
||||
2026-07-04T11:52:28.7800157Z export TAXBAIK_DEPLOY_FROM_CI=1
|
||||
2026-07-04T11:52:28.7800254Z TIMESTAMP=$(TZ=Asia/Seoul date +%Y%m%d_%H%M%S)
|
||||
2026-07-04T11:52:28.7800346Z COMMIT=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:28.7800425Z DEPLOY_HOST="***"
|
||||
2026-07-04T11:52:28.7800511Z DEPLOY_USER="***"
|
||||
2026-07-04T11:52:28.7800595Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T11:52:28.7800681Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T11:52:28.7800765Z TELEGRAM_CHAT_ID="${TELEGRAM_SYSTEM_CHAT_ID:--5585148480}"
|
||||
2026-07-04T11:52:28.7800854Z
|
||||
2026-07-04T11:52:28.7800924Z send_telegram() {
|
||||
2026-07-04T11:52:28.7800996Z local text="$1"
|
||||
2026-07-04T11:52:28.7801070Z if [ -z "$TELEGRAM_BOT_TOKEN" ]; then
|
||||
2026-07-04T11:52:28.7801161Z echo "Skipping Telegram notification: missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2
|
||||
2026-07-04T11:52:28.7801258Z return 0
|
||||
2026-07-04T11:52:28.7801329Z fi
|
||||
2026-07-04T11:52:28.7801392Z
|
||||
2026-07-04T11:52:28.7801454Z curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
||||
2026-07-04T11:52:28.7801542Z -d "chat_id=${TELEGRAM_CHAT_ID}" \
|
||||
2026-07-04T11:52:28.7801613Z --data-urlencode "text=${text}" \
|
||||
2026-07-04T11:52:28.7801709Z -d "parse_mode=HTML" >/dev/null || true
|
||||
2026-07-04T11:52:28.7801784Z }
|
||||
2026-07-04T11:52:28.7801849Z
|
||||
2026-07-04T11:52:28.7801914Z notify_failure() {
|
||||
2026-07-04T11:52:28.7801984Z local exit_code=$?
|
||||
2026-07-04T11:52:28.7802055Z send_telegram "❌ <b>TaxBaik 배포 실패</b>
|
||||
2026-07-04T11:52:28.7802145Z
|
||||
2026-07-04T11:52:28.7802217Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T11:52:28.7802291Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T11:52:28.7802375Z 단계: CI/CD deploy"
|
||||
2026-07-04T11:52:28.7802446Z exit "$exit_code"
|
||||
2026-07-04T11:52:28.7802513Z }
|
||||
2026-07-04T11:52:28.7802578Z
|
||||
2026-07-04T11:52:28.7802636Z trap notify_failure ERR
|
||||
2026-07-04T11:52:28.7802710Z
|
||||
2026-07-04T11:52:28.7802784Z echo "=== Deploying TaxBaik $COMMIT ($TIMESTAMP) ==="
|
||||
2026-07-04T11:52:28.7802862Z
|
||||
2026-07-04T11:52:28.7802922Z # 1. 아티팩트 업로드
|
||||
2026-07-04T11:52:28.7802996Z scp -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T11:52:28.7803076Z taxbaik_deploy.tgz "$DEPLOY_USER@$DEPLOY_HOST:/tmp/taxbaik_${TIMESTAMP}.tgz"
|
||||
2026-07-04T11:52:28.7803156Z
|
||||
2026-07-04T11:52:28.7803251Z # 2. 서버에서 배포 + 헬스 체크 (SSH 1회 연결로 처리, Green-Blue 지원)
|
||||
2026-07-04T11:52:28.7803340Z ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T11:52:28.7803414Z -o ServerAliveInterval=10 \
|
||||
2026-07-04T11:52:28.7803496Z "$DEPLOY_USER@$DEPLOY_HOST" TAXBAIK_DEPLOY_FROM_CI=1 bash << REMOTE
|
||||
2026-07-04T11:52:28.7803579Z set -e
|
||||
2026-07-04T11:52:28.7803647Z DEPLOY_HOME="/home/***"
|
||||
2026-07-04T11:52:28.7803720Z DEPLOY_DIR="\$DEPLOY_HOME/deployments/taxbaik_${TIMESTAMP}"
|
||||
2026-07-04T11:52:28.7803822Z TIMESTAMP="${TIMESTAMP}"
|
||||
2026-07-04T11:52:28.7803892Z COMMIT="${COMMIT}"
|
||||
2026-07-04T11:52:28.7803960Z
|
||||
2026-07-04T11:52:28.7804034Z echo "--- [1/5] 압축 해제 ---"
|
||||
2026-07-04T11:52:28.7804109Z mkdir -p "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7804421Z tar -xzf "/tmp/taxbaik_\${TIMESTAMP}.tgz" -C "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7804504Z rm -f "/tmp/taxbaik_\${TIMESTAMP}.tgz"
|
||||
2026-07-04T11:52:28.7804586Z
|
||||
2026-07-04T11:52:28.7804649Z echo "--- [2/5] 운영 설정 검증 ---"
|
||||
2026-07-04T11:52:28.7804724Z test -s "\$DEPLOY_DIR/appsettings.Production.json" \
|
||||
2026-07-04T11:52:28.7804802Z || { echo "FATAL: appsettings.Production.json 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7804887Z test -s "\$DEPLOY_DIR/proxy/TaxBaik.Proxy.dll" \
|
||||
2026-07-04T11:52:28.7804962Z || { echo "FATAL: TaxBaik.Proxy.dll 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7805035Z
|
||||
2026-07-04T11:52:28.7805102Z echo "--- [3/5] 마이그레이션 사전 검증 ---"
|
||||
2026-07-04T11:52:28.7805177Z test -x "\$DEPLOY_DIR/scripts/validate_migrations.sh" \
|
||||
2026-07-04T11:52:28.7805250Z || { echo "FATAL: validate_migrations.sh 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7805338Z "\$DEPLOY_DIR/scripts/validate_migrations.sh" "\$DEPLOY_DIR/db/migrations" "postgresql://taxbaik:taxbaik123@localhost:5432/taxbaikdb"
|
||||
2026-07-04T11:52:28.7805434Z
|
||||
2026-07-04T11:52:28.7805499Z echo "--- [4/5] Green-Blue 배포 실행 ---"
|
||||
2026-07-04T11:52:28.7805592Z chmod +x "\$DEPLOY_DIR/deploy_gb.sh"
|
||||
2026-07-04T11:52:28.7805669Z "\$DEPLOY_DIR/deploy_gb.sh" "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7805741Z
|
||||
2026-07-04T11:52:28.7805801Z echo "--- [4.5/5] Nginx 설정 검증 ---"
|
||||
2026-07-04T11:52:28.7805881Z # 실제 로드되는 파일은 sites-enabled/의 심볼릭 링크 대상만이다.
|
||||
2026-07-04T11:52:28.7805964Z # sites-available/에 다른 파일(예: default)이 있어도 sites-enabled에
|
||||
2026-07-04T11:52:28.7806045Z # 링크되어 있지 않으면 nginx는 그 내용을 절대 읽지 않는다.
|
||||
2026-07-04T11:52:28.7806281Z NGINX_CONF=""
|
||||
2026-07-04T11:52:28.7806362Z for f in /etc/nginx/sites-enabled/*; do
|
||||
2026-07-04T11:52:28.7806437Z if [ -e "\$f" ] && grep -q "location /taxbaik" "\$f" 2>/dev/null; then
|
||||
2026-07-04T11:52:28.7806520Z NGINX_CONF=\$(readlink -f "\$f")
|
||||
2026-07-04T11:52:28.7806592Z break
|
||||
2026-07-04T11:52:28.7806658Z fi
|
||||
2026-07-04T11:52:28.7806721Z done
|
||||
2026-07-04T11:52:28.7806784Z
|
||||
2026-07-04T11:52:28.7806849Z if [ -z "\$NGINX_CONF" ]; then
|
||||
2026-07-04T11:52:28.7806924Z echo "❌ FATAL: sites-enabled/ 안에서 'location /taxbaik'를 정의한 파일을 찾을 수 없음" >&2
|
||||
2026-07-04T11:52:28.7807034Z echo " sites-available/에 파일을 수정해도 sites-enabled에 심볼릭 링크되어 있지 않으면 반영되지 않는다." >&2
|
||||
2026-07-04T11:52:28.7807140Z exit 1
|
||||
2026-07-04T11:52:28.7807210Z fi
|
||||
2026-07-04T11:52:28.7807275Z echo "실제 로드되는 설정 파일: \$NGINX_CONF"
|
||||
2026-07-04T11:52:28.7807354Z
|
||||
2026-07-04T11:52:28.7807443Z # 불변식: '/'와 '/taxbaik' location 모두 반드시 127.0.0.1:5001 (TaxBaik.Proxy)을
|
||||
2026-07-04T11:52:28.7807530Z # 가리켜야 한다. 5003/5004를 직접 하드코딩하면 Green-Blue 포트 전환 시
|
||||
2026-07-04T11:52:28.7807620Z # 죽은 포트를 가리키게 되어 502/404가 발생한다 (실제 발생했던 장애).
|
||||
2026-07-04T11:52:28.7807706Z if grep -E "proxy_pass\s+http://127\.0\.0\.1:500[34]" "\$NGINX_CONF" > /dev/null 2>&1; then
|
||||
2026-07-04T11:52:28.7807801Z echo "❌ FATAL: \$NGINX_CONF 가 포트 5003/5004를 직접 참조함 (Green-Blue 전환 시 502 발생)" >&2
|
||||
2026-07-04T11:52:28.7807898Z echo " 수정: sudo sed -i 's|127.0.0.1:500[34]|127.0.0.1:5001|g' \$NGINX_CONF && sudo nginx -t && sudo systemctl reload nginx" >&2
|
||||
2026-07-04T11:52:28.7807998Z exit 1
|
||||
2026-07-04T11:52:28.7808077Z fi
|
||||
2026-07-04T11:52:28.7808142Z
|
||||
2026-07-04T11:52:28.7808205Z # proxy_pass에 URI(끝 슬래시)가 있으면 nginx가 요청 경로를 재작성하며,
|
||||
2026-07-04T11:52:28.7808285Z # location 접두사와 슬래시 개수가 안 맞으면 백엔드로 이중 슬래시(//)가
|
||||
2026-07-04T11:52:28.7808367Z # 전달되어 404가 발생한다 (실제 발생했던 장애). 접두사 location에서는
|
||||
2026-07-04T11:52:28.7808456Z # proxy_pass에 URI를 붙이지 않는다.
|
||||
2026-07-04T11:52:28.7808539Z if grep -E "location\s+/taxbaik\s*\{" -A 1 "\$NGINX_CONF" | grep -qE "proxy_pass\s+http://127\.0\.0\.1:5001/;"; then
|
||||
2026-07-04T11:52:28.7808645Z echo "❌ FATAL: location /taxbaik 의 proxy_pass 에 불필요한 trailing slash가 있음 (이중 슬래시로 인한 404 위험)" >&2
|
||||
2026-07-04T11:52:28.7808737Z exit 1
|
||||
2026-07-04T11:52:28.7808805Z fi
|
||||
2026-07-04T11:52:28.7808870Z
|
||||
2026-07-04T11:52:28.7808940Z echo "✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)"
|
||||
2026-07-04T11:52:28.7809025Z
|
||||
2026-07-04T11:52:28.7809085Z echo "--- [5/5] 헬스 체크 (최대 60초) ---"
|
||||
2026-07-04T11:52:28.7809184Z ATTEMPTS=20
|
||||
2026-07-04T11:52:28.7809251Z for i in \$(seq 1 \$ATTEMPTS); do
|
||||
2026-07-04T11:52:28.7809323Z STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/healthz 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7809421Z if [ "\$STATUS" = "200" ]; then
|
||||
2026-07-04T11:52:28.7809497Z echo "✓ [1/6] 헬스 체크 완료"
|
||||
2026-07-04T11:52:28.7809569Z
|
||||
2026-07-04T11:52:28.7809636Z # 검증 1: 메인 페이지 로드. curl -L + -w 는 리다이렉트 체인의 상태코드를
|
||||
2026-07-04T11:52:28.7809727Z # 이어붙이므로, 첫 응답 코드만 받아 200/3xx를 허용한다.
|
||||
2026-07-04T11:52:28.7809808Z MAIN_STATUS=\$(curl -fsS -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/ 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7809892Z if ! printf '%s' "\$MAIN_STATUS" | grep -Eq '^(200|301|302|307|308)$'; then
|
||||
2026-07-04T11:52:28.7809974Z echo "❌ 메인 페이지 로드 실패 (상태: \$MAIN_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7810054Z exit 1
|
||||
2026-07-04T11:52:28.7810122Z fi
|
||||
2026-07-04T11:52:28.7810188Z echo "✓ [2/6] 메인 페이지 로드 완료"
|
||||
2026-07-04T11:52:28.7810272Z
|
||||
2026-07-04T11:52:28.7810331Z # 검증 2: CSS 파일 로드
|
||||
2026-07-04T11:52:28.7810402Z CSS_STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/css/admin.css 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7810490Z if [ "\$CSS_STATUS" != "200" ]; then
|
||||
2026-07-04T11:52:28.7810561Z echo "❌ CSS 파일 로드 실패 (상태: \$CSS_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7810639Z exit 1
|
||||
2026-07-04T11:52:28.7810704Z fi
|
||||
2026-07-04T11:52:28.7810774Z echo "✓ [3/6] CSS 파일 로드 완료"
|
||||
2026-07-04T11:52:28.7810845Z
|
||||
2026-07-04T11:52:28.7810905Z # 검증 3: 버전 정보. 파일 존재만 보면 5001이 잘못된 구 프로세스를
|
||||
2026-07-04T11:52:28.7810994Z # 가리키는 장애를 놓치므로, HTTP 응답이 이번 커밋인지 확인한다.
|
||||
2026-07-04T11:52:28.7811074Z if [ ! -s "\$DEPLOY_DIR/wwwroot/version.json" ]; then
|
||||
2026-07-04T11:52:28.7811150Z echo "❌ version.json 누락" >&2
|
||||
2026-07-04T11:52:28.7811226Z exit 1
|
||||
2026-07-04T11:52:28.7811298Z fi
|
||||
2026-07-04T11:52:28.7811362Z VERSION_JSON=\$(curl -fsS http://127.0.0.1:5001/taxbaik/version.json 2>/dev/null || true)
|
||||
2026-07-04T11:52:28.7811465Z if ! printf '%s' "\$VERSION_JSON" | grep -q "\"version\": \"\$COMMIT\""; then
|
||||
2026-07-04T11:52:28.7811544Z echo "❌ 5001 프록시가 이번 배포 버전을 제공하지 않음" >&2
|
||||
2026-07-04T11:52:28.7811624Z echo " expected: \$COMMIT" >&2
|
||||
2026-07-04T11:52:28.7811697Z echo " actual: \$VERSION_JSON" >&2
|
||||
2026-07-04T11:52:28.7811767Z echo " 확인: 5001 포트가 TaxBaik.Proxy.dll인지, /home/***/taxbaik_port가 새 포트인지 점검" >&2
|
||||
2026-07-04T11:52:28.7811873Z exit 1
|
||||
2026-07-04T11:52:28.7811942Z fi
|
||||
2026-07-04T11:52:28.7812006Z echo "✓ [4/6] 버전 정보 확인 완료"
|
||||
2026-07-04T11:52:28.7812079Z
|
||||
2026-07-04T11:52:28.7812139Z # 검증 4: 5001 프록시 확인
|
||||
2026-07-04T11:52:28.7812212Z if ! ss -tlnp | grep -q ':5001 '; then
|
||||
2026-07-04T11:52:28.7812288Z echo "❌ 5001 프록시가 실행 중이 아님" >&2
|
||||
2026-07-04T11:52:28.7812370Z exit 1
|
||||
2026-07-04T11:52:28.7812432Z fi
|
||||
2026-07-04T11:52:28.7812494Z echo "✓ [5/6] 5001 프록시 확인 완료"
|
||||
2026-07-04T11:52:28.7812568Z
|
||||
2026-07-04T11:52:28.7812626Z # 검증 5: 관리자 로그인 페이지
|
||||
2026-07-04T11:52:28.7812707Z LOGIN_STATUS=\$(curl -fsSL -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/admin/login 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7812794Z if [ "\$LOGIN_STATUS" != "200" ]; then
|
||||
2026-07-04T11:52:28.7812876Z echo "❌ 관리자 로그인 페이지 로드 실패 (상태: \$LOGIN_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7812957Z exit 1
|
||||
2026-07-04T11:52:28.7813023Z fi
|
||||
2026-07-04T11:52:28.7813089Z echo "✓ [6/6] 관리자 페이지 로드 완료"
|
||||
2026-07-04T11:52:28.7813169Z
|
||||
2026-07-04T11:52:28.7813240Z echo "✓ 서비스 정상 (시도 \$i/\$ATTEMPTS)"
|
||||
2026-07-04T11:52:28.7813316Z # 구 배포 디렉토리 정리 (최근 5개 보존)
|
||||
2026-07-04T11:52:28.7813404Z ls -1dt \$DEPLOY_HOME/deployments/taxbaik_* 2>/dev/null \
|
||||
2026-07-04T11:52:28.7813486Z | tail -n +6 | xargs rm -rf 2>/dev/null || true
|
||||
2026-07-04T11:52:28.7813567Z exit 0
|
||||
2026-07-04T11:52:28.7813640Z fi
|
||||
2026-07-04T11:52:28.7813712Z if [ "\$i" -eq "\$ATTEMPTS" ]; then
|
||||
2026-07-04T11:52:28.7813789Z echo "=== FATAL: 서비스가 \$ATTEMPTS회 시도 후에도 응답하지 않음 ===" >&2
|
||||
2026-07-04T11:52:28.7813878Z echo "--- 5001 listener ---" >&2
|
||||
2026-07-04T11:52:28.7813956Z ss -tlnp 2>/dev/null | grep ':5001 ' >&2 || true
|
||||
2026-07-04T11:52:28.7814035Z echo "--- active port file ---" >&2
|
||||
2026-07-04T11:52:28.7814107Z cat "\$DEPLOY_HOME/taxbaik_port" >&2 || true
|
||||
2026-07-04T11:52:28.7814361Z echo "--- 신규 앱 로그 ---" >&2
|
||||
2026-07-04T11:52:28.7814436Z ACTIVE_PORT=\$(cat "\$DEPLOY_HOME/taxbaik_port" 2>/dev/null | tr -d '[:space:]' || true)
|
||||
2026-07-04T11:52:28.7814523Z if [ -n "\$ACTIVE_PORT" ] && [ -s "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" ]; then
|
||||
2026-07-04T11:52:28.7814605Z tail -n 80 "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" >&2
|
||||
2026-07-04T11:52:28.7814689Z else
|
||||
2026-07-04T11:52:28.7814756Z ls -la "\$DEPLOY_DIR" >&2 || true
|
||||
2026-07-04T11:52:28.7814825Z fi
|
||||
2026-07-04T11:52:28.7814895Z echo "--- proxy 로그 ---" >&2
|
||||
2026-07-04T11:52:28.7814969Z tail -n 80 "\$DEPLOY_HOME/taxbaik_proxy.log" >&2 || true
|
||||
2026-07-04T11:52:28.7815042Z exit 1
|
||||
2026-07-04T11:52:28.7815107Z fi
|
||||
2026-07-04T11:52:28.7815176Z echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)"
|
||||
2026-07-04T11:52:28.7815261Z sleep 3
|
||||
2026-07-04T11:52:28.7815328Z done
|
||||
2026-07-04T11:52:28.7815389Z REMOTE
|
||||
2026-07-04T11:52:28.7815451Z
|
||||
2026-07-04T11:52:28.7815507Z echo "✓ 배포 완료: taxbaik_${TIMESTAMP} @ $DEPLOY_HOST"
|
||||
2026-07-04T11:52:28.7815586Z
|
||||
2026-07-04T11:52:28.7815660Z echo "--- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---"
|
||||
2026-07-04T11:52:28.7815753Z ROOT_URL="https://www.taxbaik.com/" \
|
||||
2026-07-04T11:52:28.7815826Z ADMIN_URL="https://www.taxbaik.com/taxbaik/admin/login" \
|
||||
2026-07-04T11:52:28.7815904Z PUBLIC_MARKER="백원숙 세무회계" \
|
||||
2026-07-04T11:52:28.7815979Z PUBLIC_FORBIDDEN="관리자" \
|
||||
2026-07-04T11:52:28.7816050Z ADMIN_MARKER="TaxBaik Admin" \
|
||||
2026-07-04T11:52:28.7817569Z MAX_RETRIES=3 \
|
||||
2026-07-04T11:52:28.7817668Z RETRY_SLEEP_SECONDS=5 \
|
||||
2026-07-04T11:52:28.7817749Z bash ./scripts/taxbaik-smoke.sh
|
||||
2026-07-04T11:52:28.7817825Z echo "✓ 실제 공개 도메인 전체 정상"
|
||||
2026-07-04T11:52:28.7817906Z
|
||||
2026-07-04T11:52:28.7817969Z send_telegram "✅ <b>TaxBaik 배포 완료</b>
|
||||
2026-07-04T11:52:28.7818045Z
|
||||
2026-07-04T11:52:28.7818272Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T11:52:28.7818362Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T11:52:28.7818438Z 대상: <code>${DEPLOY_HOST}</code>
|
||||
2026-07-04T11:52:28.7818512Z 채널: <code>${TELEGRAM_CHAT_ID}</code>"
|
||||
2026-07-04T11:52:28.7818592Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:28.7818689Z ::endgroup::
|
||||
2026-07-04T11:52:28.9489242Z === Deploying TaxBaik e1f3fc5 (20260704_205228) ===
|
||||
2026-07-04T11:52:30.4444950Z --- [1/5] 압축 해제 ---
|
||||
2026-07-04T11:52:30.7457779Z --- [2/5] 운영 설정 검증 ---
|
||||
2026-07-04T11:52:30.7458350Z --- [3/5] 마이그레이션 사전 검증 ---
|
||||
2026-07-04T11:52:31.0393215Z Migration dry-run validation passed.
|
||||
2026-07-04T11:52:31.0395081Z --- [4/5] Green-Blue 배포 실행 ---
|
||||
2026-07-04T11:52:31.0513805Z ===== 🚀 TaxBaik Green/Blue Deployment Script =====
|
||||
2026-07-04T11:52:31.1068289Z Active Port: 5003
|
||||
2026-07-04T11:52:31.1068779Z Target Port: 5004
|
||||
2026-07-04T11:52:31.1068908Z Deploy Directory: /home/***/deployments/taxbaik_20260704_205228
|
||||
2026-07-04T11:52:31.3787302Z === Starting New App on Port 5004 ===
|
||||
2026-07-04T11:52:33.5017487Z === Health Checking Port 5004 ===
|
||||
2026-07-04T11:52:33.5528142Z Waiting for health check... (1/20, Status: 000000)
|
||||
2026-07-04T11:52:35.8895619Z ✓ Health check passed on port 5004 (Attempt 2/20)
|
||||
2026-07-04T11:52:35.8896295Z === Switching Traffic to Port 5004 ===
|
||||
2026-07-04T11:52:35.8937475Z ✓ Traffic routed to 5004 (via TaxBaik.Proxy on 5001)
|
||||
2026-07-04T11:52:35.8980173Z === Stopping Old App on Port 5003 ===
|
||||
2026-07-04T11:52:35.9294467Z Killing old process PID: 3970431
|
||||
2026-07-04T11:52:35.9294887Z ✓ Old process terminated
|
||||
2026-07-04T11:52:35.9295040Z === Cleaning Up Old Deployments ===
|
||||
2026-07-04T11:52:35.9720244Z ✓ Cleanup completed
|
||||
2026-07-04T11:52:35.9720680Z ===== ✅ Green/Blue Deployment Completed Successfully =====
|
||||
2026-07-04T11:52:35.9720931Z --- [4.5/5] Nginx 설정 검증 ---
|
||||
2026-07-04T11:52:35.9721040Z 실제 로드되는 설정 파일: /etc/nginx/sites-available/taxbaik-domains.conf
|
||||
2026-07-04T11:52:36.1177600Z ✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)
|
||||
2026-07-04T11:52:36.1178058Z --- [5/5] 헬스 체크 (최대 60초) ---
|
||||
2026-07-04T11:52:36.8462330Z ✓ [1/6] 헬스 체크 완료
|
||||
2026-07-04T11:52:37.3198761Z ✓ [2/6] 메인 페이지 로드 완료
|
||||
2026-07-04T11:52:37.3622167Z ✓ [3/6] CSS 파일 로드 완료
|
||||
2026-07-04T11:52:37.3842090Z ✓ [4/6] 버전 정보 확인 완료
|
||||
2026-07-04T11:52:37.4009776Z ✓ [5/6] 5001 프록시 확인 완료
|
||||
2026-07-04T11:52:37.7008335Z ✓ [6/6] 관리자 페이지 로드 완료
|
||||
2026-07-04T11:52:37.7009552Z ✓ 서비스 정상 (시도 1/20)
|
||||
2026-07-04T11:52:37.7095915Z ✓ 배포 완료: taxbaik_20260704_205228 @ ***
|
||||
2026-07-04T11:52:37.7096655Z --- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---
|
||||
2026-07-04T11:52:38.4168297Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:39.0288516Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:39.4652055Z retrying... (1/3)
|
||||
2026-07-04T11:52:39.4652895Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:44.9397821Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:45.4377901Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:45.8309474Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:45.8311857Z retrying... (2/3)
|
||||
2026-07-04T11:52:51.3448083Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:51.8138236Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:52.2580780Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:52.2581412Z ✗ smoke verification failed
|
||||
2026-07-04T11:52:52.6357273Z ❌ Failure - Main Deploy & verify on server
|
||||
2026-07-04T11:52:52.6665921Z exitcode '1': failure
|
||||
2026-07-04T11:52:52.7268833Z evaluating expression 'success()'
|
||||
2026-07-04T11:52:52.7269374Z expression 'success()' evaluated to 'false'
|
||||
2026-07-04T11:52:52.7273889Z Skipping step 'Setup .NET' due to 'success()'
|
||||
2026-07-04T11:52:52.7568989Z evaluating expression 'always()'
|
||||
2026-07-04T11:52:52.7569542Z expression 'always()' evaluated to 'true'
|
||||
2026-07-04T11:52:52.7569674Z ⭐ Run Post Checkout code
|
||||
2026-07-04T11:52:52.7569861Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T11:52:52.7570008Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T11:52:52.7570113Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T11:52:52.7570212Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:52:52.7570293Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T11:52:52.7570399Z Extracting content to '/var/run/act'
|
||||
-945
@@ -1,945 +0,0 @@
|
||||
2026-07-04T11:42:30.0567403Z hz-prod-runner(version:v0.6.1) received task 1516 of job build-and-deploy, be triggered by event: push
|
||||
2026-07-04T11:42:30.0580621Z workflow prepared
|
||||
2026-07-04T11:42:30.0581689Z evaluating expression 'success()'
|
||||
2026-07-04T11:42:30.0583931Z expression 'success()' evaluated to 'true'
|
||||
2026-07-04T11:42:30.0584883Z 🚀 Start image=docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T11:42:30.0906041Z 🐳 docker pull image=docker.gitea.com/runner-images:ubuntu-latest platform= username= forcePull=false
|
||||
2026-07-04T11:42:30.0906469Z 🐳 docker pull docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T11:42:30.1729089Z Image exists? true
|
||||
2026-07-04T11:42:30.3287757Z 🐳 docker create image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T11:42:30.4959124Z Created container name=GITEA-ACTIONS-TASK-1516-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-2a7daee2084bff91b11c6ea9ee980c5a04abe542a26ee3bf5f0e0f5028069029 id=38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1 from image docker.gitea.com/runner-images:ubuntu-latest (platform: )
|
||||
2026-07-04T11:42:30.4959600Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-07-04T11:42:30.4959977Z 🐳 docker run image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T11:42:30.4960192Z Starting container: 38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1
|
||||
2026-07-04T11:42:30.8295114Z Started container: 38a8f2573b175905af3061f62859a62215b44ac231968fbb4eeafac8bd92afd1
|
||||
2026-07-04T11:42:31.0136476Z Writing entry to tarball workflow/event.json len:4880
|
||||
2026-07-04T11:42:31.0137207Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:42:31.0137409Z Extracting content to '/var/run/act/'
|
||||
2026-07-04T11:42:31.0383095Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-07-04T11:42:31.0383883Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T11:42:31.9691400Z Unable to pull refs/heads/v4: non-fast-forward update
|
||||
2026-07-04T11:42:31.9691832Z Cloned https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T11:42:31.9871765Z Checked out v4
|
||||
2026-07-04T11:42:31.9979951Z ☁ git clone 'https://github.com/actions/setup-dotnet' # ref=v4
|
||||
2026-07-04T11:42:31.9980390Z cloning https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T11:42:33.0268700Z Unable to pull refs/heads/v4: worktree contains unstaged changes
|
||||
2026-07-04T11:42:33.0269261Z Cloned https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T11:42:33.0686790Z Checked out v4
|
||||
2026-07-04T11:42:33.0985282Z evaluating expression ''
|
||||
2026-07-04T11:42:33.0985874Z expression '' evaluated to 'true'
|
||||
2026-07-04T11:42:33.0986000Z ⭐ Run Main Checkout code
|
||||
2026-07-04T11:42:33.0986497Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T11:42:33.0986684Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T11:42:33.0986797Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T11:42:33.0986911Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:42:33.0987001Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T11:42:33.0987094Z Extracting content to '/var/run/act'
|
||||
2026-07-04T11:42:33.1014520Z ::group::Run Checkout code
|
||||
2026-07-04T11:42:34.5549758Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-07-04T11:42:34.5549935Z Syncing repository: ***/taxbaik
|
||||
2026-07-04T11:42:34.5550128Z ::group::Getting Git version info
|
||||
2026-07-04T11:42:34.5551164Z Working directory is '/workspace/***/taxbaik'
|
||||
2026-07-04T11:42:34.5744535Z [command]/usr/bin/git version
|
||||
2026-07-04T11:42:34.6429840Z git version 2.54.0
|
||||
2026-07-04T11:42:34.6621090Z ::endgroup::
|
||||
2026-07-04T11:42:34.6691754Z Temporarily overriding HOME='/tmp/b488b9f6-1242-4dfe-a2ed-134d2c3815d4' before making global git config changes
|
||||
2026-07-04T11:42:34.6696992Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T11:42:34.6705685Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T11:42:34.7021178Z Deleting the contents of '/workspace/***/taxbaik'
|
||||
2026-07-04T11:42:34.7032551Z ::group::Initializing the repository
|
||||
2026-07-04T11:42:34.7080076Z [command]/usr/bin/git init /workspace/***/taxbaik
|
||||
2026-07-04T11:42:34.7367355Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-07-04T11:42:34.7367795Z hint: will change to "main" in Git 3.0. To configure the initial branch name
|
||||
2026-07-04T11:42:34.7367943Z hint: to use in all of your new repositories, which will suppress this warning,
|
||||
2026-07-04T11:42:34.7368231Z hint: call:
|
||||
2026-07-04T11:42:34.7368312Z hint:
|
||||
2026-07-04T11:42:34.7368384Z hint: git config --global init.defaultBranch <name>
|
||||
2026-07-04T11:42:34.7368486Z hint:
|
||||
2026-07-04T11:42:34.7368557Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-07-04T11:42:34.7368641Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-07-04T11:42:34.7368722Z hint:
|
||||
2026-07-04T11:42:34.7368821Z hint: git branch -m <name>
|
||||
2026-07-04T11:42:34.7368897Z hint:
|
||||
2026-07-04T11:42:34.7368965Z hint: Disable this message with "git config set advice.defaultBranchName false"
|
||||
2026-07-04T11:42:34.7369074Z Initialized empty Git repository in /workspace/***/taxbaik/.git/
|
||||
2026-07-04T11:42:34.7369604Z [command]/usr/bin/git remote add origin http://gitea:3000/***/taxbaik
|
||||
2026-07-04T11:42:34.7481134Z ::endgroup::
|
||||
2026-07-04T11:42:34.7481611Z ::group::Disabling automatic garbage collection
|
||||
2026-07-04T11:42:34.7481839Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-07-04T11:42:34.7482393Z ::endgroup::
|
||||
2026-07-04T11:42:34.7482562Z ::group::Setting up auth
|
||||
2026-07-04T11:42:34.7482655Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T11:42:34.7483305Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T11:42:34.8600664Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T11:42:34.8601700Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T11:42:34.8959722Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T11:42:34.9019506Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T11:42:34.9298408Z [command]/usr/bin/git config --local http.http://gitea:3000/.extraheader AUTHORIZATION: basic ***
|
||||
2026-07-04T11:42:34.9321056Z ::endgroup::
|
||||
2026-07-04T11:42:34.9321266Z ::group::Fetching the repository
|
||||
2026-07-04T11:42:34.9347156Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +e1f3fc527061cd918a686804f62bc055a7664ca6:refs/remotes/origin/master
|
||||
2026-07-04T11:42:47.2056813Z From http://gitea:3000/***/taxbaik
|
||||
2026-07-04T11:42:47.2057565Z * [new ref] e1f3fc527061cd918a686804f62bc055a7664ca6 -> origin/master
|
||||
2026-07-04T11:42:47.3028041Z ::endgroup::
|
||||
2026-07-04T11:42:47.3028283Z ::group::Determining the checkout info
|
||||
2026-07-04T11:42:47.3028670Z ::endgroup::
|
||||
2026-07-04T11:42:47.3166773Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-07-04T11:42:47.3332402Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-07-04T11:42:47.3405025Z ::group::Checking out the ref
|
||||
2026-07-04T11:42:47.3417157Z [command]/usr/bin/git checkout --progress --force -B master refs/remotes/origin/master
|
||||
2026-07-04T11:42:49.3062166Z Updating files: 75% (991/1313)
|
||||
Updating files: 76% (998/1313)
|
||||
Updating files: 77% (1012/1313)
|
||||
Updating files: 78% (1025/1313)
|
||||
Updating files: 79% (1038/1313)
|
||||
Updating files: 80% (1051/1313)
|
||||
Updating files: 81% (1064/1313)
|
||||
Updating files: 82% (1077/1313)
|
||||
Updating files: 83% (1090/1313)
|
||||
Updating files: 84% (1103/1313)
|
||||
Updating files: 85% (1117/1313)
|
||||
Updating files: 86% (1130/1313)
|
||||
Updating files: 87% (1143/1313)
|
||||
Updating files: 88% (1156/1313)
|
||||
Updating files: 89% (1169/1313)
|
||||
Updating files: 90% (1182/1313)
|
||||
Updating files: 91% (1195/1313)
|
||||
Updating files: 92% (1208/1313)
|
||||
Updating files: 93% (1222/1313)
|
||||
Updating files: 94% (1235/1313)
|
||||
Updating files: 95% (1248/1313)
|
||||
Updating files: 96% (1261/1313)
|
||||
Updating files: 97% (1274/1313)
|
||||
Updating files: 98% (1287/1313)
|
||||
Updating files: 99% (1300/1313)
|
||||
Updating files: 100% (1313/1313)
|
||||
Updating files: 100% (1313/1313), done.
|
||||
2026-07-04T11:42:49.3120498Z Reset branch 'master'
|
||||
2026-07-04T11:42:49.3147914Z branch 'master' set up to track 'origin/master'.
|
||||
2026-07-04T11:42:49.3191844Z ::endgroup::
|
||||
2026-07-04T11:42:49.3302985Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-07-04T11:42:49.3418285Z e1f3fc527061cd918a686804f62bc055a7664ca6
|
||||
2026-07-04T11:42:49.3498697Z ::remove-matcher owner=checkout-git::
|
||||
2026-07-04T11:42:49.3870591Z ::endgroup::
|
||||
2026-07-04T11:42:49.5068685Z ::group::Run Setup .NET
|
||||
2026-07-04T11:42:49.5068955Z with:
|
||||
2026-07-04T11:42:49.5069121Z dotnet-version: 10.0
|
||||
2026-07-04T11:42:51.7487272Z (node:141) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
|
||||
2026-07-04T11:42:51.7487964Z (Use `node --trace-deprecation ...` to show where the warning was created)
|
||||
2026-07-04T11:42:51.7658250Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS
|
||||
2026-07-04T11:42:52.8587260Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T11:42:53.3980686Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz size is 36606251 bytes.
|
||||
2026-07-04T11:42:53.4008884Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T11:42:55.9207278Z dotnet-install: Downloaded file size is 36606251 bytes.
|
||||
2026-07-04T11:42:55.9207818Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T11:42:55.9454913Z dotnet-install: Installed version is 10.0.9
|
||||
2026-07-04T11:42:55.9543172Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T11:42:55.9543783Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T11:42:55.9543916Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T11:42:55.9544055Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T11:42:55.9566967Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --channel 10.0
|
||||
2026-07-04T11:42:56.6780669Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T11:42:58.1177288Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz size is 235086718 bytes.
|
||||
2026-07-04T11:42:58.1196866Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T11:43:14.1296924Z dotnet-install: Downloaded file size is 235086718 bytes.
|
||||
2026-07-04T11:43:14.1297593Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T11:43:14.3012045Z dotnet-install: Installed version is 10.0.301
|
||||
2026-07-04T11:43:14.3106929Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T11:43:14.3107653Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T11:43:14.3108081Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T11:43:14.3108331Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T11:43:14.3122021Z ##[add-matcher]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/.github/csc.json
|
||||
2026-07-04T11:43:14.3596501Z ::endgroup::
|
||||
2026-07-04T11:43:14.6005903Z ::group::Run dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T11:43:14.6006418Z dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T11:43:14.6006532Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:43:14.6006720Z ::endgroup::
|
||||
2026-07-04T11:43:15.1983220Z
|
||||
2026-07-04T11:43:15.1993376Z Welcome to .NET 10.0!
|
||||
2026-07-04T11:43:15.1993739Z ---------------------
|
||||
2026-07-04T11:43:15.1993852Z SDK Version: 10.0.301
|
||||
2026-07-04T11:43:15.1993939Z
|
||||
2026-07-04T11:43:15.1994017Z Telemetry
|
||||
2026-07-04T11:43:15.1994238Z ---------
|
||||
2026-07-04T11:43:15.1994335Z The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
|
||||
2026-07-04T11:43:15.1994504Z
|
||||
2026-07-04T11:43:15.1994587Z Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
|
||||
2026-07-04T11:43:15.6166548Z
|
||||
2026-07-04T11:43:15.6168560Z ----------------
|
||||
2026-07-04T11:43:15.6168781Z Installed an ASP.NET Core HTTPS development certificate.
|
||||
2026-07-04T11:43:15.6169045Z To trust the certificate, run 'dotnet dev-certs https --trust'
|
||||
2026-07-04T11:43:15.6170166Z Learn about HTTPS: https://aka.ms/dotnet-https
|
||||
2026-07-04T11:43:15.6171653Z
|
||||
2026-07-04T11:43:15.6187095Z ----------------
|
||||
2026-07-04T11:43:15.6187441Z Write your first app: https://aka.ms/dotnet-hello-world
|
||||
2026-07-04T11:43:15.6187561Z Find out what's new: https://aka.ms/dotnet-whats-new
|
||||
2026-07-04T11:43:15.6187695Z Explore documentation: https://aka.ms/dotnet-docs
|
||||
2026-07-04T11:43:15.6187906Z Report issues and find source on GitHub: https://github.com/dotnet/core
|
||||
2026-07-04T11:43:15.6188022Z Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
|
||||
2026-07-04T11:43:15.6188119Z --------------------------------------------------------------------------------------
|
||||
2026-07-04T11:43:17.6127744Z Determining projects to restore...
|
||||
2026-07-04T11:43:25.0109033Z Restored /workspace/***/taxbaik/src/TaxBaik.Infrastructure/TaxBaik.Infrastructure.csproj (in 5.86 sec).
|
||||
2026-07-04T11:43:25.0112880Z Restored /workspace/***/taxbaik/src/TaxBaik.Web/TaxBaik.Web.csproj (in 5.86 sec).
|
||||
2026-07-04T11:43:25.0327726Z Restored /workspace/***/taxbaik/src/TaxBaik.Domain/TaxBaik.Domain.csproj (in 9 ms).
|
||||
2026-07-04T11:43:25.3129051Z Restored /workspace/***/taxbaik/src/TaxBaik.Application/TaxBaik.Application.csproj (in 262 ms).
|
||||
2026-07-04T11:43:31.6801430Z Restored /workspace/***/taxbaik/src/TaxBaik.Application.Tests/TaxBaik.Application.Tests.csproj (in 6.31 sec).
|
||||
2026-07-04T11:43:32.4593603Z Restored /workspace/***/taxbaik/src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj (in 7.43 sec).
|
||||
2026-07-04T11:43:32.7525159Z ::group::Run dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:43:32.7525554Z dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:43:32.7525805Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:43:32.7525993Z ::endgroup::
|
||||
2026-07-04T11:43:53.4249034Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:44:05.0763087Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:44:09.1168757Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T11:45:17.9673308Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:45:18.0118709Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/wwwroot
|
||||
2026-07-04T11:45:54.8469841Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T11:45:58.7533019Z TaxBaik.Application.Tests -> /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll
|
||||
2026-07-04T11:45:58.9053066Z
|
||||
2026-07-04T11:45:58.9054121Z Build succeeded.
|
||||
2026-07-04T11:45:58.9054328Z 0 Warning(s)
|
||||
2026-07-04T11:45:58.9054503Z 0 Error(s)
|
||||
2026-07-04T11:45:58.9054957Z
|
||||
2026-07-04T11:45:58.9055109Z Time Elapsed 00:02:24.73
|
||||
2026-07-04T11:45:59.3909332Z ::group::Run dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T11:45:59.3909711Z dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T11:45:59.3909832Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:45:59.3909955Z ::endgroup::
|
||||
2026-07-04T11:46:06.7562907Z Test run for /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll (.NETCoreApp,Version=v10.0)
|
||||
2026-07-04T11:46:07.4871282Z A total of 1 test files matched the specified pattern.
|
||||
2026-07-04T11:46:11.1428818Z
|
||||
2026-07-04T11:46:11.2278716Z Passed! - Failed: 0, Passed: 26, Skipped: 0, Total: 26, Duration: 549 ms - TaxBaik.Application.Tests.dll (net10.0)
|
||||
2026-07-04T11:46:11.7079415Z ::group::Run set -e
|
||||
2026-07-04T11:46:11.7079754Z set -e
|
||||
2026-07-04T11:46:11.7079872Z mkdir -p ./publish-logs
|
||||
2026-07-04T11:46:11.7079963Z web_log="./publish-logs/publish-web.log"
|
||||
2026-07-04T11:46:11.7080061Z start=$(date +%s)
|
||||
2026-07-04T11:46:11.7080147Z # Web.Client needs a Release static-web-assets manifest for Web publish.
|
||||
2026-07-04T11:46:11.7080239Z # Build it explicitly so publish can reuse the prepared outputs.
|
||||
2026-07-04T11:46:11.7080328Z dotnet build src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:46:11.7080428Z # Build the Web host in Release as well so publish has the same inputs
|
||||
2026-07-04T11:46:11.7080514Z # the server uses in production.
|
||||
2026-07-04T11:46:11.7080599Z dotnet build src/TaxBaik.Web/TaxBaik.Web.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T11:46:11.7080694Z echo "--- Web.Client Release artifacts ---"
|
||||
2026-07-04T11:46:11.7080773Z ls -la src/TaxBaik.Web.Client/bin/Release/net10.0 || true
|
||||
2026-07-04T11:46:11.7080858Z ls -la src/TaxBaik.Web.Client/obj/Release/net10.0 || true
|
||||
2026-07-04T11:46:11.7080939Z if ! dotnet publish src/TaxBaik.Web/ \
|
||||
2026-07-04T11:46:11.7081016Z -c Release \
|
||||
2026-07-04T11:46:11.7081110Z -o ./publish \
|
||||
2026-07-04T11:46:11.7081184Z --no-restore \
|
||||
2026-07-04T11:46:11.7081258Z -p:SelfContained=false \
|
||||
2026-07-04T11:46:11.7081332Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T11:46:11.7081410Z -p:PerformanceSummary=true \
|
||||
2026-07-04T11:46:11.7081585Z -clp:Summary \
|
||||
2026-07-04T11:46:11.7081673Z -bl:"./publish-logs/publish-web.binlog" >"$web_log" 2>&1; then
|
||||
2026-07-04T11:46:11.7081765Z echo "=== Publish Web failed; tailing log ==="
|
||||
2026-07-04T11:46:11.7081865Z tail -n 120 "$web_log" || true
|
||||
2026-07-04T11:46:11.7081950Z exit 1
|
||||
2026-07-04T11:46:11.7082038Z fi
|
||||
2026-07-04T11:46:11.7082108Z end=$(date +%s)
|
||||
2026-07-04T11:46:11.7082208Z echo "✓ Publish Web elapsed: $((end - start))s"
|
||||
2026-07-04T11:46:11.7082314Z ls -lh ./publish-logs/publish-web.binlog
|
||||
2026-07-04T11:46:11.7082407Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:46:11.7082514Z ::endgroup::
|
||||
2026-07-04T11:46:15.5308281Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:46:16.2218336Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:47:07.0057046Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:07.0057566Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T11:47:07.1355542Z
|
||||
2026-07-04T11:47:07.1376553Z Build succeeded.
|
||||
2026-07-04T11:47:07.1390711Z 0 Warning(s)
|
||||
2026-07-04T11:47:07.1391205Z 0 Error(s)
|
||||
2026-07-04T11:47:07.1391393Z
|
||||
2026-07-04T11:47:07.1391776Z Time Elapsed 00:00:54.15
|
||||
2026-07-04T11:47:14.7841475Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T11:47:14.9093264Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T11:47:16.7126389Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T11:47:26.1349693Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:26.1377350Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T11:47:45.8590530Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T11:47:46.1057603Z
|
||||
2026-07-04T11:47:46.1058993Z Build succeeded.
|
||||
2026-07-04T11:47:46.1106751Z 0 Warning(s)
|
||||
2026-07-04T11:47:46.1107029Z 0 Error(s)
|
||||
2026-07-04T11:47:46.1107202Z
|
||||
2026-07-04T11:47:46.1317117Z Time Elapsed 00:00:36.73
|
||||
2026-07-04T11:47:46.4310398Z --- Web.Client Release artifacts ---
|
||||
2026-07-04T11:47:46.4667727Z total 42056
|
||||
2026-07-04T11:47:46.4668992Z drwxr-xr-x 3 root root 20480 Jul 4 11:47 .
|
||||
2026-07-04T11:47:46.4694723Z drwxr-xr-x 3 root root 4096 Jul 4 11:46 ..
|
||||
2026-07-04T11:47:46.4695108Z -rwxr--r-- 1 root root 55632 May 20 20:19 Microsoft.AspNetCore.Authorization.dll
|
||||
2026-07-04T11:47:46.4695685Z -rwxr--r-- 1 root root 34128 May 20 20:19 Microsoft.AspNetCore.Components.Authorization.dll
|
||||
2026-07-04T11:47:46.4695976Z -rwxr--r-- 1 root root 47952 May 20 20:19 Microsoft.AspNetCore.Components.Forms.dll
|
||||
2026-07-04T11:47:46.4696583Z -rwxr--r-- 1 root root 189264 May 20 20:19 Microsoft.AspNetCore.Components.Web.dll
|
||||
2026-07-04T11:47:46.4696870Z -rwxr--r-- 1 root root 166736 May 20 20:20 Microsoft.AspNetCore.Components.WebAssembly.dll
|
||||
2026-07-04T11:47:46.4697376Z -rwxr--r-- 1 root root 399184 May 20 20:19 Microsoft.AspNetCore.Components.dll
|
||||
2026-07-04T11:47:46.4697743Z -rwxr--r-- 1 root root 16208 May 20 20:18 Microsoft.AspNetCore.Metadata.dll
|
||||
2026-07-04T11:47:46.4697927Z -rwxr--r-- 1 root root 19248 Dec 12 2025 Microsoft.Bcl.Cryptography.dll
|
||||
2026-07-04T11:47:46.4698489Z -rwxr--r-- 1 root root 311632 May 20 18:30 Microsoft.CSharp.dll
|
||||
2026-07-04T11:47:46.4698771Z -rwxr--r-- 1 root root 38192 Oct 24 2025 Microsoft.Extensions.Caching.Abstractions.dll
|
||||
2026-07-04T11:47:46.4699552Z -rwxr--r-- 1 root root 28496 May 20 19:29 Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
2026-07-04T11:47:46.4699752Z -rwxr--r-- 1 root root 43344 May 20 19:32 Microsoft.Extensions.Configuration.Binder.dll
|
||||
2026-07-04T11:47:46.4699872Z -rwxr--r-- 1 root root 28496 May 20 19:34 Microsoft.Extensions.Configuration.FileExtensions.dll
|
||||
2026-07-04T11:47:46.4700414Z -rwxr--r-- 1 root root 27984 May 20 19:36 Microsoft.Extensions.Configuration.Json.dll
|
||||
2026-07-04T11:47:46.4700599Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Configuration.dll
|
||||
2026-07-04T11:47:46.4700693Z -rwxr--r-- 1 root root 65872 May 20 19:29 Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
2026-07-04T11:47:46.4700787Z -rwxr--r-- 1 root root 95568 May 20 19:30 Microsoft.Extensions.DependencyInjection.dll
|
||||
2026-07-04T11:47:46.4700895Z -rwxr--r-- 1 root root 31056 May 20 19:32 Microsoft.Extensions.Diagnostics.Abstractions.dll
|
||||
2026-07-04T11:47:46.4700983Z -rwxr--r-- 1 root root 36176 May 20 19:34 Microsoft.Extensions.Diagnostics.dll
|
||||
2026-07-04T11:47:46.4701400Z -rwxr--r-- 1 root root 23376 May 20 19:29 Microsoft.Extensions.FileProviders.Abstractions.dll
|
||||
2026-07-04T11:47:46.4701559Z -rwxr--r-- 1 root root 45392 May 20 19:33 Microsoft.Extensions.FileProviders.Physical.dll
|
||||
2026-07-04T11:47:46.4701682Z -rwxr--r-- 1 root root 47952 May 20 19:30 Microsoft.Extensions.FileSystemGlobbing.dll
|
||||
2026-07-04T11:47:46.4702060Z -rwxr--r-- 1 root root 93008 May 20 19:37 Microsoft.Extensions.Http.dll
|
||||
2026-07-04T11:47:46.4702248Z -rwxr--r-- 1 root root 19576 Mar 25 2023 Microsoft.Extensions.Localization.Abstractions.dll
|
||||
2026-07-04T11:47:46.4702365Z -rwxr--r-- 1 root root 31872 Mar 25 2023 Microsoft.Extensions.Localization.dll
|
||||
2026-07-04T11:47:46.4702453Z -rwxr--r-- 1 root root 66896 May 20 19:29 Microsoft.Extensions.Logging.Abstractions.dll
|
||||
2026-07-04T11:47:46.4702541Z -rwxr--r-- 1 root root 51536 May 20 19:33 Microsoft.Extensions.Logging.dll
|
||||
2026-07-04T11:47:46.4702846Z -rwxr--r-- 1 root root 21840 May 20 19:33 Microsoft.Extensions.Options.ConfigurationExtensions.dll
|
||||
2026-07-04T11:47:46.4703042Z -rwxr--r-- 1 root root 65360 May 20 19:30 Microsoft.Extensions.Options.dll
|
||||
2026-07-04T11:47:46.4703143Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Primitives.dll
|
||||
2026-07-04T11:47:46.4703226Z -rwxr--r-- 1 root root 43344 May 20 20:19 Microsoft.Extensions.Validation.dll
|
||||
2026-07-04T11:47:46.4703337Z -rwxr--r-- 1 root root 19296 Jun 2 20:51 Microsoft.IdentityModel.Abstractions.dll
|
||||
2026-07-04T11:47:46.4703427Z -rwxr--r-- 1 root root 172856 Jun 2 20:52 Microsoft.IdentityModel.JsonWebTokens.dll
|
||||
2026-07-04T11:47:46.4704111Z -rwxr--r-- 1 root root 38200 Jun 2 20:51 Microsoft.IdentityModel.Logging.dll
|
||||
2026-07-04T11:47:46.4704286Z -rwxr--r-- 1 root root 407352 Jun 2 20:51 Microsoft.IdentityModel.Tokens.dll
|
||||
2026-07-04T11:47:46.4704476Z -rwxr--r-- 1 root root 24912 May 20 20:20 Microsoft.JSInterop.WebAssembly.dll
|
||||
2026-07-04T11:47:46.4704857Z -rwxr--r-- 1 root root 75088 May 20 20:19 Microsoft.JSInterop.dll
|
||||
2026-07-04T11:47:46.4704976Z -rwxr--r-- 1 root root 428880 May 20 18:30 Microsoft.VisualBasic.Core.dll
|
||||
2026-07-04T11:47:46.4705099Z -rwxr--r-- 1 root root 17232 May 20 18:31 Microsoft.VisualBasic.dll
|
||||
2026-07-04T11:47:46.4705201Z -rwxr--r-- 1 root root 15696 May 20 18:29 Microsoft.Win32.Primitives.dll
|
||||
2026-07-04T11:47:46.4705472Z -rwxr--r-- 1 root root 33104 May 20 18:29 Microsoft.Win32.Registry.dll
|
||||
2026-07-04T11:47:46.4705850Z -rwxr--r-- 1 root root 9108480 Sep 14 2023 MudBlazor.dll
|
||||
2026-07-04T11:47:46.4705955Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.AppContext.dll
|
||||
2026-07-04T11:47:46.4706348Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Buffers.dll
|
||||
2026-07-04T11:47:46.4706499Z -rwxr--r-- 1 root root 88912 May 20 18:29 System.Collections.Concurrent.dll
|
||||
2026-07-04T11:47:46.4706619Z -rwxr--r-- 1 root root 251216 May 20 18:29 System.Collections.Immutable.dll
|
||||
2026-07-04T11:47:46.4706709Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.NonGeneric.dll
|
||||
2026-07-04T11:47:46.4706812Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.Specialized.dll
|
||||
2026-07-04T11:47:46.4706922Z -rwxr--r-- 1 root root 112976 May 20 18:28 System.Collections.dll
|
||||
2026-07-04T11:47:46.4707306Z -rwxr--r-- 1 root root 102736 May 20 18:31 System.ComponentModel.Annotations.dll
|
||||
2026-07-04T11:47:46.4707413Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ComponentModel.DataAnnotations.dll
|
||||
2026-07-04T11:47:46.4707499Z -rwxr--r-- 1 root root 26448 May 20 18:29 System.ComponentModel.EventBasedAsync.dll
|
||||
2026-07-04T11:47:46.4707610Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.ComponentModel.Primitives.dll
|
||||
2026-07-04T11:47:46.4707692Z -rwxr--r-- 1 root root 316752 May 20 18:31 System.ComponentModel.TypeConverter.dll
|
||||
2026-07-04T11:47:46.4714163Z -rwxr--r-- 1 root root 16208 May 20 18:29 System.ComponentModel.dll
|
||||
2026-07-04T11:47:46.4714382Z -rwxr--r-- 1 root root 19280 May 20 18:31 System.Configuration.dll
|
||||
2026-07-04T11:47:46.4715040Z -rwxr--r-- 1 root root 54096 May 20 18:31 System.Console.dll
|
||||
2026-07-04T11:47:46.4715241Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Core.dll
|
||||
2026-07-04T11:47:46.4715834Z -rwxr--r-- 1 root root 1018192 May 20 18:31 System.Data.Common.dll
|
||||
2026-07-04T11:47:46.4716631Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Data.DataSetExtensions.dll
|
||||
2026-07-04T11:47:46.4716921Z -rwxr--r-- 1 root root 25424 May 20 18:31 System.Data.dll
|
||||
2026-07-04T11:47:46.4717074Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Diagnostics.Contracts.dll
|
||||
2026-07-04T11:47:46.4717681Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Diagnostics.Debug.dll
|
||||
2026-07-04T11:47:46.4718000Z -rwxr--r-- 1 root root 202576 May 20 18:29 System.Diagnostics.DiagnosticSource.dll
|
||||
2026-07-04T11:47:46.4718570Z -rwxr--r-- 1 root root 22864 May 20 18:29 System.Diagnostics.FileVersionInfo.dll
|
||||
2026-07-04T11:47:46.4718878Z -rwxr--r-- 1 root root 56656 May 20 18:29 System.Diagnostics.Process.dll
|
||||
2026-07-04T11:47:46.4719100Z -rwxr--r-- 1 root root 25936 May 20 18:29 System.Diagnostics.StackTrace.dll
|
||||
2026-07-04T11:47:46.4719801Z -rwxr--r-- 1 root root 31568 May 20 18:31 System.Diagnostics.TextWriterTraceListener.dll
|
||||
2026-07-04T11:47:46.4719987Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Diagnostics.Tools.dll
|
||||
2026-07-04T11:47:46.4724747Z -rwxr--r-- 1 root root 58704 May 20 18:29 System.Diagnostics.TraceSource.dll
|
||||
2026-07-04T11:47:46.4725246Z -rwxr--r-- 1 root root 16208 May 20 18:28 System.Diagnostics.Tracing.dll
|
||||
2026-07-04T11:47:46.4725363Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Drawing.Primitives.dll
|
||||
2026-07-04T11:47:46.4725454Z -rwxr--r-- 1 root root 20304 May 20 18:31 System.Drawing.dll
|
||||
2026-07-04T11:47:46.4725774Z -rwxr--r-- 1 root root 16208 May 20 18:30 System.Dynamic.Runtime.dll
|
||||
2026-07-04T11:47:46.4725920Z -rwxr--r-- 1 root root 97104 May 20 18:29 System.Formats.Asn1.dll
|
||||
2026-07-04T11:47:46.4726008Z -rwxr--r-- 1 root root 38736 May 20 18:29 System.Formats.Tar.dll
|
||||
2026-07-04T11:47:46.4726397Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.Calendars.dll
|
||||
2026-07-04T11:47:46.4726550Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Globalization.Extensions.dll
|
||||
2026-07-04T11:47:46.4726642Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.dll
|
||||
2026-07-04T11:47:46.4726740Z -rwxr--r-- 1 root root 28496 May 20 18:29 System.IO.Compression.Brotli.dll
|
||||
2026-07-04T11:47:46.4726846Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.IO.Compression.FileSystem.dll
|
||||
2026-07-04T11:47:46.4727134Z -rwxr--r-- 1 root root 53584 May 20 18:29 System.IO.Compression.ZipFile.dll
|
||||
2026-07-04T11:47:46.4727322Z -rwxr--r-- 1 root root 167760 May 20 18:31 System.IO.Compression.dll
|
||||
2026-07-04T11:47:46.4727437Z -rwxr--r-- 1 root root 32080 May 20 18:29 System.IO.FileSystem.AccessControl.dll
|
||||
2026-07-04T11:47:46.4727525Z -rwxr--r-- 1 root root 23888 May 20 18:29 System.IO.FileSystem.DriveInfo.dll
|
||||
2026-07-04T11:47:46.4727697Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.IO.FileSystem.Primitives.dll
|
||||
2026-07-04T11:47:46.4728370Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.IO.FileSystem.Watcher.dll
|
||||
2026-07-04T11:47:46.4731239Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.FileSystem.dll
|
||||
2026-07-04T11:47:46.4731474Z -rwxr--r-- 1 root root 35152 May 20 18:30 System.IO.IsolatedStorage.dll
|
||||
2026-07-04T11:47:46.4731757Z -rwxr--r-- 1 root root 50000 May 20 18:31 System.IO.MemoryMappedFiles.dll
|
||||
2026-07-04T11:47:46.4731888Z -rwxr--r-- 1 root root 78160 May 20 18:29 System.IO.Pipelines.dll
|
||||
2026-07-04T11:47:46.4731992Z -rwxr--r-- 1 root root 23376 May 20 18:29 System.IO.Pipes.AccessControl.dll
|
||||
2026-07-04T11:47:46.4732083Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.IO.Pipes.dll
|
||||
2026-07-04T11:47:46.4732167Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.UnmanagedMemoryStream.dll
|
||||
2026-07-04T11:47:46.4732269Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.dll
|
||||
2026-07-04T11:47:46.4732362Z -rwxr--r-- 1 root root 92000 Jun 2 20:51 System.IdentityModel.Tokens.Jwt.dll
|
||||
2026-07-04T11:47:46.4732446Z -rwxr--r-- 1 root root 456528 May 20 18:29 System.Linq.AsyncEnumerable.dll
|
||||
2026-07-04T11:47:46.4732551Z -rwxr--r-- 1 root root 575312 May 20 18:29 System.Linq.Expressions.dll
|
||||
2026-07-04T11:47:46.4732640Z -rwxr--r-- 1 root root 223056 May 20 18:31 System.Linq.Parallel.dll
|
||||
2026-07-04T11:47:46.4732725Z -rwxr--r-- 1 root root 78672 May 20 18:31 System.Linq.Queryable.dll
|
||||
2026-07-04T11:47:46.4732809Z -rwxr--r-- 1 root root 201040 May 20 18:29 System.Linq.dll
|
||||
2026-07-04T11:47:46.4732905Z -rwxr--r-- 1 root root 55632 May 20 18:28 System.Memory.dll
|
||||
2026-07-04T11:47:46.4733047Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.Http.Json.dll
|
||||
2026-07-04T11:47:46.4733211Z -rwxr--r-- 1 root root 296272 May 20 18:31 System.Net.Http.dll
|
||||
2026-07-04T11:47:46.4733432Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.HttpListener.dll
|
||||
2026-07-04T11:47:46.4733752Z -rwxr--r-- 1 root root 105296 May 20 18:31 System.Net.Mail.dll
|
||||
2026-07-04T11:47:46.4733914Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Net.NameResolution.dll
|
||||
2026-07-04T11:47:46.4737427Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.Net.NetworkInformation.dll
|
||||
2026-07-04T11:47:46.4737629Z -rwxr--r-- 1 root root 27984 May 20 18:29 System.Net.Ping.dll
|
||||
2026-07-04T11:47:46.4737758Z -rwxr--r-- 1 root root 107344 May 20 18:31 System.Net.Primitives.dll
|
||||
2026-07-04T11:47:46.4749705Z -rwxr--r-- 1 root root 39248 May 20 18:30 System.Net.Quic.dll
|
||||
2026-07-04T11:47:46.4749969Z -rwxr--r-- 1 root root 65872 May 20 18:30 System.Net.Requests.dll
|
||||
2026-07-04T11:47:46.4750071Z -rwxr--r-- 1 root root 114512 May 20 18:30 System.Net.Security.dll
|
||||
2026-07-04T11:47:46.4750164Z -rwxr--r-- 1 root root 40784 May 20 18:29 System.Net.ServerSentEvents.dll
|
||||
2026-07-04T11:47:46.4755941Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Net.ServicePoint.dll
|
||||
2026-07-04T11:47:46.4758836Z -rwxr--r-- 1 root root 74576 May 20 18:29 System.Net.Sockets.dll
|
||||
2026-07-04T11:47:46.4758989Z -rwxr--r-- 1 root root 56144 May 20 18:31 System.Net.WebClient.dll
|
||||
2026-07-04T11:47:46.4759110Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.Net.WebHeaderCollection.dll
|
||||
2026-07-04T11:47:46.4766505Z -rwxr--r-- 1 root root 21840 May 20 18:31 System.Net.WebProxy.dll
|
||||
2026-07-04T11:47:46.4766734Z -rwxr--r-- 1 root root 52560 May 20 18:31 System.Net.WebSockets.Client.dll
|
||||
2026-07-04T11:47:46.4777112Z -rwxr--r-- 1 root root 108880 May 20 18:31 System.Net.WebSockets.dll
|
||||
2026-07-04T11:47:46.4777629Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Net.dll
|
||||
2026-07-04T11:47:46.4777738Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Numerics.Vectors.dll
|
||||
2026-07-04T11:47:46.4777835Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Numerics.dll
|
||||
2026-07-04T11:47:46.4777927Z -rwxr--r-- 1 root root 41296 May 20 18:29 System.ObjectModel.dll
|
||||
2026-07-04T11:47:46.4778031Z -rwxr--r-- 1 root root 4880208 May 20 18:19 System.Private.CoreLib.dll
|
||||
2026-07-04T11:47:46.4778120Z -rwxr--r-- 1 root root 859472 May 20 18:31 System.Private.DataContractSerialization.dll
|
||||
2026-07-04T11:47:46.4778225Z -rwxr--r-- 1 root root 105808 May 20 18:28 System.Private.Uri.dll
|
||||
2026-07-04T11:47:46.4778315Z -rwxr--r-- 1 root root 153936 May 20 18:30 System.Private.Xml.Linq.dll
|
||||
2026-07-04T11:47:46.4778406Z -rwxr--r-- 1 root root 3106128 May 20 18:30 System.Private.Xml.dll
|
||||
2026-07-04T11:47:46.4778494Z -rwxr--r-- 1 root root 38224 May 20 18:31 System.Reflection.DispatchProxy.dll
|
||||
2026-07-04T11:47:46.4778636Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.ILGeneration.dll
|
||||
2026-07-04T11:47:46.4778754Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.Lightweight.dll
|
||||
2026-07-04T11:47:46.4778869Z -rwxr--r-- 1 root root 133456 May 20 18:29 System.Reflection.Emit.dll
|
||||
2026-07-04T11:47:46.4778954Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Reflection.Extensions.dll
|
||||
2026-07-04T11:47:46.4779106Z -rwxr--r-- 1 root root 503632 May 20 18:29 System.Reflection.Metadata.dll
|
||||
2026-07-04T11:47:46.4779280Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Reflection.Primitives.dll
|
||||
2026-07-04T11:47:46.4779471Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Reflection.TypeExtensions.dll
|
||||
2026-07-04T11:47:46.4779642Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Reflection.dll
|
||||
2026-07-04T11:47:46.4779820Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Resources.Reader.dll
|
||||
2026-07-04T11:47:46.4779997Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Resources.ResourceManager.dll
|
||||
2026-07-04T11:47:46.4780159Z -rwxr--r-- 1 root root 26960 May 20 18:31 System.Resources.Writer.dll
|
||||
2026-07-04T11:47:46.4780321Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Runtime.CompilerServices.Unsafe.dll
|
||||
2026-07-04T11:47:46.4783015Z -rwxr--r-- 1 root root 17232 May 20 18:30 System.Runtime.CompilerServices.VisualC.dll
|
||||
2026-07-04T11:47:46.4783246Z -rwxr--r-- 1 root root 17744 May 20 18:30 System.Runtime.Extensions.dll
|
||||
2026-07-04T11:47:46.4783840Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Runtime.Handles.dll
|
||||
2026-07-04T11:47:46.4784077Z -rwxr--r-- 1 root root 89936 May 20 18:31 System.Runtime.InteropServices.JavaScript.dll
|
||||
2026-07-04T11:47:46.4784217Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Runtime.InteropServices.RuntimeInformation.dll
|
||||
2026-07-04T11:47:46.4784315Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Runtime.InteropServices.dll
|
||||
2026-07-04T11:47:46.4784408Z -rwxr--r-- 1 root root 17232 May 20 18:29 System.Runtime.Intrinsics.dll
|
||||
2026-07-04T11:47:46.4784695Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Runtime.Loader.dll
|
||||
2026-07-04T11:47:46.4784787Z -rwxr--r-- 1 root root 145232 May 20 18:29 System.Runtime.Numerics.dll
|
||||
2026-07-04T11:47:46.4784881Z -rwxr--r-- 1 root root 65872 May 20 18:29 System.Runtime.Serialization.Formatters.dll
|
||||
2026-07-04T11:47:46.4784980Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Runtime.Serialization.Json.dll
|
||||
2026-07-04T11:47:46.4785088Z -rwxr--r-- 1 root root 23376 May 20 18:30 System.Runtime.Serialization.Primitives.dll
|
||||
2026-07-04T11:47:46.4785255Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Runtime.Serialization.Xml.dll
|
||||
2026-07-04T11:47:46.4787538Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Runtime.Serialization.dll
|
||||
2026-07-04T11:47:46.4787714Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Runtime.dll
|
||||
2026-07-04T11:47:46.4787807Z -rwxr--r-- 1 root root 58192 May 20 18:29 System.Security.AccessControl.dll
|
||||
2026-07-04T11:47:46.4787894Z -rwxr--r-- 1 root root 55120 May 20 18:29 System.Security.Claims.dll
|
||||
2026-07-04T11:47:46.4792248Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Security.Cryptography.Algorithms.dll
|
||||
2026-07-04T11:47:46.4792484Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Cng.dll
|
||||
2026-07-04T11:47:46.4792596Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Csp.dll
|
||||
2026-07-04T11:47:46.4792684Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Encoding.dll
|
||||
2026-07-04T11:47:46.4793025Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.OpenSsl.dll
|
||||
2026-07-04T11:47:46.4793131Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Primitives.dll
|
||||
2026-07-04T11:47:46.4793235Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Security.Cryptography.X509Certificates.dll
|
||||
2026-07-04T11:47:46.4793349Z -rwxr--r-- 1 root root 654160 May 20 18:31 System.Security.Cryptography.dll
|
||||
2026-07-04T11:47:46.4793439Z -rwxr--r-- 1 root root 37712 May 20 18:29 System.Security.Principal.Windows.dll
|
||||
2026-07-04T11:47:46.4797422Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Security.Principal.dll
|
||||
2026-07-04T11:47:46.4797641Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Security.SecureString.dll
|
||||
2026-07-04T11:47:46.4797736Z -rwxr--r-- 1 root root 18256 May 20 18:31 System.Security.dll
|
||||
2026-07-04T11:47:46.4797820Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ServiceModel.Web.dll
|
||||
2026-07-04T11:47:46.4797907Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.ServiceProcess.dll
|
||||
2026-07-04T11:47:46.4798463Z -rwxr--r-- 1 root root 742736 May 20 18:29 System.Text.Encoding.CodePages.dll
|
||||
2026-07-04T11:47:46.4798577Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Text.Encoding.Extensions.dll
|
||||
2026-07-04T11:47:46.4798664Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Text.Encoding.dll
|
||||
2026-07-04T11:47:46.4798753Z -rwxr--r-- 1 root root 65872 May 20 18:32 System.Text.Encodings.Web.dll
|
||||
2026-07-04T11:47:46.4800698Z -rwxr--r-- 1 root root 649040 May 20 18:30 System.Text.Json.dll
|
||||
2026-07-04T11:47:46.4800902Z -rwxr--r-- 1 root root 384848 May 20 18:30 System.Text.RegularExpressions.dll
|
||||
2026-07-04T11:47:46.4801000Z -rwxr--r-- 1 root root 33616 May 20 18:29 System.Threading.AccessControl.dll
|
||||
2026-07-04T11:47:46.4801108Z -rwxr--r-- 1 root root 66384 May 20 18:29 System.Threading.Channels.dll
|
||||
2026-07-04T11:47:46.4801200Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Overlapped.dll
|
||||
2026-07-04T11:47:46.4803346Z -rwxr--r-- 1 root root 185680 May 20 18:29 System.Threading.Tasks.Dataflow.dll
|
||||
2026-07-04T11:47:46.4803652Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Threading.Tasks.Extensions.dll
|
||||
2026-07-04T11:47:46.4803778Z -rwxr--r-- 1 root root 61264 May 20 18:31 System.Threading.Tasks.Parallel.dll
|
||||
2026-07-04T11:47:46.4803883Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Threading.Tasks.dll
|
||||
2026-07-04T11:47:46.4826592Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Thread.dll
|
||||
2026-07-04T11:47:46.4826923Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.ThreadPool.dll
|
||||
2026-07-04T11:47:46.4827478Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Threading.Timer.dll
|
||||
2026-07-04T11:47:46.4827621Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Threading.dll
|
||||
2026-07-04T11:47:46.4827719Z -rwxr--r-- 1 root root 175952 May 20 18:30 System.Transactions.Local.dll
|
||||
2026-07-04T11:47:46.4827816Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Transactions.dll
|
||||
2026-07-04T11:47:46.4827907Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.ValueTuple.dll
|
||||
2026-07-04T11:47:46.4827990Z -rwxr--r-- 1 root root 30032 May 20 18:31 System.Web.HttpUtility.dll
|
||||
2026-07-04T11:47:46.4828302Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Web.dll
|
||||
2026-07-04T11:47:46.4828408Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Windows.dll
|
||||
2026-07-04T11:47:46.4828498Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.Linq.dll
|
||||
2026-07-04T11:47:46.4828583Z -rwxr--r-- 1 root root 21840 May 20 18:30 System.Xml.ReaderWriter.dll
|
||||
2026-07-04T11:47:46.4828673Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Xml.Serialization.dll
|
||||
2026-07-04T11:47:46.4828756Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XDocument.dll
|
||||
2026-07-04T11:47:46.4828835Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XPath.XDocument.dll
|
||||
2026-07-04T11:47:46.4836968Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Xml.XPath.dll
|
||||
2026-07-04T11:47:46.4837091Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XmlDocument.dll
|
||||
2026-07-04T11:47:46.4837181Z -rwxr--r-- 1 root root 17744 May 20 18:31 System.Xml.XmlSerializer.dll
|
||||
2026-07-04T11:47:46.4837469Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Xml.dll
|
||||
2026-07-04T11:47:46.4837572Z -rwxr--r-- 1 root root 50000 May 20 18:32 System.dll
|
||||
2026-07-04T11:47:46.4837654Z -rw-r--r-- 1 root root 156672 Jul 4 11:44 TaxBaik.Application.dll
|
||||
2026-07-04T11:47:46.4837741Z -rw-r--r-- 1 root root 38472 Jul 4 11:44 TaxBaik.Application.pdb
|
||||
2026-07-04T11:47:46.4837836Z -rw-r--r-- 1 root root 37888 Jul 4 11:43 TaxBaik.Domain.dll
|
||||
2026-07-04T11:47:46.4837919Z -rw-r--r-- 1 root root 24100 Jul 4 11:43 TaxBaik.Domain.pdb
|
||||
2026-07-04T11:47:46.4838004Z -rw-r--r-- 1 root root 713216 Jul 4 11:46 TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:46.4838087Z -rw-r--r-- 1 root root 373136 Jul 4 11:46 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T11:47:46.4838338Z -rw-r--r-- 1 root root 2546 Jul 4 11:46 TaxBaik.Web.Client.runtimeconfig.json
|
||||
2026-07-04T11:47:46.4838449Z -rw-r--r-- 1 root root 1007340 Jul 4 11:47 TaxBaik.Web.Client.staticwebassets.endpoints.json
|
||||
2026-07-04T11:47:46.4838556Z -rw-r--r-- 1 root root 78064 Jul 4 11:47 TaxBaik.Web.Client.staticwebassets.runtime.json
|
||||
2026-07-04T11:47:46.4838657Z -rwxr--r-- 1 root root 16208 May 20 18:31 WindowsBase.dll
|
||||
2026-07-04T11:47:46.4838745Z -rwxr--r-- 1 root root 37898 May 20 18:42 dotnet.js
|
||||
2026-07-04T11:47:46.4838826Z -rwxr--r-- 1 root root 51818 May 20 18:42 dotnet.js.map
|
||||
2026-07-04T11:47:46.4838909Z -rwxr--r-- 1 root root 145050 May 20 18:43 dotnet.native.js
|
||||
2026-07-04T11:47:46.4839142Z -rwxr--r-- 1 root root 3002101 May 20 18:43 dotnet.native.wasm
|
||||
2026-07-04T11:47:46.4854365Z -rwxr--r-- 1 root root 198479 May 20 18:42 dotnet.runtime.js
|
||||
2026-07-04T11:47:46.4854700Z -rwxr--r-- 1 root root 276757 May 20 18:42 dotnet.runtime.js.map
|
||||
2026-07-04T11:47:46.4856315Z -rwxr--r-- 1 root root 956416 Apr 2 19:04 icudt_CJK.dat
|
||||
2026-07-04T11:47:46.4856510Z -rwxr--r-- 1 root root 550832 Apr 2 19:04 icudt_EFIGS.dat
|
||||
2026-07-04T11:47:46.4856618Z -rwxr--r-- 1 root root 1107168 Apr 2 19:04 icudt_no_CJK.dat
|
||||
2026-07-04T11:47:46.4856712Z -rwxr--r-- 1 root root 59728 May 20 18:31 mscorlib.dll
|
||||
2026-07-04T11:47:46.4856802Z -rwxr--r-- 1 root root 100688 May 20 18:32 netstandard.dll
|
||||
2026-07-04T11:47:46.4856882Z drwxr-xr-x 3 root root 4096 Jul 4 11:47 wwwroot
|
||||
2026-07-04T11:47:46.5011624Z total 4356
|
||||
2026-07-04T11:47:46.5012214Z drwxr-xr-x 8 root root 4096 Jul 4 11:47 .
|
||||
2026-07-04T11:47:46.5012363Z drwxr-xr-x 3 root root 4096 Jul 4 11:46 ..
|
||||
2026-07-04T11:47:46.5012540Z -rw-r--r-- 1 root root 196 Jul 4 11:46 .NETCoreApp,Version=v10.0.AssemblyAttributes.cs
|
||||
2026-07-04T11:47:46.5012747Z -rw-r--r-- 1 root root 137 Jul 4 11:46 EmbeddedAttribute.cs
|
||||
2026-07-04T11:47:46.5012869Z -rw-r--r-- 1 root root 0 Jul 4 11:47 TaxBaik..C36EE7CA.Up2Date
|
||||
2026-07-04T11:47:46.5012966Z -rw-r--r-- 1 root root 1008 Jul 4 11:46 TaxBaik.Web.Client.AssemblyInfo.cs
|
||||
2026-07-04T11:47:46.5013067Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.AssemblyInfoInputs.cache
|
||||
2026-07-04T11:47:46.5013226Z -rw-r--r-- 1 root root 16355 Jul 4 11:46 TaxBaik.Web.Client.GeneratedMSBuildEditorConfig.editorconfig
|
||||
2026-07-04T11:47:46.5013330Z -rw-r--r-- 1 root root 433 Jul 4 11:46 TaxBaik.Web.Client.GlobalUsings.g.cs
|
||||
2026-07-04T11:47:46.5013418Z -rw-r--r-- 1 root root 0 Jul 4 11:46 TaxBaik.Web.Client.MvcApplicationPartsAssemblyInfo.cache
|
||||
2026-07-04T11:47:46.5013674Z -rw-r--r-- 1 root root 27329 Jul 4 11:46 TaxBaik.Web.Client.assets.cache
|
||||
2026-07-04T11:47:46.5013797Z -rw-r--r-- 1 root root 20456 Jul 4 11:46 TaxBaik.Web.Client.csproj.AssemblyReference.cache
|
||||
2026-07-04T11:47:46.5013898Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.csproj.CoreCompileInputs.cache
|
||||
2026-07-04T11:47:46.5014122Z -rw-r--r-- 1 root root 136894 Jul 4 11:47 TaxBaik.Web.Client.csproj.FileListAbsolute.txt
|
||||
2026-07-04T11:47:46.5014229Z -rw-r--r-- 1 root root 713216 Jul 4 11:46 TaxBaik.Web.Client.dll
|
||||
2026-07-04T11:47:46.5014324Z -rw-r--r-- 1 root root 65 Jul 4 11:46 TaxBaik.Web.Client.genruntimeconfig.cache
|
||||
2026-07-04T11:47:46.5014437Z -rw-r--r-- 1 root root 373136 Jul 4 11:46 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T11:47:46.5014522Z -rw-r--r-- 1 root root 276 Jul 4 11:46 ValidatableTypeAttribute.cs
|
||||
2026-07-04T11:47:46.5014623Z -rw-r--r-- 1 root root 3 Jul 4 11:47 blazor.build.boot-extension.json
|
||||
2026-07-04T11:47:46.5014709Z drwxr-xr-x 2 root root 20480 Jul 4 11:47 compressed
|
||||
2026-07-04T11:47:46.5014796Z -rw-r--r-- 1 root root 93392 Jul 4 11:46 dotnet.js
|
||||
2026-07-04T11:47:46.5014882Z -rw-r--r-- 1 root root 276707 Jul 4 11:47 rbcswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5014965Z drwxr-xr-x 2 root root 4096 Jul 4 11:47 ref
|
||||
2026-07-04T11:47:46.5015048Z drwxr-xr-x 2 root root 4096 Jul 4 11:46 refint
|
||||
2026-07-04T11:47:46.5015127Z -rw-r--r-- 1 root root 322 Jul 4 11:46 rjimswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015214Z -rw-r--r-- 1 root root 3374 Jul 4 11:46 rjsmcshtml.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015311Z -rw-r--r-- 1 root root 3374 Jul 4 11:46 rjsmrazor.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015409Z -rw-r--r-- 1 root root 4157 Jul 4 11:46 rpswa.dswa.cache.json
|
||||
2026-07-04T11:47:46.5015507Z drwxr-xr-x 2 root root 4096 Jul 4 11:46 staticwebassets
|
||||
2026-07-04T11:47:46.5015589Z -rw-r--r-- 1 root root 1007340 Jul 4 11:47 staticwebassets.build.endpoints.json
|
||||
2026-07-04T11:47:46.5015678Z -rw-r--r-- 1 root root 1564906 Jul 4 11:47 staticwebassets.build.json
|
||||
2026-07-04T11:47:46.5015781Z -rw-r--r-- 1 root root 44 Jul 4 11:47 staticwebassets.build.json.cache
|
||||
2026-07-04T11:47:46.5015869Z -rw-r--r-- 1 root root 78064 Jul 4 11:47 staticwebassets.development.json
|
||||
2026-07-04T11:47:46.5015953Z -rw-r--r-- 1 root root 0 Jul 4 11:47 swae.build.ex.cache
|
||||
2026-07-04T11:47:46.5016051Z drwxr-xr-x 2 root root 4096 Jul 4 11:47 tmp-webcil
|
||||
2026-07-04T11:47:46.5016368Z drwxr-xr-x 2 root root 20480 Jul 4 11:46 webcil
|
||||
2026-07-04T11:52:06.9293539Z ✓ Publish Web elapsed: 355s
|
||||
2026-07-04T11:52:06.9355856Z -rw-r--r-- 1 root root 2.2M Jul 4 11:52 ./publish-logs/publish-web.binlog
|
||||
2026-07-04T11:52:07.1179623Z ::group::Run set -e
|
||||
2026-07-04T11:52:07.1179966Z set -e
|
||||
2026-07-04T11:52:07.1180076Z mkdir -p ./publish-logs
|
||||
2026-07-04T11:52:07.1180177Z # Proxy is not part of the solution restore graph, so restore it once
|
||||
2026-07-04T11:52:07.1180269Z # here before publishing to avoid NETSDK1004 in CI.
|
||||
2026-07-04T11:52:07.1180375Z dotnet restore src/TaxBaik.Proxy/
|
||||
2026-07-04T11:52:07.1180458Z dotnet build src/TaxBaik.Proxy/TaxBaik.Proxy.csproj -c Release --no-restore
|
||||
2026-07-04T11:52:07.1180545Z start=$(date +%s)
|
||||
2026-07-04T11:52:07.1180618Z dotnet publish src/TaxBaik.Proxy/ \
|
||||
2026-07-04T11:52:07.1180693Z -c Release \
|
||||
2026-07-04T11:52:07.1180763Z -o ./publish/proxy \
|
||||
2026-07-04T11:52:07.1180877Z --no-restore \
|
||||
2026-07-04T11:52:07.1180947Z --no-build \
|
||||
2026-07-04T11:52:07.1181021Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T11:52:07.1181106Z -p:PerformanceSummary=true \
|
||||
2026-07-04T11:52:07.1181197Z -clp:Summary \
|
||||
2026-07-04T11:52:07.1181269Z -bl:./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:07.1181341Z end=$(date +%s)
|
||||
2026-07-04T11:52:07.1181433Z echo "✓ Publish Proxy elapsed: $((end - start))s"
|
||||
2026-07-04T11:52:07.1181524Z ls -lh ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:07.1181605Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:07.1181716Z ::endgroup::
|
||||
2026-07-04T11:52:09.6375394Z Determining projects to restore...
|
||||
2026-07-04T11:52:10.7577763Z Restored /workspace/***/taxbaik/src/TaxBaik.Proxy/TaxBaik.Proxy.csproj (in 218 ms).
|
||||
2026-07-04T11:52:15.5113205Z TaxBaik.Proxy -> /workspace/***/taxbaik/src/TaxBaik.Proxy/bin/Release/net10.0/TaxBaik.Proxy.dll
|
||||
2026-07-04T11:52:15.6377985Z
|
||||
2026-07-04T11:52:15.6378518Z Build succeeded.
|
||||
2026-07-04T11:52:15.6547716Z 0 Warning(s)
|
||||
2026-07-04T11:52:15.6548226Z 0 Error(s)
|
||||
2026-07-04T11:52:15.6548404Z
|
||||
2026-07-04T11:52:15.6548492Z Time Elapsed 00:00:03.35
|
||||
2026-07-04T11:52:19.1638052Z TaxBaik.Proxy -> /workspace/***/taxbaik/publish/proxy/
|
||||
2026-07-04T11:52:19.1887325Z
|
||||
2026-07-04T11:52:19.1911472Z Build succeeded.
|
||||
2026-07-04T11:52:19.1938777Z 0 Warning(s)
|
||||
2026-07-04T11:52:19.1940392Z 0 Error(s)
|
||||
2026-07-04T11:52:19.1943224Z
|
||||
2026-07-04T11:52:19.1944917Z Time Elapsed 00:00:01.93
|
||||
2026-07-04T11:52:19.2978414Z ✓ Publish Proxy elapsed: 4s
|
||||
2026-07-04T11:52:19.3007702Z -rw-r--r-- 1 root root 335K Jul 4 11:52 ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T11:52:19.4718601Z ::group::Run set -e
|
||||
2026-07-04T11:52:19.4719182Z set -e
|
||||
2026-07-04T11:52:19.4719307Z JWT_SECRET_KEY="***"
|
||||
2026-07-04T11:52:19.4719410Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T11:52:19.4719510Z TELEGRAM_CHAT_ID="***"
|
||||
2026-07-04T11:52:19.4719587Z TELEGRAM_INQUIRY_CHAT_ID=""
|
||||
2026-07-04T11:52:19.4719740Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T11:52:19.4719815Z [ -z "$JWT_SECRET_KEY" ] && { echo "Missing TAXBAIK_JWT_SECRET_KEY" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4719926Z [ -z "$TELEGRAM_BOT_TOKEN" ] && { echo "Missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4720014Z [ -z "$TELEGRAM_CHAT_ID" ] && { echo "Missing TAXBAIK_TELEGRAM_CHAT_ID" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4720103Z [ -z "$TELEGRAM_INQUIRY_CHAT_ID" ] && TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_CHAT_ID"
|
||||
2026-07-04T11:52:19.4720235Z [ -z "$TELEGRAM_SYSTEM_CHAT_ID" ] && TELEGRAM_SYSTEM_CHAT_ID="-5585148480"
|
||||
2026-07-04T11:52:19.4720321Z JWT_SECRET_KEY="$JWT_SECRET_KEY" \
|
||||
2026-07-04T11:52:19.4720412Z TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" \
|
||||
2026-07-04T11:52:19.4720488Z TELEGRAM_CHAT_ID="$TELEGRAM_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720567Z TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_INQUIRY_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720641Z TELEGRAM_SYSTEM_CHAT_ID="$TELEGRAM_SYSTEM_CHAT_ID" \
|
||||
2026-07-04T11:52:19.4720730Z python3 -c '
|
||||
2026-07-04T11:52:19.4720814Z import json, os, pathlib
|
||||
2026-07-04T11:52:19.4720884Z pathlib.Path("./publish/appsettings.Production.json").write_text(
|
||||
2026-07-04T11:52:19.4720964Z json.dumps({
|
||||
2026-07-04T11:52:19.4721057Z "Jwt": {"SecretKey": os.environ["JWT_SECRET_KEY"]},
|
||||
2026-07-04T11:52:19.4721142Z "Telegram": {
|
||||
2026-07-04T11:52:19.4721214Z "BotToken": os.environ["TELEGRAM_BOT_TOKEN"],
|
||||
2026-07-04T11:52:19.4721307Z "ChatId": os.environ["TELEGRAM_CHAT_ID"],
|
||||
2026-07-04T11:52:19.4721379Z "InquiryChatId": os.environ["TELEGRAM_INQUIRY_CHAT_ID"],
|
||||
2026-07-04T11:52:19.4721452Z "SystemChatId": os.environ["TELEGRAM_SYSTEM_CHAT_ID"]
|
||||
2026-07-04T11:52:19.4721532Z }
|
||||
2026-07-04T11:52:19.4721614Z }, ensure_ascii=False, indent=2),
|
||||
2026-07-04T11:52:19.4721684Z encoding="utf-8"
|
||||
2026-07-04T11:52:19.4721970Z )'
|
||||
2026-07-04T11:52:19.4722065Z test -s ./publish/appsettings.Production.json || { echo "appsettings.Production.json is empty" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.4722178Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:19.4722271Z ::endgroup::
|
||||
2026-07-04T11:52:19.9176988Z ::group::Run test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177419Z test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177566Z test -s ./publish/proxy/TaxBaik.Proxy.runtimeconfig.json || { echo "TaxBaik.Proxy.runtimeconfig.json missing" >&2; exit 1; }
|
||||
2026-07-04T11:52:19.9177671Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:19.9177787Z ::endgroup::
|
||||
2026-07-04T11:52:20.3760171Z ::group::Run mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T11:52:20.3760511Z mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T11:52:20.3760638Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:20.3760752Z ::endgroup::
|
||||
2026-07-04T11:52:20.7524276Z ::group::Run bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T11:52:20.7524614Z bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T11:52:20.7524730Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:20.7524834Z ::endgroup::
|
||||
2026-07-04T11:52:21.0212173Z Duplicate version check passed.
|
||||
2026-07-04T11:52:21.2645086Z ::group::Run bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T11:52:21.2645607Z bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T11:52:21.2645807Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:21.2646008Z ::endgroup::
|
||||
2026-07-04T11:52:21.4225050Z KST timestamp harness passed.
|
||||
2026-07-04T11:52:21.6127869Z ::group::Run COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:21.6128385Z COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:21.6128574Z BUILD_TIME=$(TZ=Asia/Seoul date +'%Y-%m-%d %H:%M:%S KST')
|
||||
2026-07-04T11:52:21.6128771Z mkdir -p ./publish/wwwroot
|
||||
2026-07-04T11:52:21.6128924Z printf '{\n "version": "%s",\n "built": "%s"\n}\n' "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
||||
2026-07-04T11:52:21.6129152Z echo "✓ Build: $COMMIT_HASH @ $BUILD_TIME"
|
||||
2026-07-04T11:52:21.6129314Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:21.6129472Z ::endgroup::
|
||||
2026-07-04T11:52:21.7777206Z ✓ Build: e1f3fc5 @ 2026-07-04 20:52:21 KST
|
||||
2026-07-04T11:52:22.0137274Z ::group::Run mkdir -p ~/.ssh
|
||||
2026-07-04T11:52:22.0137680Z mkdir -p ~/.ssh
|
||||
2026-07-04T11:52:22.0139108Z SSH_KEY_B64="***"
|
||||
2026-07-04T11:52:22.0143588Z SSH_KEY_RAW="***"
|
||||
2026-07-04T11:52:22.0143927Z if [ -n "$SSH_KEY_B64" ]; then
|
||||
2026-07-04T11:52:22.0144399Z printf '%s' "$SSH_KEY_B64" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0144705Z elif [ -n "$SSH_KEY_RAW" ]; then
|
||||
2026-07-04T11:52:22.0144952Z if printf '%s' "$SSH_KEY_RAW" | grep -q 'BEGIN .*PRIVATE KEY'; then
|
||||
2026-07-04T11:52:22.0145249Z printf '%b\n' "$SSH_KEY_RAW" > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0145595Z else
|
||||
2026-07-04T11:52:22.0145844Z printf '%s' "$SSH_KEY_RAW" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0146316Z fi
|
||||
2026-07-04T11:52:22.0146584Z else
|
||||
2026-07-04T11:52:22.0146852Z echo "Missing DEPLOY_SSH_KEY_B64 or DEPLOY_SSH_KEY" >&2; exit 1
|
||||
2026-07-04T11:52:22.0147082Z fi
|
||||
2026-07-04T11:52:22.0147278Z sed -i 's/\r$//' ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0147740Z chmod 600 ~/.ssh/id_ed25519
|
||||
2026-07-04T11:52:22.0152024Z ssh-keyscan -H "***" >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||
2026-07-04T11:52:22.0152288Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:22.0153027Z ::endgroup::
|
||||
2026-07-04T11:52:22.9382983Z ::group::Run cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T11:52:22.9383396Z cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T11:52:22.9383581Z mkdir -p ./publish/scripts
|
||||
2026-07-04T11:52:22.9383680Z cp scripts/validate_migrations.sh ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T11:52:22.9383785Z chmod +x ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T11:52:22.9383881Z tar -czf taxbaik_deploy.tgz -C ./publish .
|
||||
2026-07-04T11:52:22.9383964Z echo "✓ Package: $(du -sh taxbaik_deploy.tgz | cut -f1)"
|
||||
2026-07-04T11:52:22.9384065Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:22.9384317Z ::endgroup::
|
||||
2026-07-04T11:52:28.6175249Z ✓ Package: 23M
|
||||
2026-07-04T11:52:28.7799681Z ::group::Run set -e
|
||||
2026-07-04T11:52:28.7800041Z set -e
|
||||
2026-07-04T11:52:28.7800157Z export TAXBAIK_DEPLOY_FROM_CI=1
|
||||
2026-07-04T11:52:28.7800254Z TIMESTAMP=$(TZ=Asia/Seoul date +%Y%m%d_%H%M%S)
|
||||
2026-07-04T11:52:28.7800346Z COMMIT=$(git rev-parse --short HEAD)
|
||||
2026-07-04T11:52:28.7800425Z DEPLOY_HOST="***"
|
||||
2026-07-04T11:52:28.7800511Z DEPLOY_USER="***"
|
||||
2026-07-04T11:52:28.7800595Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T11:52:28.7800681Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T11:52:28.7800765Z TELEGRAM_CHAT_ID="${TELEGRAM_SYSTEM_CHAT_ID:--5585148480}"
|
||||
2026-07-04T11:52:28.7800854Z
|
||||
2026-07-04T11:52:28.7800924Z send_telegram() {
|
||||
2026-07-04T11:52:28.7800996Z local text="$1"
|
||||
2026-07-04T11:52:28.7801070Z if [ -z "$TELEGRAM_BOT_TOKEN" ]; then
|
||||
2026-07-04T11:52:28.7801161Z echo "Skipping Telegram notification: missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2
|
||||
2026-07-04T11:52:28.7801258Z return 0
|
||||
2026-07-04T11:52:28.7801329Z fi
|
||||
2026-07-04T11:52:28.7801392Z
|
||||
2026-07-04T11:52:28.7801454Z curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
||||
2026-07-04T11:52:28.7801542Z -d "chat_id=${TELEGRAM_CHAT_ID}" \
|
||||
2026-07-04T11:52:28.7801613Z --data-urlencode "text=${text}" \
|
||||
2026-07-04T11:52:28.7801709Z -d "parse_mode=HTML" >/dev/null || true
|
||||
2026-07-04T11:52:28.7801784Z }
|
||||
2026-07-04T11:52:28.7801849Z
|
||||
2026-07-04T11:52:28.7801914Z notify_failure() {
|
||||
2026-07-04T11:52:28.7801984Z local exit_code=$?
|
||||
2026-07-04T11:52:28.7802055Z send_telegram "❌ <b>TaxBaik 배포 실패</b>
|
||||
2026-07-04T11:52:28.7802145Z
|
||||
2026-07-04T11:52:28.7802217Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T11:52:28.7802291Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T11:52:28.7802375Z 단계: CI/CD deploy"
|
||||
2026-07-04T11:52:28.7802446Z exit "$exit_code"
|
||||
2026-07-04T11:52:28.7802513Z }
|
||||
2026-07-04T11:52:28.7802578Z
|
||||
2026-07-04T11:52:28.7802636Z trap notify_failure ERR
|
||||
2026-07-04T11:52:28.7802710Z
|
||||
2026-07-04T11:52:28.7802784Z echo "=== Deploying TaxBaik $COMMIT ($TIMESTAMP) ==="
|
||||
2026-07-04T11:52:28.7802862Z
|
||||
2026-07-04T11:52:28.7802922Z # 1. 아티팩트 업로드
|
||||
2026-07-04T11:52:28.7802996Z scp -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T11:52:28.7803076Z taxbaik_deploy.tgz "$DEPLOY_USER@$DEPLOY_HOST:/tmp/taxbaik_${TIMESTAMP}.tgz"
|
||||
2026-07-04T11:52:28.7803156Z
|
||||
2026-07-04T11:52:28.7803251Z # 2. 서버에서 배포 + 헬스 체크 (SSH 1회 연결로 처리, Green-Blue 지원)
|
||||
2026-07-04T11:52:28.7803340Z ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T11:52:28.7803414Z -o ServerAliveInterval=10 \
|
||||
2026-07-04T11:52:28.7803496Z "$DEPLOY_USER@$DEPLOY_HOST" TAXBAIK_DEPLOY_FROM_CI=1 bash << REMOTE
|
||||
2026-07-04T11:52:28.7803579Z set -e
|
||||
2026-07-04T11:52:28.7803647Z DEPLOY_HOME="/home/***"
|
||||
2026-07-04T11:52:28.7803720Z DEPLOY_DIR="\$DEPLOY_HOME/deployments/taxbaik_${TIMESTAMP}"
|
||||
2026-07-04T11:52:28.7803822Z TIMESTAMP="${TIMESTAMP}"
|
||||
2026-07-04T11:52:28.7803892Z COMMIT="${COMMIT}"
|
||||
2026-07-04T11:52:28.7803960Z
|
||||
2026-07-04T11:52:28.7804034Z echo "--- [1/5] 압축 해제 ---"
|
||||
2026-07-04T11:52:28.7804109Z mkdir -p "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7804421Z tar -xzf "/tmp/taxbaik_\${TIMESTAMP}.tgz" -C "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7804504Z rm -f "/tmp/taxbaik_\${TIMESTAMP}.tgz"
|
||||
2026-07-04T11:52:28.7804586Z
|
||||
2026-07-04T11:52:28.7804649Z echo "--- [2/5] 운영 설정 검증 ---"
|
||||
2026-07-04T11:52:28.7804724Z test -s "\$DEPLOY_DIR/appsettings.Production.json" \
|
||||
2026-07-04T11:52:28.7804802Z || { echo "FATAL: appsettings.Production.json 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7804887Z test -s "\$DEPLOY_DIR/proxy/TaxBaik.Proxy.dll" \
|
||||
2026-07-04T11:52:28.7804962Z || { echo "FATAL: TaxBaik.Proxy.dll 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7805035Z
|
||||
2026-07-04T11:52:28.7805102Z echo "--- [3/5] 마이그레이션 사전 검증 ---"
|
||||
2026-07-04T11:52:28.7805177Z test -x "\$DEPLOY_DIR/scripts/validate_migrations.sh" \
|
||||
2026-07-04T11:52:28.7805250Z || { echo "FATAL: validate_migrations.sh 없음" >&2; exit 1; }
|
||||
2026-07-04T11:52:28.7805338Z "\$DEPLOY_DIR/scripts/validate_migrations.sh" "\$DEPLOY_DIR/db/migrations" "postgresql://taxbaik:taxbaik123@localhost:5432/taxbaikdb"
|
||||
2026-07-04T11:52:28.7805434Z
|
||||
2026-07-04T11:52:28.7805499Z echo "--- [4/5] Green-Blue 배포 실행 ---"
|
||||
2026-07-04T11:52:28.7805592Z chmod +x "\$DEPLOY_DIR/deploy_gb.sh"
|
||||
2026-07-04T11:52:28.7805669Z "\$DEPLOY_DIR/deploy_gb.sh" "\$DEPLOY_DIR"
|
||||
2026-07-04T11:52:28.7805741Z
|
||||
2026-07-04T11:52:28.7805801Z echo "--- [4.5/5] Nginx 설정 검증 ---"
|
||||
2026-07-04T11:52:28.7805881Z # 실제 로드되는 파일은 sites-enabled/의 심볼릭 링크 대상만이다.
|
||||
2026-07-04T11:52:28.7805964Z # sites-available/에 다른 파일(예: default)이 있어도 sites-enabled에
|
||||
2026-07-04T11:52:28.7806045Z # 링크되어 있지 않으면 nginx는 그 내용을 절대 읽지 않는다.
|
||||
2026-07-04T11:52:28.7806281Z NGINX_CONF=""
|
||||
2026-07-04T11:52:28.7806362Z for f in /etc/nginx/sites-enabled/*; do
|
||||
2026-07-04T11:52:28.7806437Z if [ -e "\$f" ] && grep -q "location /taxbaik" "\$f" 2>/dev/null; then
|
||||
2026-07-04T11:52:28.7806520Z NGINX_CONF=\$(readlink -f "\$f")
|
||||
2026-07-04T11:52:28.7806592Z break
|
||||
2026-07-04T11:52:28.7806658Z fi
|
||||
2026-07-04T11:52:28.7806721Z done
|
||||
2026-07-04T11:52:28.7806784Z
|
||||
2026-07-04T11:52:28.7806849Z if [ -z "\$NGINX_CONF" ]; then
|
||||
2026-07-04T11:52:28.7806924Z echo "❌ FATAL: sites-enabled/ 안에서 'location /taxbaik'를 정의한 파일을 찾을 수 없음" >&2
|
||||
2026-07-04T11:52:28.7807034Z echo " sites-available/에 파일을 수정해도 sites-enabled에 심볼릭 링크되어 있지 않으면 반영되지 않는다." >&2
|
||||
2026-07-04T11:52:28.7807140Z exit 1
|
||||
2026-07-04T11:52:28.7807210Z fi
|
||||
2026-07-04T11:52:28.7807275Z echo "실제 로드되는 설정 파일: \$NGINX_CONF"
|
||||
2026-07-04T11:52:28.7807354Z
|
||||
2026-07-04T11:52:28.7807443Z # 불변식: '/'와 '/taxbaik' location 모두 반드시 127.0.0.1:5001 (TaxBaik.Proxy)을
|
||||
2026-07-04T11:52:28.7807530Z # 가리켜야 한다. 5003/5004를 직접 하드코딩하면 Green-Blue 포트 전환 시
|
||||
2026-07-04T11:52:28.7807620Z # 죽은 포트를 가리키게 되어 502/404가 발생한다 (실제 발생했던 장애).
|
||||
2026-07-04T11:52:28.7807706Z if grep -E "proxy_pass\s+http://127\.0\.0\.1:500[34]" "\$NGINX_CONF" > /dev/null 2>&1; then
|
||||
2026-07-04T11:52:28.7807801Z echo "❌ FATAL: \$NGINX_CONF 가 포트 5003/5004를 직접 참조함 (Green-Blue 전환 시 502 발생)" >&2
|
||||
2026-07-04T11:52:28.7807898Z echo " 수정: sudo sed -i 's|127.0.0.1:500[34]|127.0.0.1:5001|g' \$NGINX_CONF && sudo nginx -t && sudo systemctl reload nginx" >&2
|
||||
2026-07-04T11:52:28.7807998Z exit 1
|
||||
2026-07-04T11:52:28.7808077Z fi
|
||||
2026-07-04T11:52:28.7808142Z
|
||||
2026-07-04T11:52:28.7808205Z # proxy_pass에 URI(끝 슬래시)가 있으면 nginx가 요청 경로를 재작성하며,
|
||||
2026-07-04T11:52:28.7808285Z # location 접두사와 슬래시 개수가 안 맞으면 백엔드로 이중 슬래시(//)가
|
||||
2026-07-04T11:52:28.7808367Z # 전달되어 404가 발생한다 (실제 발생했던 장애). 접두사 location에서는
|
||||
2026-07-04T11:52:28.7808456Z # proxy_pass에 URI를 붙이지 않는다.
|
||||
2026-07-04T11:52:28.7808539Z if grep -E "location\s+/taxbaik\s*\{" -A 1 "\$NGINX_CONF" | grep -qE "proxy_pass\s+http://127\.0\.0\.1:5001/;"; then
|
||||
2026-07-04T11:52:28.7808645Z echo "❌ FATAL: location /taxbaik 의 proxy_pass 에 불필요한 trailing slash가 있음 (이중 슬래시로 인한 404 위험)" >&2
|
||||
2026-07-04T11:52:28.7808737Z exit 1
|
||||
2026-07-04T11:52:28.7808805Z fi
|
||||
2026-07-04T11:52:28.7808870Z
|
||||
2026-07-04T11:52:28.7808940Z echo "✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)"
|
||||
2026-07-04T11:52:28.7809025Z
|
||||
2026-07-04T11:52:28.7809085Z echo "--- [5/5] 헬스 체크 (최대 60초) ---"
|
||||
2026-07-04T11:52:28.7809184Z ATTEMPTS=20
|
||||
2026-07-04T11:52:28.7809251Z for i in \$(seq 1 \$ATTEMPTS); do
|
||||
2026-07-04T11:52:28.7809323Z STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/healthz 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7809421Z if [ "\$STATUS" = "200" ]; then
|
||||
2026-07-04T11:52:28.7809497Z echo "✓ [1/6] 헬스 체크 완료"
|
||||
2026-07-04T11:52:28.7809569Z
|
||||
2026-07-04T11:52:28.7809636Z # 검증 1: 메인 페이지 로드. curl -L + -w 는 리다이렉트 체인의 상태코드를
|
||||
2026-07-04T11:52:28.7809727Z # 이어붙이므로, 첫 응답 코드만 받아 200/3xx를 허용한다.
|
||||
2026-07-04T11:52:28.7809808Z MAIN_STATUS=\$(curl -fsS -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/ 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7809892Z if ! printf '%s' "\$MAIN_STATUS" | grep -Eq '^(200|301|302|307|308)$'; then
|
||||
2026-07-04T11:52:28.7809974Z echo "❌ 메인 페이지 로드 실패 (상태: \$MAIN_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7810054Z exit 1
|
||||
2026-07-04T11:52:28.7810122Z fi
|
||||
2026-07-04T11:52:28.7810188Z echo "✓ [2/6] 메인 페이지 로드 완료"
|
||||
2026-07-04T11:52:28.7810272Z
|
||||
2026-07-04T11:52:28.7810331Z # 검증 2: CSS 파일 로드
|
||||
2026-07-04T11:52:28.7810402Z CSS_STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/css/admin.css 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7810490Z if [ "\$CSS_STATUS" != "200" ]; then
|
||||
2026-07-04T11:52:28.7810561Z echo "❌ CSS 파일 로드 실패 (상태: \$CSS_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7810639Z exit 1
|
||||
2026-07-04T11:52:28.7810704Z fi
|
||||
2026-07-04T11:52:28.7810774Z echo "✓ [3/6] CSS 파일 로드 완료"
|
||||
2026-07-04T11:52:28.7810845Z
|
||||
2026-07-04T11:52:28.7810905Z # 검증 3: 버전 정보. 파일 존재만 보면 5001이 잘못된 구 프로세스를
|
||||
2026-07-04T11:52:28.7810994Z # 가리키는 장애를 놓치므로, HTTP 응답이 이번 커밋인지 확인한다.
|
||||
2026-07-04T11:52:28.7811074Z if [ ! -s "\$DEPLOY_DIR/wwwroot/version.json" ]; then
|
||||
2026-07-04T11:52:28.7811150Z echo "❌ version.json 누락" >&2
|
||||
2026-07-04T11:52:28.7811226Z exit 1
|
||||
2026-07-04T11:52:28.7811298Z fi
|
||||
2026-07-04T11:52:28.7811362Z VERSION_JSON=\$(curl -fsS http://127.0.0.1:5001/taxbaik/version.json 2>/dev/null || true)
|
||||
2026-07-04T11:52:28.7811465Z if ! printf '%s' "\$VERSION_JSON" | grep -q "\"version\": \"\$COMMIT\""; then
|
||||
2026-07-04T11:52:28.7811544Z echo "❌ 5001 프록시가 이번 배포 버전을 제공하지 않음" >&2
|
||||
2026-07-04T11:52:28.7811624Z echo " expected: \$COMMIT" >&2
|
||||
2026-07-04T11:52:28.7811697Z echo " actual: \$VERSION_JSON" >&2
|
||||
2026-07-04T11:52:28.7811767Z echo " 확인: 5001 포트가 TaxBaik.Proxy.dll인지, /home/***/taxbaik_port가 새 포트인지 점검" >&2
|
||||
2026-07-04T11:52:28.7811873Z exit 1
|
||||
2026-07-04T11:52:28.7811942Z fi
|
||||
2026-07-04T11:52:28.7812006Z echo "✓ [4/6] 버전 정보 확인 완료"
|
||||
2026-07-04T11:52:28.7812079Z
|
||||
2026-07-04T11:52:28.7812139Z # 검증 4: 5001 프록시 확인
|
||||
2026-07-04T11:52:28.7812212Z if ! ss -tlnp | grep -q ':5001 '; then
|
||||
2026-07-04T11:52:28.7812288Z echo "❌ 5001 프록시가 실행 중이 아님" >&2
|
||||
2026-07-04T11:52:28.7812370Z exit 1
|
||||
2026-07-04T11:52:28.7812432Z fi
|
||||
2026-07-04T11:52:28.7812494Z echo "✓ [5/6] 5001 프록시 확인 완료"
|
||||
2026-07-04T11:52:28.7812568Z
|
||||
2026-07-04T11:52:28.7812626Z # 검증 5: 관리자 로그인 페이지
|
||||
2026-07-04T11:52:28.7812707Z LOGIN_STATUS=\$(curl -fsSL -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/admin/login 2>/dev/null || echo "000")
|
||||
2026-07-04T11:52:28.7812794Z if [ "\$LOGIN_STATUS" != "200" ]; then
|
||||
2026-07-04T11:52:28.7812876Z echo "❌ 관리자 로그인 페이지 로드 실패 (상태: \$LOGIN_STATUS)" >&2
|
||||
2026-07-04T11:52:28.7812957Z exit 1
|
||||
2026-07-04T11:52:28.7813023Z fi
|
||||
2026-07-04T11:52:28.7813089Z echo "✓ [6/6] 관리자 페이지 로드 완료"
|
||||
2026-07-04T11:52:28.7813169Z
|
||||
2026-07-04T11:52:28.7813240Z echo "✓ 서비스 정상 (시도 \$i/\$ATTEMPTS)"
|
||||
2026-07-04T11:52:28.7813316Z # 구 배포 디렉토리 정리 (최근 5개 보존)
|
||||
2026-07-04T11:52:28.7813404Z ls -1dt \$DEPLOY_HOME/deployments/taxbaik_* 2>/dev/null \
|
||||
2026-07-04T11:52:28.7813486Z | tail -n +6 | xargs rm -rf 2>/dev/null || true
|
||||
2026-07-04T11:52:28.7813567Z exit 0
|
||||
2026-07-04T11:52:28.7813640Z fi
|
||||
2026-07-04T11:52:28.7813712Z if [ "\$i" -eq "\$ATTEMPTS" ]; then
|
||||
2026-07-04T11:52:28.7813789Z echo "=== FATAL: 서비스가 \$ATTEMPTS회 시도 후에도 응답하지 않음 ===" >&2
|
||||
2026-07-04T11:52:28.7813878Z echo "--- 5001 listener ---" >&2
|
||||
2026-07-04T11:52:28.7813956Z ss -tlnp 2>/dev/null | grep ':5001 ' >&2 || true
|
||||
2026-07-04T11:52:28.7814035Z echo "--- active port file ---" >&2
|
||||
2026-07-04T11:52:28.7814107Z cat "\$DEPLOY_HOME/taxbaik_port" >&2 || true
|
||||
2026-07-04T11:52:28.7814361Z echo "--- 신규 앱 로그 ---" >&2
|
||||
2026-07-04T11:52:28.7814436Z ACTIVE_PORT=\$(cat "\$DEPLOY_HOME/taxbaik_port" 2>/dev/null | tr -d '[:space:]' || true)
|
||||
2026-07-04T11:52:28.7814523Z if [ -n "\$ACTIVE_PORT" ] && [ -s "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" ]; then
|
||||
2026-07-04T11:52:28.7814605Z tail -n 80 "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" >&2
|
||||
2026-07-04T11:52:28.7814689Z else
|
||||
2026-07-04T11:52:28.7814756Z ls -la "\$DEPLOY_DIR" >&2 || true
|
||||
2026-07-04T11:52:28.7814825Z fi
|
||||
2026-07-04T11:52:28.7814895Z echo "--- proxy 로그 ---" >&2
|
||||
2026-07-04T11:52:28.7814969Z tail -n 80 "\$DEPLOY_HOME/taxbaik_proxy.log" >&2 || true
|
||||
2026-07-04T11:52:28.7815042Z exit 1
|
||||
2026-07-04T11:52:28.7815107Z fi
|
||||
2026-07-04T11:52:28.7815176Z echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)"
|
||||
2026-07-04T11:52:28.7815261Z sleep 3
|
||||
2026-07-04T11:52:28.7815328Z done
|
||||
2026-07-04T11:52:28.7815389Z REMOTE
|
||||
2026-07-04T11:52:28.7815451Z
|
||||
2026-07-04T11:52:28.7815507Z echo "✓ 배포 완료: taxbaik_${TIMESTAMP} @ $DEPLOY_HOST"
|
||||
2026-07-04T11:52:28.7815586Z
|
||||
2026-07-04T11:52:28.7815660Z echo "--- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---"
|
||||
2026-07-04T11:52:28.7815753Z ROOT_URL="https://www.taxbaik.com/" \
|
||||
2026-07-04T11:52:28.7815826Z ADMIN_URL="https://www.taxbaik.com/taxbaik/admin/login" \
|
||||
2026-07-04T11:52:28.7815904Z PUBLIC_MARKER="백원숙 세무회계" \
|
||||
2026-07-04T11:52:28.7815979Z PUBLIC_FORBIDDEN="관리자" \
|
||||
2026-07-04T11:52:28.7816050Z ADMIN_MARKER="TaxBaik Admin" \
|
||||
2026-07-04T11:52:28.7817569Z MAX_RETRIES=3 \
|
||||
2026-07-04T11:52:28.7817668Z RETRY_SLEEP_SECONDS=5 \
|
||||
2026-07-04T11:52:28.7817749Z bash ./scripts/taxbaik-smoke.sh
|
||||
2026-07-04T11:52:28.7817825Z echo "✓ 실제 공개 도메인 전체 정상"
|
||||
2026-07-04T11:52:28.7817906Z
|
||||
2026-07-04T11:52:28.7817969Z send_telegram "✅ <b>TaxBaik 배포 완료</b>
|
||||
2026-07-04T11:52:28.7818045Z
|
||||
2026-07-04T11:52:28.7818272Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T11:52:28.7818362Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T11:52:28.7818438Z 대상: <code>${DEPLOY_HOST}</code>
|
||||
2026-07-04T11:52:28.7818512Z 채널: <code>${TELEGRAM_CHAT_ID}</code>"
|
||||
2026-07-04T11:52:28.7818592Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T11:52:28.7818689Z ::endgroup::
|
||||
2026-07-04T11:52:28.9489242Z === Deploying TaxBaik e1f3fc5 (20260704_205228) ===
|
||||
2026-07-04T11:52:30.4444950Z --- [1/5] 압축 해제 ---
|
||||
2026-07-04T11:52:30.7457779Z --- [2/5] 운영 설정 검증 ---
|
||||
2026-07-04T11:52:30.7458350Z --- [3/5] 마이그레이션 사전 검증 ---
|
||||
2026-07-04T11:52:31.0393215Z Migration dry-run validation passed.
|
||||
2026-07-04T11:52:31.0395081Z --- [4/5] Green-Blue 배포 실행 ---
|
||||
2026-07-04T11:52:31.0513805Z ===== 🚀 TaxBaik Green/Blue Deployment Script =====
|
||||
2026-07-04T11:52:31.1068289Z Active Port: 5003
|
||||
2026-07-04T11:52:31.1068779Z Target Port: 5004
|
||||
2026-07-04T11:52:31.1068908Z Deploy Directory: /home/***/deployments/taxbaik_20260704_205228
|
||||
2026-07-04T11:52:31.3787302Z === Starting New App on Port 5004 ===
|
||||
2026-07-04T11:52:33.5017487Z === Health Checking Port 5004 ===
|
||||
2026-07-04T11:52:33.5528142Z Waiting for health check... (1/20, Status: 000000)
|
||||
2026-07-04T11:52:35.8895619Z ✓ Health check passed on port 5004 (Attempt 2/20)
|
||||
2026-07-04T11:52:35.8896295Z === Switching Traffic to Port 5004 ===
|
||||
2026-07-04T11:52:35.8937475Z ✓ Traffic routed to 5004 (via TaxBaik.Proxy on 5001)
|
||||
2026-07-04T11:52:35.8980173Z === Stopping Old App on Port 5003 ===
|
||||
2026-07-04T11:52:35.9294467Z Killing old process PID: 3970431
|
||||
2026-07-04T11:52:35.9294887Z ✓ Old process terminated
|
||||
2026-07-04T11:52:35.9295040Z === Cleaning Up Old Deployments ===
|
||||
2026-07-04T11:52:35.9720244Z ✓ Cleanup completed
|
||||
2026-07-04T11:52:35.9720680Z ===== ✅ Green/Blue Deployment Completed Successfully =====
|
||||
2026-07-04T11:52:35.9720931Z --- [4.5/5] Nginx 설정 검증 ---
|
||||
2026-07-04T11:52:35.9721040Z 실제 로드되는 설정 파일: /etc/nginx/sites-available/taxbaik-domains.conf
|
||||
2026-07-04T11:52:36.1177600Z ✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)
|
||||
2026-07-04T11:52:36.1178058Z --- [5/5] 헬스 체크 (최대 60초) ---
|
||||
2026-07-04T11:52:36.8462330Z ✓ [1/6] 헬스 체크 완료
|
||||
2026-07-04T11:52:37.3198761Z ✓ [2/6] 메인 페이지 로드 완료
|
||||
2026-07-04T11:52:37.3622167Z ✓ [3/6] CSS 파일 로드 완료
|
||||
2026-07-04T11:52:37.3842090Z ✓ [4/6] 버전 정보 확인 완료
|
||||
2026-07-04T11:52:37.4009776Z ✓ [5/6] 5001 프록시 확인 완료
|
||||
2026-07-04T11:52:37.7008335Z ✓ [6/6] 관리자 페이지 로드 완료
|
||||
2026-07-04T11:52:37.7009552Z ✓ 서비스 정상 (시도 1/20)
|
||||
2026-07-04T11:52:37.7095915Z ✓ 배포 완료: taxbaik_20260704_205228 @ ***
|
||||
2026-07-04T11:52:37.7096655Z --- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---
|
||||
2026-07-04T11:52:38.4168297Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:39.0288516Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:39.4652055Z retrying... (1/3)
|
||||
2026-07-04T11:52:39.4652895Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:44.9397821Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:45.4377901Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:45.8309474Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:45.8311857Z retrying... (2/3)
|
||||
2026-07-04T11:52:51.3448083Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T11:52:51.8138236Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T11:52:52.2580780Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: TaxBaik Admin
|
||||
2026-07-04T11:52:52.2581412Z ✗ smoke verification failed
|
||||
2026-07-04T11:52:52.6357273Z ❌ Failure - Main Deploy & verify on server
|
||||
2026-07-04T11:52:52.6665921Z exitcode '1': failure
|
||||
2026-07-04T11:52:52.7268833Z evaluating expression 'success()'
|
||||
2026-07-04T11:52:52.7269374Z expression 'success()' evaluated to 'false'
|
||||
2026-07-04T11:52:52.7273889Z Skipping step 'Setup .NET' due to 'success()'
|
||||
2026-07-04T11:52:52.7568989Z evaluating expression 'always()'
|
||||
2026-07-04T11:52:52.7569542Z expression 'always()' evaluated to 'true'
|
||||
2026-07-04T11:52:52.7569674Z ⭐ Run Post Checkout code
|
||||
2026-07-04T11:52:52.7569861Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T11:52:52.7570008Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T11:52:52.7570113Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T11:52:52.7570212Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T11:52:52.7570293Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T11:52:52.7570399Z Extracting content to '/var/run/act'
|
||||
+937
@@ -0,0 +1,937 @@
|
||||
2026-07-04T12:49:21.1083596Z hz-prod-runner-3(version:v0.6.1) received task 1550 of job build-and-deploy, be triggered by event: push
|
||||
2026-07-04T12:49:21.1123461Z workflow prepared
|
||||
2026-07-04T12:49:21.1124291Z evaluating expression 'success()'
|
||||
2026-07-04T12:49:21.1125104Z expression 'success()' evaluated to 'true'
|
||||
2026-07-04T12:49:21.1125339Z 🚀 Start image=docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T12:49:21.1227263Z 🐳 docker pull image=docker.gitea.com/runner-images:ubuntu-latest platform= username= forcePull=false
|
||||
2026-07-04T12:49:21.1227465Z 🐳 docker pull docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T12:49:21.1502476Z Image exists? true
|
||||
2026-07-04T12:49:21.2087073Z 🐳 docker create image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T12:49:21.3084981Z Created container name=GITEA-ACTIONS-TASK-1550-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-d1b621a7a13ad682fe29533e6a28b6835590d0898313b1b9fc5be41b5870455c id=7fdc784e6b95f4a2f3a7139414bcbaeff9754c0efd147950d7f0357c1b99e6c6 from image docker.gitea.com/runner-images:ubuntu-latest (platform: )
|
||||
2026-07-04T12:49:21.3085729Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-07-04T12:49:21.3085886Z 🐳 docker run image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T12:49:21.3086611Z Starting container: 7fdc784e6b95f4a2f3a7139414bcbaeff9754c0efd147950d7f0357c1b99e6c6
|
||||
2026-07-04T12:49:21.4654984Z Started container: 7fdc784e6b95f4a2f3a7139414bcbaeff9754c0efd147950d7f0357c1b99e6c6
|
||||
2026-07-04T12:49:21.5734362Z Writing entry to tarball workflow/event.json len:5621
|
||||
2026-07-04T12:49:21.5735278Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T12:49:21.5735491Z Extracting content to '/var/run/act/'
|
||||
2026-07-04T12:49:21.5964245Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-07-04T12:49:21.5964651Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T12:49:22.5232989Z Unable to pull refs/heads/v4: non-fast-forward update
|
||||
2026-07-04T12:49:22.5233439Z Cloned https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T12:49:22.5369401Z Checked out v4
|
||||
2026-07-04T12:49:22.5461867Z ☁ git clone 'https://github.com/actions/setup-dotnet' # ref=v4
|
||||
2026-07-04T12:49:22.5462260Z cloning https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T12:49:23.1436838Z Unable to pull refs/heads/v4: worktree contains unstaged changes
|
||||
2026-07-04T12:49:23.1437339Z Cloned https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T12:49:23.1569954Z Checked out v4
|
||||
2026-07-04T12:49:23.1781704Z evaluating expression ''
|
||||
2026-07-04T12:49:23.1782188Z expression '' evaluated to 'true'
|
||||
2026-07-04T12:49:23.1782304Z ⭐ Run Main Checkout code
|
||||
2026-07-04T12:49:23.1782488Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T12:49:23.1782639Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T12:49:23.1782757Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T12:49:23.1782863Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T12:49:23.1782956Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T12:49:23.1783048Z Extracting content to '/var/run/act'
|
||||
2026-07-04T12:49:23.1829051Z ::group::Run Checkout code
|
||||
2026-07-04T12:49:23.6519171Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-07-04T12:49:23.6522622Z Syncing repository: ***/taxbaik
|
||||
2026-07-04T12:49:23.6526573Z ::group::Getting Git version info
|
||||
2026-07-04T12:49:23.6527380Z Working directory is '/workspace/***/taxbaik'
|
||||
2026-07-04T12:49:23.6565904Z [command]/usr/bin/git version
|
||||
2026-07-04T12:49:23.6603817Z git version 2.54.0
|
||||
2026-07-04T12:49:23.6627189Z ::endgroup::
|
||||
2026-07-04T12:49:23.6642333Z Temporarily overriding HOME='/tmp/fee36d59-c0cf-4401-bc9a-d41af1fdbe1b' before making global git config changes
|
||||
2026-07-04T12:49:23.6644026Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T12:49:23.6648194Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T12:49:23.6681379Z Deleting the contents of '/workspace/***/taxbaik'
|
||||
2026-07-04T12:49:23.6686213Z ::group::Initializing the repository
|
||||
2026-07-04T12:49:23.6689751Z [command]/usr/bin/git init /workspace/***/taxbaik
|
||||
2026-07-04T12:49:23.6772415Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-07-04T12:49:23.6772830Z hint: will change to "main" in Git 3.0. To configure the initial branch name
|
||||
2026-07-04T12:49:23.6773287Z hint: to use in all of your new repositories, which will suppress this warning,
|
||||
2026-07-04T12:49:23.6773438Z hint: call:
|
||||
2026-07-04T12:49:23.6773518Z hint:
|
||||
2026-07-04T12:49:23.6773598Z hint: git config --global init.defaultBranch <name>
|
||||
2026-07-04T12:49:23.6773696Z hint:
|
||||
2026-07-04T12:49:23.6777666Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-07-04T12:49:23.6777914Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-07-04T12:49:23.6778021Z hint:
|
||||
2026-07-04T12:49:23.6778115Z hint: git branch -m <name>
|
||||
2026-07-04T12:49:23.6778197Z hint:
|
||||
2026-07-04T12:49:23.6778269Z hint: Disable this message with "git config set advice.defaultBranchName false"
|
||||
2026-07-04T12:49:23.6779297Z Initialized empty Git repository in /workspace/***/taxbaik/.git/
|
||||
2026-07-04T12:49:23.6794841Z [command]/usr/bin/git remote add origin http://gitea:3000/***/taxbaik
|
||||
2026-07-04T12:49:23.6829189Z ::endgroup::
|
||||
2026-07-04T12:49:23.6829674Z ::group::Disabling automatic garbage collection
|
||||
2026-07-04T12:49:23.6835147Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-07-04T12:49:23.6860980Z ::endgroup::
|
||||
2026-07-04T12:49:23.6861272Z ::group::Setting up auth
|
||||
2026-07-04T12:49:23.6870622Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T12:49:23.6913960Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T12:49:23.7142806Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T12:49:23.7169599Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T12:49:23.7403942Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T12:49:23.7444452Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T12:49:23.7675767Z [command]/usr/bin/git config --local http.http://gitea:3000/.extraheader AUTHORIZATION: basic ***
|
||||
2026-07-04T12:49:23.7709656Z ::endgroup::
|
||||
2026-07-04T12:49:23.7709961Z ::group::Fetching the repository
|
||||
2026-07-04T12:49:23.7717271Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +dc86ccfe35d48fec886729841aaf77d2323ffb81:refs/remotes/origin/master
|
||||
2026-07-04T12:49:25.3253215Z From http://gitea:3000/***/taxbaik
|
||||
2026-07-04T12:49:25.3253890Z * [new ref] dc86ccfe35d48fec886729841aaf77d2323ffb81 -> origin/master
|
||||
2026-07-04T12:49:25.3282693Z ::endgroup::
|
||||
2026-07-04T12:49:25.3282925Z ::group::Determining the checkout info
|
||||
2026-07-04T12:49:25.3286679Z ::endgroup::
|
||||
2026-07-04T12:49:25.3292353Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-07-04T12:49:25.3338153Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-07-04T12:49:25.3366870Z ::group::Checking out the ref
|
||||
2026-07-04T12:49:25.3370429Z [command]/usr/bin/git checkout --progress --force -B master refs/remotes/origin/master
|
||||
2026-07-04T12:49:25.8277722Z Reset branch 'master'
|
||||
2026-07-04T12:49:25.8278332Z branch 'master' set up to track 'origin/master'.
|
||||
2026-07-04T12:49:25.8290141Z ::endgroup::
|
||||
2026-07-04T12:49:25.8321715Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-07-04T12:49:25.8341618Z dc86ccfe35d48fec886729841aaf77d2323ffb81
|
||||
2026-07-04T12:49:25.8359179Z ::remove-matcher owner=checkout-git::
|
||||
2026-07-04T12:49:25.8473361Z ::endgroup::
|
||||
2026-07-04T12:49:25.8925201Z ::group::Run Setup .NET
|
||||
2026-07-04T12:49:25.8925719Z with:
|
||||
2026-07-04T12:49:25.8925850Z dotnet-version: 10.0
|
||||
2026-07-04T12:49:26.4364417Z (node:142) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
|
||||
2026-07-04T12:49:26.4365135Z (Use `node --trace-deprecation ...` to show where the warning was created)
|
||||
2026-07-04T12:49:26.4415455Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS
|
||||
2026-07-04T12:49:26.7591141Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T12:49:26.9823877Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz size is 36606251 bytes.
|
||||
2026-07-04T12:49:26.9830977Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T12:49:27.7850437Z dotnet-install: Downloaded file size is 36606251 bytes.
|
||||
2026-07-04T12:49:27.7851130Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T12:49:27.8443797Z dotnet-install: Installed version is 10.0.9
|
||||
2026-07-04T12:49:27.8494627Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T12:49:27.8495003Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T12:49:27.8495163Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T12:49:27.8495299Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T12:49:27.8526885Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --channel 10.0
|
||||
2026-07-04T12:49:28.1718954Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T12:49:28.9847774Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz size is 235086718 bytes.
|
||||
2026-07-04T12:49:28.9854648Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T12:49:34.5345102Z dotnet-install: Downloaded file size is 235086718 bytes.
|
||||
2026-07-04T12:49:34.5347250Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T12:49:34.7378875Z dotnet-install: Installed version is 10.0.301
|
||||
2026-07-04T12:49:34.7438030Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T12:49:34.7441902Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T12:49:34.7442410Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T12:49:34.7442569Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T12:49:34.7473572Z ##[add-matcher]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/.github/csc.json
|
||||
2026-07-04T12:49:34.7575673Z ::endgroup::
|
||||
2026-07-04T12:49:34.8690239Z ::group::Run dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T12:49:34.8690735Z dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T12:49:34.8691061Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:49:34.8691248Z ::endgroup::
|
||||
2026-07-04T12:49:35.0741950Z
|
||||
2026-07-04T12:49:35.0749035Z Welcome to .NET 10.0!
|
||||
2026-07-04T12:49:35.0749790Z ---------------------
|
||||
2026-07-04T12:49:35.0750163Z SDK Version: 10.0.301
|
||||
2026-07-04T12:49:35.0750267Z
|
||||
2026-07-04T12:49:35.0750367Z Telemetry
|
||||
2026-07-04T12:49:35.0750443Z ---------
|
||||
2026-07-04T12:49:35.0750707Z The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
|
||||
2026-07-04T12:49:35.0751163Z
|
||||
2026-07-04T12:49:35.0751291Z Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
|
||||
2026-07-04T12:49:35.6068528Z
|
||||
2026-07-04T12:49:35.6070150Z ----------------
|
||||
2026-07-04T12:49:35.6070372Z Installed an ASP.NET Core HTTPS development certificate.
|
||||
2026-07-04T12:49:35.6072186Z To trust the certificate, run 'dotnet dev-certs https --trust'
|
||||
2026-07-04T12:49:35.6076372Z Learn about HTTPS: https://aka.ms/dotnet-https
|
||||
2026-07-04T12:49:35.6076628Z
|
||||
2026-07-04T12:49:35.6076758Z ----------------
|
||||
2026-07-04T12:49:35.6076846Z Write your first app: https://aka.ms/dotnet-hello-world
|
||||
2026-07-04T12:49:35.6076954Z Find out what's new: https://aka.ms/dotnet-whats-new
|
||||
2026-07-04T12:49:35.6077049Z Explore documentation: https://aka.ms/dotnet-docs
|
||||
2026-07-04T12:49:35.6077169Z Report issues and find source on GitHub: https://github.com/dotnet/core
|
||||
2026-07-04T12:49:35.6077278Z Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
|
||||
2026-07-04T12:49:35.6077474Z --------------------------------------------------------------------------------------
|
||||
2026-07-04T12:49:36.5161335Z Determining projects to restore...
|
||||
2026-07-04T12:49:37.2639927Z Restored /workspace/***/taxbaik/src/TaxBaik.Domain/TaxBaik.Domain.csproj (in 114 ms).
|
||||
2026-07-04T12:49:38.6108539Z Restored /workspace/***/taxbaik/src/TaxBaik.Application/TaxBaik.Application.csproj (in 1.5 sec).
|
||||
2026-07-04T12:49:39.8969495Z Restored /workspace/***/taxbaik/src/TaxBaik.Web/TaxBaik.Web.csproj (in 1.27 sec).
|
||||
2026-07-04T12:49:41.1437758Z Restored /workspace/***/taxbaik/src/TaxBaik.Application.Tests/TaxBaik.Application.Tests.csproj (in 3.86 sec).
|
||||
2026-07-04T12:49:41.2503876Z Restored /workspace/***/taxbaik/src/TaxBaik.Infrastructure/TaxBaik.Infrastructure.csproj (in 30 ms).
|
||||
2026-07-04T12:49:41.8107150Z Restored /workspace/***/taxbaik/src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj (in 1.74 sec).
|
||||
2026-07-04T12:49:41.9707509Z ::group::Run dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:49:41.9707880Z dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:49:41.9708017Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:49:41.9708125Z ::endgroup::
|
||||
2026-07-04T12:49:45.3296980Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:49:47.7710543Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:49:48.6747737Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T12:50:08.6007977Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:50:08.6107202Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/wwwroot
|
||||
2026-07-04T12:50:19.3402859Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T12:50:20.2847876Z TaxBaik.Application.Tests -> /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll
|
||||
2026-07-04T12:50:20.3269626Z
|
||||
2026-07-04T12:50:20.3279927Z Build succeeded.
|
||||
2026-07-04T12:50:20.3283223Z 0 Warning(s)
|
||||
2026-07-04T12:50:20.3284820Z 0 Error(s)
|
||||
2026-07-04T12:50:20.3287249Z
|
||||
2026-07-04T12:50:20.3288831Z Time Elapsed 00:00:38.09
|
||||
2026-07-04T12:50:20.4838413Z ::group::Run dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T12:50:20.4839066Z dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T12:50:20.4839241Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:50:20.4839359Z ::endgroup::
|
||||
2026-07-04T12:50:23.9713693Z Test run for /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll (.NETCoreApp,Version=v10.0)
|
||||
2026-07-04T12:50:24.7096642Z A total of 1 test files matched the specified pattern.
|
||||
2026-07-04T12:50:30.0285340Z
|
||||
2026-07-04T12:50:30.0898162Z Passed! - Failed: 0, Passed: 26, Skipped: 0, Total: 26, Duration: 990 ms - TaxBaik.Application.Tests.dll (net10.0)
|
||||
2026-07-04T12:50:30.3809977Z ::group::Run set -e
|
||||
2026-07-04T12:50:30.3810322Z set -e
|
||||
2026-07-04T12:50:30.3810444Z mkdir -p ./publish-logs
|
||||
2026-07-04T12:50:30.3810532Z web_log="./publish-logs/publish-web.log"
|
||||
2026-07-04T12:50:30.3810628Z start=$(date +%s)
|
||||
2026-07-04T12:50:30.3810710Z # Web.Client needs a Release static-web-assets manifest for Web publish.
|
||||
2026-07-04T12:50:30.3810972Z # Build it explicitly so publish can reuse the prepared outputs.
|
||||
2026-07-04T12:50:30.3811068Z dotnet build src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:50:30.3811171Z # Build the Web host in Release as well so publish has the same inputs
|
||||
2026-07-04T12:50:30.3811261Z # the server uses in production.
|
||||
2026-07-04T12:50:30.3811343Z dotnet build src/TaxBaik.Web/TaxBaik.Web.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:50:30.3811442Z echo "--- Web.Client Release artifacts ---"
|
||||
2026-07-04T12:50:30.3811529Z ls -la src/TaxBaik.Web.Client/bin/Release/net10.0 || true
|
||||
2026-07-04T12:50:30.3811622Z ls -la src/TaxBaik.Web.Client/obj/Release/net10.0 || true
|
||||
2026-07-04T12:50:30.3811701Z if ! dotnet publish src/TaxBaik.Web/ \
|
||||
2026-07-04T12:50:30.3811809Z -c Release \
|
||||
2026-07-04T12:50:30.3811886Z -o ./publish \
|
||||
2026-07-04T12:50:30.3811968Z --no-restore \
|
||||
2026-07-04T12:50:30.3812042Z -p:SelfContained=false \
|
||||
2026-07-04T12:50:30.3812116Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T12:50:30.3812197Z -p:PerformanceSummary=true \
|
||||
2026-07-04T12:50:30.3812269Z -clp:Summary \
|
||||
2026-07-04T12:50:30.3812338Z -bl:"./publish-logs/publish-web.binlog" >"$web_log" 2>&1; then
|
||||
2026-07-04T12:50:30.3812451Z echo "=== Publish Web failed; tailing log ==="
|
||||
2026-07-04T12:50:30.3812603Z tail -n 120 "$web_log" || true
|
||||
2026-07-04T12:50:30.3812747Z exit 1
|
||||
2026-07-04T12:50:30.3812836Z fi
|
||||
2026-07-04T12:50:30.3812917Z end=$(date +%s)
|
||||
2026-07-04T12:50:30.3813009Z echo "✓ Publish Web elapsed: $((end - start))s"
|
||||
2026-07-04T12:50:30.3813102Z ls -lh ./publish-logs/publish-web.binlog
|
||||
2026-07-04T12:50:30.3813186Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:50:30.3813283Z ::endgroup::
|
||||
2026-07-04T12:50:32.0488223Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:50:32.3508048Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:50:44.4958268Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:50:44.4978125Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T12:50:44.5536984Z
|
||||
2026-07-04T12:50:44.5540603Z Build succeeded.
|
||||
2026-07-04T12:50:44.5541781Z 0 Warning(s)
|
||||
2026-07-04T12:50:44.5557450Z 0 Error(s)
|
||||
2026-07-04T12:50:44.5559019Z
|
||||
2026-07-04T12:50:44.5567098Z Time Elapsed 00:00:13.64
|
||||
2026-07-04T12:50:46.1657100Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:50:46.2447793Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T12:50:46.5259148Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:50:48.5388949Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:50:48.5397206Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T12:50:51.6865226Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T12:50:51.7325224Z
|
||||
2026-07-04T12:50:51.7335278Z Build succeeded.
|
||||
2026-07-04T12:50:51.7356860Z 0 Warning(s)
|
||||
2026-07-04T12:50:51.7360102Z 0 Error(s)
|
||||
2026-07-04T12:50:51.7364579Z
|
||||
2026-07-04T12:50:51.7376644Z Time Elapsed 00:00:06.73
|
||||
2026-07-04T12:50:51.7670469Z --- Web.Client Release artifacts ---
|
||||
2026-07-04T12:50:51.7699768Z total 42056
|
||||
2026-07-04T12:50:51.7700066Z drwxr-xr-x 3 root root 20480 Jul 4 12:50 .
|
||||
2026-07-04T12:50:51.7700191Z drwxr-xr-x 3 root root 4096 Jul 4 12:50 ..
|
||||
2026-07-04T12:50:51.7700291Z -rwxr--r-- 1 root root 55632 May 20 20:19 Microsoft.AspNetCore.Authorization.dll
|
||||
2026-07-04T12:50:51.7700420Z -rwxr--r-- 1 root root 34128 May 20 20:19 Microsoft.AspNetCore.Components.Authorization.dll
|
||||
2026-07-04T12:50:51.7700590Z -rwxr--r-- 1 root root 47952 May 20 20:19 Microsoft.AspNetCore.Components.Forms.dll
|
||||
2026-07-04T12:50:51.7700682Z -rwxr--r-- 1 root root 189264 May 20 20:19 Microsoft.AspNetCore.Components.Web.dll
|
||||
2026-07-04T12:50:51.7700950Z -rwxr--r-- 1 root root 166736 May 20 20:20 Microsoft.AspNetCore.Components.WebAssembly.dll
|
||||
2026-07-04T12:50:51.7701048Z -rwxr--r-- 1 root root 399184 May 20 20:19 Microsoft.AspNetCore.Components.dll
|
||||
2026-07-04T12:50:51.7701131Z -rwxr--r-- 1 root root 16208 May 20 20:18 Microsoft.AspNetCore.Metadata.dll
|
||||
2026-07-04T12:50:51.7701220Z -rwxr--r-- 1 root root 19248 Dec 12 2025 Microsoft.Bcl.Cryptography.dll
|
||||
2026-07-04T12:50:51.7701312Z -rwxr--r-- 1 root root 311632 May 20 18:30 Microsoft.CSharp.dll
|
||||
2026-07-04T12:50:51.7701416Z -rwxr--r-- 1 root root 38192 Oct 24 2025 Microsoft.Extensions.Caching.Abstractions.dll
|
||||
2026-07-04T12:50:51.7701508Z -rwxr--r-- 1 root root 28496 May 20 19:29 Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
2026-07-04T12:50:51.7701618Z -rwxr--r-- 1 root root 43344 May 20 19:32 Microsoft.Extensions.Configuration.Binder.dll
|
||||
2026-07-04T12:50:51.7701708Z -rwxr--r-- 1 root root 28496 May 20 19:34 Microsoft.Extensions.Configuration.FileExtensions.dll
|
||||
2026-07-04T12:50:51.7701813Z -rwxr--r-- 1 root root 27984 May 20 19:36 Microsoft.Extensions.Configuration.Json.dll
|
||||
2026-07-04T12:50:51.7701918Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Configuration.dll
|
||||
2026-07-04T12:50:51.7702004Z -rwxr--r-- 1 root root 65872 May 20 19:29 Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
2026-07-04T12:50:51.7702097Z -rwxr--r-- 1 root root 95568 May 20 19:30 Microsoft.Extensions.DependencyInjection.dll
|
||||
2026-07-04T12:50:51.7702194Z -rwxr--r-- 1 root root 31056 May 20 19:32 Microsoft.Extensions.Diagnostics.Abstractions.dll
|
||||
2026-07-04T12:50:51.7702288Z -rwxr--r-- 1 root root 36176 May 20 19:34 Microsoft.Extensions.Diagnostics.dll
|
||||
2026-07-04T12:50:51.7702374Z -rwxr--r-- 1 root root 23376 May 20 19:29 Microsoft.Extensions.FileProviders.Abstractions.dll
|
||||
2026-07-04T12:50:51.7702458Z -rwxr--r-- 1 root root 45392 May 20 19:33 Microsoft.Extensions.FileProviders.Physical.dll
|
||||
2026-07-04T12:50:51.7702562Z -rwxr--r-- 1 root root 47952 May 20 19:30 Microsoft.Extensions.FileSystemGlobbing.dll
|
||||
2026-07-04T12:50:51.7702655Z -rwxr--r-- 1 root root 93008 May 20 19:37 Microsoft.Extensions.Http.dll
|
||||
2026-07-04T12:50:51.7702760Z -rwxr--r-- 1 root root 19576 Mar 25 2023 Microsoft.Extensions.Localization.Abstractions.dll
|
||||
2026-07-04T12:50:51.7702853Z -rwxr--r-- 1 root root 31872 Mar 25 2023 Microsoft.Extensions.Localization.dll
|
||||
2026-07-04T12:50:51.7702942Z -rwxr--r-- 1 root root 66896 May 20 19:29 Microsoft.Extensions.Logging.Abstractions.dll
|
||||
2026-07-04T12:50:51.7703029Z -rwxr--r-- 1 root root 51536 May 20 19:33 Microsoft.Extensions.Logging.dll
|
||||
2026-07-04T12:50:51.7703111Z -rwxr--r-- 1 root root 21840 May 20 19:33 Microsoft.Extensions.Options.ConfigurationExtensions.dll
|
||||
2026-07-04T12:50:51.7703206Z -rwxr--r-- 1 root root 65360 May 20 19:30 Microsoft.Extensions.Options.dll
|
||||
2026-07-04T12:50:51.7703314Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Primitives.dll
|
||||
2026-07-04T12:50:51.7703426Z -rwxr--r-- 1 root root 43344 May 20 20:19 Microsoft.Extensions.Validation.dll
|
||||
2026-07-04T12:50:51.7703510Z -rwxr--r-- 1 root root 19296 Jun 2 20:51 Microsoft.IdentityModel.Abstractions.dll
|
||||
2026-07-04T12:50:51.7703597Z -rwxr--r-- 1 root root 172856 Jun 2 20:52 Microsoft.IdentityModel.JsonWebTokens.dll
|
||||
2026-07-04T12:50:51.7703683Z -rwxr--r-- 1 root root 38200 Jun 2 20:51 Microsoft.IdentityModel.Logging.dll
|
||||
2026-07-04T12:50:51.7703764Z -rwxr--r-- 1 root root 407352 Jun 2 20:51 Microsoft.IdentityModel.Tokens.dll
|
||||
2026-07-04T12:50:51.7703844Z -rwxr--r-- 1 root root 24912 May 20 20:20 Microsoft.JSInterop.WebAssembly.dll
|
||||
2026-07-04T12:50:51.7703924Z -rwxr--r-- 1 root root 75088 May 20 20:19 Microsoft.JSInterop.dll
|
||||
2026-07-04T12:50:51.7704012Z -rwxr--r-- 1 root root 428880 May 20 18:30 Microsoft.VisualBasic.Core.dll
|
||||
2026-07-04T12:50:51.7704101Z -rwxr--r-- 1 root root 17232 May 20 18:31 Microsoft.VisualBasic.dll
|
||||
2026-07-04T12:50:51.7704182Z -rwxr--r-- 1 root root 15696 May 20 18:29 Microsoft.Win32.Primitives.dll
|
||||
2026-07-04T12:50:51.7704272Z -rwxr--r-- 1 root root 33104 May 20 18:29 Microsoft.Win32.Registry.dll
|
||||
2026-07-04T12:50:51.7704425Z -rwxr--r-- 1 root root 9108480 Sep 14 2023 MudBlazor.dll
|
||||
2026-07-04T12:50:51.7704514Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.AppContext.dll
|
||||
2026-07-04T12:50:51.7704608Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Buffers.dll
|
||||
2026-07-04T12:50:51.7704698Z -rwxr--r-- 1 root root 88912 May 20 18:29 System.Collections.Concurrent.dll
|
||||
2026-07-04T12:50:51.7704789Z -rwxr--r-- 1 root root 251216 May 20 18:29 System.Collections.Immutable.dll
|
||||
2026-07-04T12:50:51.7704875Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.NonGeneric.dll
|
||||
2026-07-04T12:50:51.7704966Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.Specialized.dll
|
||||
2026-07-04T12:50:51.7707333Z -rwxr--r-- 1 root root 112976 May 20 18:28 System.Collections.dll
|
||||
2026-07-04T12:50:51.7707687Z -rwxr--r-- 1 root root 102736 May 20 18:31 System.ComponentModel.Annotations.dll
|
||||
2026-07-04T12:50:51.7708035Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ComponentModel.DataAnnotations.dll
|
||||
2026-07-04T12:50:51.7708335Z -rwxr--r-- 1 root root 26448 May 20 18:29 System.ComponentModel.EventBasedAsync.dll
|
||||
2026-07-04T12:50:51.7708514Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.ComponentModel.Primitives.dll
|
||||
2026-07-04T12:50:51.7708690Z -rwxr--r-- 1 root root 316752 May 20 18:31 System.ComponentModel.TypeConverter.dll
|
||||
2026-07-04T12:50:51.7708912Z -rwxr--r-- 1 root root 16208 May 20 18:29 System.ComponentModel.dll
|
||||
2026-07-04T12:50:51.7709087Z -rwxr--r-- 1 root root 19280 May 20 18:31 System.Configuration.dll
|
||||
2026-07-04T12:50:51.7709258Z -rwxr--r-- 1 root root 54096 May 20 18:31 System.Console.dll
|
||||
2026-07-04T12:50:51.7709460Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Core.dll
|
||||
2026-07-04T12:50:51.7709630Z -rwxr--r-- 1 root root 1018192 May 20 18:31 System.Data.Common.dll
|
||||
2026-07-04T12:50:51.7709804Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Data.DataSetExtensions.dll
|
||||
2026-07-04T12:50:51.7709982Z -rwxr--r-- 1 root root 25424 May 20 18:31 System.Data.dll
|
||||
2026-07-04T12:50:51.7710183Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Diagnostics.Contracts.dll
|
||||
2026-07-04T12:50:51.7710361Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Diagnostics.Debug.dll
|
||||
2026-07-04T12:50:51.7710524Z -rwxr--r-- 1 root root 202576 May 20 18:29 System.Diagnostics.DiagnosticSource.dll
|
||||
2026-07-04T12:50:51.7710895Z -rwxr--r-- 1 root root 22864 May 20 18:29 System.Diagnostics.FileVersionInfo.dll
|
||||
2026-07-04T12:50:51.7711109Z -rwxr--r-- 1 root root 56656 May 20 18:29 System.Diagnostics.Process.dll
|
||||
2026-07-04T12:50:51.7711275Z -rwxr--r-- 1 root root 25936 May 20 18:29 System.Diagnostics.StackTrace.dll
|
||||
2026-07-04T12:50:51.7711461Z -rwxr--r-- 1 root root 31568 May 20 18:31 System.Diagnostics.TextWriterTraceListener.dll
|
||||
2026-07-04T12:50:51.7711697Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Diagnostics.Tools.dll
|
||||
2026-07-04T12:50:51.7711883Z -rwxr--r-- 1 root root 58704 May 20 18:29 System.Diagnostics.TraceSource.dll
|
||||
2026-07-04T12:50:51.7712056Z -rwxr--r-- 1 root root 16208 May 20 18:28 System.Diagnostics.Tracing.dll
|
||||
2026-07-04T12:50:51.7712283Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Drawing.Primitives.dll
|
||||
2026-07-04T12:50:51.7712465Z -rwxr--r-- 1 root root 20304 May 20 18:31 System.Drawing.dll
|
||||
2026-07-04T12:50:51.7712648Z -rwxr--r-- 1 root root 16208 May 20 18:30 System.Dynamic.Runtime.dll
|
||||
2026-07-04T12:50:51.7712825Z -rwxr--r-- 1 root root 97104 May 20 18:29 System.Formats.Asn1.dll
|
||||
2026-07-04T12:50:51.7713000Z -rwxr--r-- 1 root root 38736 May 20 18:29 System.Formats.Tar.dll
|
||||
2026-07-04T12:50:51.7713087Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.Calendars.dll
|
||||
2026-07-04T12:50:51.7713176Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Globalization.Extensions.dll
|
||||
2026-07-04T12:50:51.7713291Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.dll
|
||||
2026-07-04T12:50:51.7713387Z -rwxr--r-- 1 root root 28496 May 20 18:29 System.IO.Compression.Brotli.dll
|
||||
2026-07-04T12:50:51.7713486Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.IO.Compression.FileSystem.dll
|
||||
2026-07-04T12:50:51.7713573Z -rwxr--r-- 1 root root 53584 May 20 18:29 System.IO.Compression.ZipFile.dll
|
||||
2026-07-04T12:50:51.7713654Z -rwxr--r-- 1 root root 167760 May 20 18:31 System.IO.Compression.dll
|
||||
2026-07-04T12:50:51.7713736Z -rwxr--r-- 1 root root 32080 May 20 18:29 System.IO.FileSystem.AccessControl.dll
|
||||
2026-07-04T12:50:51.7713827Z -rwxr--r-- 1 root root 23888 May 20 18:29 System.IO.FileSystem.DriveInfo.dll
|
||||
2026-07-04T12:50:51.7713926Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.IO.FileSystem.Primitives.dll
|
||||
2026-07-04T12:50:51.7714013Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.IO.FileSystem.Watcher.dll
|
||||
2026-07-04T12:50:51.7714096Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.FileSystem.dll
|
||||
2026-07-04T12:50:51.7714178Z -rwxr--r-- 1 root root 35152 May 20 18:30 System.IO.IsolatedStorage.dll
|
||||
2026-07-04T12:50:51.7714259Z -rwxr--r-- 1 root root 50000 May 20 18:31 System.IO.MemoryMappedFiles.dll
|
||||
2026-07-04T12:50:51.7714344Z -rwxr--r-- 1 root root 78160 May 20 18:29 System.IO.Pipelines.dll
|
||||
2026-07-04T12:50:51.7714423Z -rwxr--r-- 1 root root 23376 May 20 18:29 System.IO.Pipes.AccessControl.dll
|
||||
2026-07-04T12:50:51.7714513Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.IO.Pipes.dll
|
||||
2026-07-04T12:50:51.7714598Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.UnmanagedMemoryStream.dll
|
||||
2026-07-04T12:50:51.7714682Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.dll
|
||||
2026-07-04T12:50:51.7714764Z -rwxr--r-- 1 root root 92000 Jun 2 20:51 System.IdentityModel.Tokens.Jwt.dll
|
||||
2026-07-04T12:50:51.7714848Z -rwxr--r-- 1 root root 456528 May 20 18:29 System.Linq.AsyncEnumerable.dll
|
||||
2026-07-04T12:50:51.7714934Z -rwxr--r-- 1 root root 575312 May 20 18:29 System.Linq.Expressions.dll
|
||||
2026-07-04T12:50:51.7715013Z -rwxr--r-- 1 root root 223056 May 20 18:31 System.Linq.Parallel.dll
|
||||
2026-07-04T12:50:51.7715099Z -rwxr--r-- 1 root root 78672 May 20 18:31 System.Linq.Queryable.dll
|
||||
2026-07-04T12:50:51.7715179Z -rwxr--r-- 1 root root 201040 May 20 18:29 System.Linq.dll
|
||||
2026-07-04T12:50:51.7715280Z -rwxr--r-- 1 root root 55632 May 20 18:28 System.Memory.dll
|
||||
2026-07-04T12:50:51.7715363Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.Http.Json.dll
|
||||
2026-07-04T12:50:51.7715443Z -rwxr--r-- 1 root root 296272 May 20 18:31 System.Net.Http.dll
|
||||
2026-07-04T12:50:51.7724789Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.HttpListener.dll
|
||||
2026-07-04T12:50:51.7725003Z -rwxr--r-- 1 root root 105296 May 20 18:31 System.Net.Mail.dll
|
||||
2026-07-04T12:50:51.7725118Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Net.NameResolution.dll
|
||||
2026-07-04T12:50:51.7725378Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.Net.NetworkInformation.dll
|
||||
2026-07-04T12:50:51.7725485Z -rwxr--r-- 1 root root 27984 May 20 18:29 System.Net.Ping.dll
|
||||
2026-07-04T12:50:51.7725575Z -rwxr--r-- 1 root root 107344 May 20 18:31 System.Net.Primitives.dll
|
||||
2026-07-04T12:50:51.7725659Z -rwxr--r-- 1 root root 39248 May 20 18:30 System.Net.Quic.dll
|
||||
2026-07-04T12:50:51.7725741Z -rwxr--r-- 1 root root 65872 May 20 18:30 System.Net.Requests.dll
|
||||
2026-07-04T12:50:51.7725821Z -rwxr--r-- 1 root root 114512 May 20 18:30 System.Net.Security.dll
|
||||
2026-07-04T12:50:51.7725899Z -rwxr--r-- 1 root root 40784 May 20 18:29 System.Net.ServerSentEvents.dll
|
||||
2026-07-04T12:50:51.7725997Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Net.ServicePoint.dll
|
||||
2026-07-04T12:50:51.7726207Z -rwxr--r-- 1 root root 74576 May 20 18:29 System.Net.Sockets.dll
|
||||
2026-07-04T12:50:51.7726297Z -rwxr--r-- 1 root root 56144 May 20 18:31 System.Net.WebClient.dll
|
||||
2026-07-04T12:50:51.7726382Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.Net.WebHeaderCollection.dll
|
||||
2026-07-04T12:50:51.7726473Z -rwxr--r-- 1 root root 21840 May 20 18:31 System.Net.WebProxy.dll
|
||||
2026-07-04T12:50:51.7726565Z -rwxr--r-- 1 root root 52560 May 20 18:31 System.Net.WebSockets.Client.dll
|
||||
2026-07-04T12:50:51.7726651Z -rwxr--r-- 1 root root 108880 May 20 18:31 System.Net.WebSockets.dll
|
||||
2026-07-04T12:50:51.7726745Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Net.dll
|
||||
2026-07-04T12:50:51.7726828Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Numerics.Vectors.dll
|
||||
2026-07-04T12:50:51.7726973Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Numerics.dll
|
||||
2026-07-04T12:50:51.7727145Z -rwxr--r-- 1 root root 41296 May 20 18:29 System.ObjectModel.dll
|
||||
2026-07-04T12:50:51.7727300Z -rwxr--r-- 1 root root 4880208 May 20 18:19 System.Private.CoreLib.dll
|
||||
2026-07-04T12:50:51.7727457Z -rwxr--r-- 1 root root 859472 May 20 18:31 System.Private.DataContractSerialization.dll
|
||||
2026-07-04T12:50:51.7727613Z -rwxr--r-- 1 root root 105808 May 20 18:28 System.Private.Uri.dll
|
||||
2026-07-04T12:50:51.7727769Z -rwxr--r-- 1 root root 153936 May 20 18:30 System.Private.Xml.Linq.dll
|
||||
2026-07-04T12:50:51.7727929Z -rwxr--r-- 1 root root 3106128 May 20 18:30 System.Private.Xml.dll
|
||||
2026-07-04T12:50:51.7728079Z -rwxr--r-- 1 root root 38224 May 20 18:31 System.Reflection.DispatchProxy.dll
|
||||
2026-07-04T12:50:51.7728248Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.ILGeneration.dll
|
||||
2026-07-04T12:50:51.7728406Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.Lightweight.dll
|
||||
2026-07-04T12:50:51.7728565Z -rwxr--r-- 1 root root 133456 May 20 18:29 System.Reflection.Emit.dll
|
||||
2026-07-04T12:50:51.7728728Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Reflection.Extensions.dll
|
||||
2026-07-04T12:50:51.7728907Z -rwxr--r-- 1 root root 503632 May 20 18:29 System.Reflection.Metadata.dll
|
||||
2026-07-04T12:50:51.7729052Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Reflection.Primitives.dll
|
||||
2026-07-04T12:50:51.7729143Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Reflection.TypeExtensions.dll
|
||||
2026-07-04T12:50:51.7729244Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Reflection.dll
|
||||
2026-07-04T12:50:51.7729337Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Resources.Reader.dll
|
||||
2026-07-04T12:50:51.7729450Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Resources.ResourceManager.dll
|
||||
2026-07-04T12:50:51.7729588Z -rwxr--r-- 1 root root 26960 May 20 18:31 System.Resources.Writer.dll
|
||||
2026-07-04T12:50:51.7729711Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Runtime.CompilerServices.Unsafe.dll
|
||||
2026-07-04T12:50:51.7729802Z -rwxr--r-- 1 root root 17232 May 20 18:30 System.Runtime.CompilerServices.VisualC.dll
|
||||
2026-07-04T12:50:51.7729888Z -rwxr--r-- 1 root root 17744 May 20 18:30 System.Runtime.Extensions.dll
|
||||
2026-07-04T12:50:51.7729981Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Runtime.Handles.dll
|
||||
2026-07-04T12:50:51.7730089Z -rwxr--r-- 1 root root 89936 May 20 18:31 System.Runtime.InteropServices.JavaScript.dll
|
||||
2026-07-04T12:50:51.7730186Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Runtime.InteropServices.RuntimeInformation.dll
|
||||
2026-07-04T12:50:51.7730278Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Runtime.InteropServices.dll
|
||||
2026-07-04T12:50:51.7730393Z -rwxr--r-- 1 root root 17232 May 20 18:29 System.Runtime.Intrinsics.dll
|
||||
2026-07-04T12:50:51.7730536Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Runtime.Loader.dll
|
||||
2026-07-04T12:50:51.7730680Z -rwxr--r-- 1 root root 145232 May 20 18:29 System.Runtime.Numerics.dll
|
||||
2026-07-04T12:50:51.7730916Z -rwxr--r-- 1 root root 65872 May 20 18:29 System.Runtime.Serialization.Formatters.dll
|
||||
2026-07-04T12:50:51.7731009Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Runtime.Serialization.Json.dll
|
||||
2026-07-04T12:50:51.7731092Z -rwxr--r-- 1 root root 23376 May 20 18:30 System.Runtime.Serialization.Primitives.dll
|
||||
2026-07-04T12:50:51.7731180Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Runtime.Serialization.Xml.dll
|
||||
2026-07-04T12:50:51.7731381Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Runtime.Serialization.dll
|
||||
2026-07-04T12:50:51.7731472Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Runtime.dll
|
||||
2026-07-04T12:50:51.7731568Z -rwxr--r-- 1 root root 58192 May 20 18:29 System.Security.AccessControl.dll
|
||||
2026-07-04T12:50:51.7731659Z -rwxr--r-- 1 root root 55120 May 20 18:29 System.Security.Claims.dll
|
||||
2026-07-04T12:50:51.7731742Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Security.Cryptography.Algorithms.dll
|
||||
2026-07-04T12:50:51.7731846Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Cng.dll
|
||||
2026-07-04T12:50:51.7731929Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Csp.dll
|
||||
2026-07-04T12:50:51.7732017Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Encoding.dll
|
||||
2026-07-04T12:50:51.7732102Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.OpenSsl.dll
|
||||
2026-07-04T12:50:51.7732185Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Primitives.dll
|
||||
2026-07-04T12:50:51.7732267Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Security.Cryptography.X509Certificates.dll
|
||||
2026-07-04T12:50:51.7732350Z -rwxr--r-- 1 root root 654160 May 20 18:31 System.Security.Cryptography.dll
|
||||
2026-07-04T12:50:51.7732431Z -rwxr--r-- 1 root root 37712 May 20 18:29 System.Security.Principal.Windows.dll
|
||||
2026-07-04T12:50:51.7732517Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Security.Principal.dll
|
||||
2026-07-04T12:50:51.7732604Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Security.SecureString.dll
|
||||
2026-07-04T12:50:51.7732693Z -rwxr--r-- 1 root root 18256 May 20 18:31 System.Security.dll
|
||||
2026-07-04T12:50:51.7732776Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ServiceModel.Web.dll
|
||||
2026-07-04T12:50:51.7732919Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.ServiceProcess.dll
|
||||
2026-07-04T12:50:51.7733005Z -rwxr--r-- 1 root root 742736 May 20 18:29 System.Text.Encoding.CodePages.dll
|
||||
2026-07-04T12:50:51.7733087Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Text.Encoding.Extensions.dll
|
||||
2026-07-04T12:50:51.7733169Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Text.Encoding.dll
|
||||
2026-07-04T12:50:51.7733257Z -rwxr--r-- 1 root root 65872 May 20 18:32 System.Text.Encodings.Web.dll
|
||||
2026-07-04T12:50:51.7733337Z -rwxr--r-- 1 root root 649040 May 20 18:30 System.Text.Json.dll
|
||||
2026-07-04T12:50:51.7733484Z -rwxr--r-- 1 root root 384848 May 20 18:30 System.Text.RegularExpressions.dll
|
||||
2026-07-04T12:50:51.7733633Z -rwxr--r-- 1 root root 33616 May 20 18:29 System.Threading.AccessControl.dll
|
||||
2026-07-04T12:50:51.7733786Z -rwxr--r-- 1 root root 66384 May 20 18:29 System.Threading.Channels.dll
|
||||
2026-07-04T12:50:51.7733944Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Overlapped.dll
|
||||
2026-07-04T12:50:51.7734092Z -rwxr--r-- 1 root root 185680 May 20 18:29 System.Threading.Tasks.Dataflow.dll
|
||||
2026-07-04T12:50:51.7734257Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Threading.Tasks.Extensions.dll
|
||||
2026-07-04T12:50:51.7734393Z -rwxr--r-- 1 root root 61264 May 20 18:31 System.Threading.Tasks.Parallel.dll
|
||||
2026-07-04T12:50:51.7734482Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Threading.Tasks.dll
|
||||
2026-07-04T12:50:51.7734567Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Thread.dll
|
||||
2026-07-04T12:50:51.7734649Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.ThreadPool.dll
|
||||
2026-07-04T12:50:51.7734728Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Threading.Timer.dll
|
||||
2026-07-04T12:50:51.7734807Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Threading.dll
|
||||
2026-07-04T12:50:51.7734908Z -rwxr--r-- 1 root root 175952 May 20 18:30 System.Transactions.Local.dll
|
||||
2026-07-04T12:50:51.7734993Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Transactions.dll
|
||||
2026-07-04T12:50:51.7735073Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.ValueTuple.dll
|
||||
2026-07-04T12:50:51.7735153Z -rwxr--r-- 1 root root 30032 May 20 18:31 System.Web.HttpUtility.dll
|
||||
2026-07-04T12:50:51.7735268Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Web.dll
|
||||
2026-07-04T12:50:51.7735365Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Windows.dll
|
||||
2026-07-04T12:50:51.7735446Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.Linq.dll
|
||||
2026-07-04T12:50:51.7735534Z -rwxr--r-- 1 root root 21840 May 20 18:30 System.Xml.ReaderWriter.dll
|
||||
2026-07-04T12:50:51.7735652Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Xml.Serialization.dll
|
||||
2026-07-04T12:50:51.7735784Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XDocument.dll
|
||||
2026-07-04T12:50:51.7735871Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XPath.XDocument.dll
|
||||
2026-07-04T12:50:51.7735952Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Xml.XPath.dll
|
||||
2026-07-04T12:50:51.7736041Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XmlDocument.dll
|
||||
2026-07-04T12:50:51.7736341Z -rwxr--r-- 1 root root 17744 May 20 18:31 System.Xml.XmlSerializer.dll
|
||||
2026-07-04T12:50:51.7736447Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Xml.dll
|
||||
2026-07-04T12:50:51.7736537Z -rwxr--r-- 1 root root 50000 May 20 18:32 System.dll
|
||||
2026-07-04T12:50:51.7736621Z -rw-r--r-- 1 root root 156672 Jul 4 12:49 TaxBaik.Application.dll
|
||||
2026-07-04T12:50:51.7736707Z -rw-r--r-- 1 root root 38468 Jul 4 12:49 TaxBaik.Application.pdb
|
||||
2026-07-04T12:50:51.7736794Z -rw-r--r-- 1 root root 37888 Jul 4 12:49 TaxBaik.Domain.dll
|
||||
2026-07-04T12:50:51.7736873Z -rw-r--r-- 1 root root 24100 Jul 4 12:49 TaxBaik.Domain.pdb
|
||||
2026-07-04T12:50:51.7736955Z -rw-r--r-- 1 root root 713216 Jul 4 12:50 TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:50:51.7737039Z -rw-r--r-- 1 root root 373136 Jul 4 12:50 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T12:50:51.7737139Z -rw-r--r-- 1 root root 2546 Jul 4 12:50 TaxBaik.Web.Client.runtimeconfig.json
|
||||
2026-07-04T12:50:51.7737338Z -rw-r--r-- 1 root root 1007340 Jul 4 12:50 TaxBaik.Web.Client.staticwebassets.endpoints.json
|
||||
2026-07-04T12:50:51.7737432Z -rw-r--r-- 1 root root 78064 Jul 4 12:50 TaxBaik.Web.Client.staticwebassets.runtime.json
|
||||
2026-07-04T12:50:51.7737525Z -rwxr--r-- 1 root root 16208 May 20 18:31 WindowsBase.dll
|
||||
2026-07-04T12:50:51.7737609Z -rwxr--r-- 1 root root 37898 May 20 18:42 dotnet.js
|
||||
2026-07-04T12:50:51.7737687Z -rwxr--r-- 1 root root 51818 May 20 18:42 dotnet.js.map
|
||||
2026-07-04T12:50:51.7737778Z -rwxr--r-- 1 root root 145050 May 20 18:43 dotnet.native.js
|
||||
2026-07-04T12:50:51.7737860Z -rwxr--r-- 1 root root 3002101 May 20 18:43 dotnet.native.wasm
|
||||
2026-07-04T12:50:51.7737942Z -rwxr--r-- 1 root root 198479 May 20 18:42 dotnet.runtime.js
|
||||
2026-07-04T12:50:51.7738024Z -rwxr--r-- 1 root root 276757 May 20 18:42 dotnet.runtime.js.map
|
||||
2026-07-04T12:50:51.7738104Z -rwxr--r-- 1 root root 956416 Apr 2 19:04 icudt_CJK.dat
|
||||
2026-07-04T12:50:51.7738182Z -rwxr--r-- 1 root root 550832 Apr 2 19:04 icudt_EFIGS.dat
|
||||
2026-07-04T12:50:51.7738259Z -rwxr--r-- 1 root root 1107168 Apr 2 19:04 icudt_no_CJK.dat
|
||||
2026-07-04T12:50:51.7738341Z -rwxr--r-- 1 root root 59728 May 20 18:31 mscorlib.dll
|
||||
2026-07-04T12:50:51.7738417Z -rwxr--r-- 1 root root 100688 May 20 18:32 netstandard.dll
|
||||
2026-07-04T12:50:51.7738496Z drwxr-xr-x 3 root root 4096 Jul 4 12:50 wwwroot
|
||||
2026-07-04T12:50:51.7740611Z total 4352
|
||||
2026-07-04T12:50:51.7740967Z drwxr-xr-x 8 root root 4096 Jul 4 12:50 .
|
||||
2026-07-04T12:50:51.7741083Z drwxr-xr-x 3 root root 4096 Jul 4 12:50 ..
|
||||
2026-07-04T12:50:51.7741169Z -rw-r--r-- 1 root root 196 Jul 4 12:50 .NETCoreApp,Version=v10.0.AssemblyAttributes.cs
|
||||
2026-07-04T12:50:51.7741346Z -rw-r--r-- 1 root root 137 Jul 4 12:50 EmbeddedAttribute.cs
|
||||
2026-07-04T12:50:51.7741437Z -rw-r--r-- 1 root root 0 Jul 4 12:50 TaxBaik..C36EE7CA.Up2Date
|
||||
2026-07-04T12:50:51.7741531Z -rw-r--r-- 1 root root 1008 Jul 4 12:50 TaxBaik.Web.Client.AssemblyInfo.cs
|
||||
2026-07-04T12:50:51.7741630Z -rw-r--r-- 1 root root 65 Jul 4 12:50 TaxBaik.Web.Client.AssemblyInfoInputs.cache
|
||||
2026-07-04T12:50:51.7741744Z -rw-r--r-- 1 root root 16355 Jul 4 12:50 TaxBaik.Web.Client.GeneratedMSBuildEditorConfig.editorconfig
|
||||
2026-07-04T12:50:51.7741848Z -rw-r--r-- 1 root root 433 Jul 4 12:50 TaxBaik.Web.Client.GlobalUsings.g.cs
|
||||
2026-07-04T12:50:51.7741978Z -rw-r--r-- 1 root root 0 Jul 4 12:50 TaxBaik.Web.Client.MvcApplicationPartsAssemblyInfo.cache
|
||||
2026-07-04T12:50:51.7742164Z -rw-r--r-- 1 root root 27329 Jul 4 12:50 TaxBaik.Web.Client.assets.cache
|
||||
2026-07-04T12:50:51.7742340Z -rw-r--r-- 1 root root 20456 Jul 4 12:50 TaxBaik.Web.Client.csproj.AssemblyReference.cache
|
||||
2026-07-04T12:50:51.7742497Z -rw-r--r-- 1 root root 65 Jul 4 12:50 TaxBaik.Web.Client.csproj.CoreCompileInputs.cache
|
||||
2026-07-04T12:50:51.7742654Z -rw-r--r-- 1 root root 136894 Jul 4 12:50 TaxBaik.Web.Client.csproj.FileListAbsolute.txt
|
||||
2026-07-04T12:50:51.7742893Z -rw-r--r-- 1 root root 713216 Jul 4 12:50 TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:50:51.7743120Z -rw-r--r-- 1 root root 65 Jul 4 12:50 TaxBaik.Web.Client.genruntimeconfig.cache
|
||||
2026-07-04T12:50:51.7743334Z -rw-r--r-- 1 root root 373136 Jul 4 12:50 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T12:50:51.7743742Z -rw-r--r-- 1 root root 276 Jul 4 12:50 ValidatableTypeAttribute.cs
|
||||
2026-07-04T12:50:51.7743930Z -rw-r--r-- 1 root root 3 Jul 4 12:50 blazor.build.boot-extension.json
|
||||
2026-07-04T12:50:51.7744151Z drwxr-xr-x 2 root root 20480 Jul 4 12:50 compressed
|
||||
2026-07-04T12:50:51.7744319Z -rw-r--r-- 1 root root 93392 Jul 4 12:50 dotnet.js
|
||||
2026-07-04T12:50:51.7744459Z -rw-r--r-- 1 root root 276706 Jul 4 12:50 rbcswa.dswa.cache.json
|
||||
2026-07-04T12:50:51.7744599Z drwxr-xr-x 2 root root 4096 Jul 4 12:50 ref
|
||||
2026-07-04T12:50:51.7744731Z drwxr-xr-x 2 root root 4096 Jul 4 12:50 refint
|
||||
2026-07-04T12:50:51.7744901Z -rw-r--r-- 1 root root 322 Jul 4 12:50 rjimswa.dswa.cache.json
|
||||
2026-07-04T12:50:51.7745034Z -rw-r--r-- 1 root root 3404 Jul 4 12:50 rjsmcshtml.dswa.cache.json
|
||||
2026-07-04T12:50:51.7745177Z -rw-r--r-- 1 root root 3404 Jul 4 12:50 rjsmrazor.dswa.cache.json
|
||||
2026-07-04T12:50:51.7745357Z -rw-r--r-- 1 root root 4173 Jul 4 12:50 rpswa.dswa.cache.json
|
||||
2026-07-04T12:50:51.7745511Z drwxr-xr-x 2 root root 4096 Jul 4 12:50 staticwebassets
|
||||
2026-07-04T12:50:51.7745658Z -rw-r--r-- 1 root root 1007340 Jul 4 12:50 staticwebassets.build.endpoints.json
|
||||
2026-07-04T12:50:51.7745816Z -rw-r--r-- 1 root root 1564906 Jul 4 12:50 staticwebassets.build.json
|
||||
2026-07-04T12:50:51.7746022Z -rw-r--r-- 1 root root 44 Jul 4 12:50 staticwebassets.build.json.cache
|
||||
2026-07-04T12:50:51.7804929Z -rw-r--r-- 1 root root 78064 Jul 4 12:50 staticwebassets.development.json
|
||||
2026-07-04T12:50:51.7805097Z -rw-r--r-- 1 root root 0 Jul 4 12:50 swae.build.ex.cache
|
||||
2026-07-04T12:50:51.7805385Z drwxr-xr-x 2 root root 4096 Jul 4 12:50 tmp-webcil
|
||||
2026-07-04T12:50:51.7805479Z drwxr-xr-x 2 root root 20480 Jul 4 12:50 webcil
|
||||
2026-07-04T12:51:56.0836642Z ✓ Publish Web elapsed: 86s
|
||||
2026-07-04T12:51:56.0856804Z -rw-r--r-- 1 root root 2.2M Jul 4 12:51 ./publish-logs/publish-web.binlog
|
||||
2026-07-04T12:51:56.1993997Z ::group::Run set -e
|
||||
2026-07-04T12:51:56.1994446Z set -e
|
||||
2026-07-04T12:51:56.1994570Z mkdir -p ./publish-logs
|
||||
2026-07-04T12:51:56.1994674Z # Proxy is not part of the solution restore graph, so restore it once
|
||||
2026-07-04T12:51:56.1994784Z # here before publishing to avoid NETSDK1004 in CI.
|
||||
2026-07-04T12:51:56.1994877Z dotnet restore src/TaxBaik.Proxy/
|
||||
2026-07-04T12:51:56.1994953Z dotnet build src/TaxBaik.Proxy/TaxBaik.Proxy.csproj -c Release --no-restore
|
||||
2026-07-04T12:51:56.1995040Z start=$(date +%s)
|
||||
2026-07-04T12:51:56.1995115Z dotnet publish src/TaxBaik.Proxy/ \
|
||||
2026-07-04T12:51:56.1995200Z -c Release \
|
||||
2026-07-04T12:51:56.1995275Z -o ./publish/proxy \
|
||||
2026-07-04T12:51:56.1995345Z --no-restore \
|
||||
2026-07-04T12:51:56.1995433Z --no-build \
|
||||
2026-07-04T12:51:56.1995766Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T12:51:56.1995969Z -p:PerformanceSummary=true \
|
||||
2026-07-04T12:51:56.1996302Z -clp:Summary \
|
||||
2026-07-04T12:51:56.1996496Z -bl:./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T12:51:56.1996597Z end=$(date +%s)
|
||||
2026-07-04T12:51:56.1996672Z echo "✓ Publish Proxy elapsed: $((end - start))s"
|
||||
2026-07-04T12:51:56.1996955Z ls -lh ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T12:51:56.1997163Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:51:56.1997314Z ::endgroup::
|
||||
2026-07-04T12:51:57.1407533Z Determining projects to restore...
|
||||
2026-07-04T12:51:57.6632131Z Restored /workspace/***/taxbaik/src/TaxBaik.Proxy/TaxBaik.Proxy.csproj (in 125 ms).
|
||||
2026-07-04T12:51:58.9747864Z TaxBaik.Proxy -> /workspace/***/taxbaik/src/TaxBaik.Proxy/bin/Release/net10.0/TaxBaik.Proxy.dll
|
||||
2026-07-04T12:51:58.9938437Z
|
||||
2026-07-04T12:51:58.9947013Z Build succeeded.
|
||||
2026-07-04T12:51:58.9949917Z 0 Warning(s)
|
||||
2026-07-04T12:51:58.9951624Z 0 Error(s)
|
||||
2026-07-04T12:51:58.9954373Z
|
||||
2026-07-04T12:51:58.9954554Z Time Elapsed 00:00:01.05
|
||||
2026-07-04T12:52:00.0446907Z TaxBaik.Proxy -> /workspace/***/taxbaik/publish/proxy/
|
||||
2026-07-04T12:52:00.0565606Z
|
||||
2026-07-04T12:52:00.0583909Z Build succeeded.
|
||||
2026-07-04T12:52:00.0584436Z 0 Warning(s)
|
||||
2026-07-04T12:52:00.0584681Z 0 Error(s)
|
||||
2026-07-04T12:52:00.0584764Z
|
||||
2026-07-04T12:52:00.0584841Z Time Elapsed 00:00:00.64
|
||||
2026-07-04T12:52:00.0903373Z ✓ Publish Proxy elapsed: 1s
|
||||
2026-07-04T12:52:00.0915796Z -rw-r--r-- 1 root root 335K Jul 4 12:52 ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T12:52:00.2477651Z ::group::Run set -e
|
||||
2026-07-04T12:52:00.2478168Z set -e
|
||||
2026-07-04T12:52:00.2478625Z JWT_SECRET_KEY="***"
|
||||
2026-07-04T12:52:00.2478852Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T12:52:00.2478963Z TELEGRAM_CHAT_ID="***"
|
||||
2026-07-04T12:52:00.2479117Z TELEGRAM_INQUIRY_CHAT_ID=""
|
||||
2026-07-04T12:52:00.2479461Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T12:52:00.2479762Z [ -z "$JWT_SECRET_KEY" ] && { echo "Missing TAXBAIK_JWT_SECRET_KEY" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.2479916Z [ -z "$TELEGRAM_BOT_TOKEN" ] && { echo "Missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.2480078Z [ -z "$TELEGRAM_CHAT_ID" ] && { echo "Missing TAXBAIK_TELEGRAM_CHAT_ID" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.2480551Z [ -z "$TELEGRAM_INQUIRY_CHAT_ID" ] && TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_CHAT_ID"
|
||||
2026-07-04T12:52:00.2480669Z [ -z "$TELEGRAM_SYSTEM_CHAT_ID" ] && TELEGRAM_SYSTEM_CHAT_ID="-5585148480"
|
||||
2026-07-04T12:52:00.2481140Z JWT_SECRET_KEY="$JWT_SECRET_KEY" \
|
||||
2026-07-04T12:52:00.2481420Z TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" \
|
||||
2026-07-04T12:52:00.2481513Z TELEGRAM_CHAT_ID="$TELEGRAM_CHAT_ID" \
|
||||
2026-07-04T12:52:00.2481588Z TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_INQUIRY_CHAT_ID" \
|
||||
2026-07-04T12:52:00.2482377Z TELEGRAM_SYSTEM_CHAT_ID="$TELEGRAM_SYSTEM_CHAT_ID" \
|
||||
2026-07-04T12:52:00.2482488Z python3 -c '
|
||||
2026-07-04T12:52:00.2482577Z import json, os, pathlib
|
||||
2026-07-04T12:52:00.2482665Z pathlib.Path("./publish/appsettings.Production.json").write_text(
|
||||
2026-07-04T12:52:00.2483035Z json.dumps({
|
||||
2026-07-04T12:52:00.2483310Z "Jwt": {"SecretKey": os.environ["JWT_SECRET_KEY"]},
|
||||
2026-07-04T12:52:00.2483405Z "Telegram": {
|
||||
2026-07-04T12:52:00.2483477Z "BotToken": os.environ["TELEGRAM_BOT_TOKEN"],
|
||||
2026-07-04T12:52:00.2483559Z "ChatId": os.environ["TELEGRAM_CHAT_ID"],
|
||||
2026-07-04T12:52:00.2483634Z "InquiryChatId": os.environ["TELEGRAM_INQUIRY_CHAT_ID"],
|
||||
2026-07-04T12:52:00.2483960Z "SystemChatId": os.environ["TELEGRAM_SYSTEM_CHAT_ID"]
|
||||
2026-07-04T12:52:00.2484230Z }
|
||||
2026-07-04T12:52:00.2484311Z }, ensure_ascii=False, indent=2),
|
||||
2026-07-04T12:52:00.2484386Z encoding="utf-8"
|
||||
2026-07-04T12:52:00.2484471Z )'
|
||||
2026-07-04T12:52:00.2484543Z test -s ./publish/appsettings.Production.json || { echo "appsettings.Production.json is empty" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.2484866Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:00.2485155Z ::endgroup::
|
||||
2026-07-04T12:52:00.5025133Z ::group::Run test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.5025722Z test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.5025922Z test -s ./publish/proxy/TaxBaik.Proxy.runtimeconfig.json || { echo "TaxBaik.Proxy.runtimeconfig.json missing" >&2; exit 1; }
|
||||
2026-07-04T12:52:00.5026227Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:00.5026398Z ::endgroup::
|
||||
2026-07-04T12:52:00.6764369Z ::group::Run mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T12:52:00.6764765Z mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T12:52:00.6764895Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:00.6765004Z ::endgroup::
|
||||
2026-07-04T12:52:00.8728261Z ::group::Run bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T12:52:00.8728660Z bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T12:52:00.8728905Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:00.8729177Z ::endgroup::
|
||||
2026-07-04T12:52:00.9538985Z Duplicate version check passed.
|
||||
2026-07-04T12:52:01.0855583Z ::group::Run bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T12:52:01.0856340Z bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T12:52:01.0856747Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:01.0856924Z ::endgroup::
|
||||
2026-07-04T12:52:01.1537519Z KST timestamp harness passed.
|
||||
2026-07-04T12:52:01.3082211Z ::group::Run COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T12:52:01.3082595Z COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T12:52:01.3082713Z BUILD_TIME=$(TZ=Asia/Seoul date +'%Y-%m-%d %H:%M:%S KST')
|
||||
2026-07-04T12:52:01.3082807Z mkdir -p ./publish/wwwroot
|
||||
2026-07-04T12:52:01.3082952Z printf '{\n "version": "%s",\n "built": "%s"\n}\n' "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
||||
2026-07-04T12:52:01.3083148Z echo "✓ Build: $COMMIT_HASH @ $BUILD_TIME"
|
||||
2026-07-04T12:52:01.3083277Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:01.3083386Z ::endgroup::
|
||||
2026-07-04T12:52:01.3712948Z ✓ Build: dc86ccf @ 2026-07-04 21:52:01 KST
|
||||
2026-07-04T12:52:01.4848269Z ::group::Run mkdir -p ~/.ssh
|
||||
2026-07-04T12:52:01.4849031Z mkdir -p ~/.ssh
|
||||
2026-07-04T12:52:01.4849211Z SSH_KEY_B64="***"
|
||||
2026-07-04T12:52:01.4849414Z SSH_KEY_RAW="***"
|
||||
2026-07-04T12:52:01.4849576Z if [ -n "$SSH_KEY_B64" ]; then
|
||||
2026-07-04T12:52:01.4850063Z printf '%s' "$SSH_KEY_B64" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T12:52:01.4850225Z elif [ -n "$SSH_KEY_RAW" ]; then
|
||||
2026-07-04T12:52:01.4850362Z if printf '%s' "$SSH_KEY_RAW" | grep -q 'BEGIN .*PRIVATE KEY'; then
|
||||
2026-07-04T12:52:01.4850943Z printf '%b\n' "$SSH_KEY_RAW" > ~/.ssh/id_ed25519
|
||||
2026-07-04T12:52:01.4851190Z else
|
||||
2026-07-04T12:52:01.4851357Z printf '%s' "$SSH_KEY_RAW" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T12:52:01.4851809Z fi
|
||||
2026-07-04T12:52:01.4851949Z else
|
||||
2026-07-04T12:52:01.4852141Z echo "Missing DEPLOY_SSH_KEY_B64 or DEPLOY_SSH_KEY" >&2; exit 1
|
||||
2026-07-04T12:52:01.4852495Z fi
|
||||
2026-07-04T12:52:01.4852617Z sed -i 's/\r$//' ~/.ssh/id_ed25519
|
||||
2026-07-04T12:52:01.4852755Z chmod 600 ~/.ssh/id_ed25519
|
||||
2026-07-04T12:52:01.4852886Z ssh-keyscan -H "***" >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||
2026-07-04T12:52:01.4853093Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:01.4853480Z ::endgroup::
|
||||
2026-07-04T12:52:01.9503887Z ::group::Run cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T12:52:01.9504389Z cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T12:52:01.9504506Z mkdir -p ./publish/scripts
|
||||
2026-07-04T12:52:01.9504591Z cp scripts/validate_migrations.sh ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T12:52:01.9504690Z chmod +x ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T12:52:01.9504769Z tar -czf taxbaik_deploy.tgz -C ./publish .
|
||||
2026-07-04T12:52:01.9504850Z echo "✓ Package: $(du -sh taxbaik_deploy.tgz | cut -f1)"
|
||||
2026-07-04T12:52:01.9504949Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:01.9505044Z ::endgroup::
|
||||
2026-07-04T12:52:04.4650255Z ✓ Package: 23M
|
||||
2026-07-04T12:52:04.5749245Z ::group::Run set -e
|
||||
2026-07-04T12:52:04.5749613Z set -e
|
||||
2026-07-04T12:52:04.5749749Z export TAXBAIK_DEPLOY_FROM_CI=1
|
||||
2026-07-04T12:52:04.5749842Z TIMESTAMP=$(TZ=Asia/Seoul date +%Y%m%d_%H%M%S)
|
||||
2026-07-04T12:52:04.5749941Z COMMIT=$(git rev-parse --short HEAD)
|
||||
2026-07-04T12:52:04.5750025Z DEPLOY_HOST="***"
|
||||
2026-07-04T12:52:04.5750112Z DEPLOY_USER="***"
|
||||
2026-07-04T12:52:04.5750193Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T12:52:04.5750278Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T12:52:04.5750351Z TELEGRAM_CHAT_ID="${TELEGRAM_SYSTEM_CHAT_ID:--5585148480}"
|
||||
2026-07-04T12:52:04.5750434Z
|
||||
2026-07-04T12:52:04.5750499Z send_telegram() {
|
||||
2026-07-04T12:52:04.5750573Z local text="$1"
|
||||
2026-07-04T12:52:04.5750651Z if [ -z "$TELEGRAM_BOT_TOKEN" ]; then
|
||||
2026-07-04T12:52:04.5750957Z echo "Skipping Telegram notification: missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2
|
||||
2026-07-04T12:52:04.5751063Z return 0
|
||||
2026-07-04T12:52:04.5751137Z fi
|
||||
2026-07-04T12:52:04.5751205Z
|
||||
2026-07-04T12:52:04.5751268Z curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
||||
2026-07-04T12:52:04.5751359Z -d "chat_id=${TELEGRAM_CHAT_ID}" \
|
||||
2026-07-04T12:52:04.5751470Z --data-urlencode "text=${text}" \
|
||||
2026-07-04T12:52:04.5751545Z -d "parse_mode=HTML" >/dev/null || true
|
||||
2026-07-04T12:52:04.5751619Z }
|
||||
2026-07-04T12:52:04.5751687Z
|
||||
2026-07-04T12:52:04.5751744Z notify_failure() {
|
||||
2026-07-04T12:52:04.5751817Z local exit_code=$?
|
||||
2026-07-04T12:52:04.5751888Z send_telegram "❌ <b>TaxBaik 배포 실패</b>
|
||||
2026-07-04T12:52:04.5751985Z
|
||||
2026-07-04T12:52:04.5752046Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T12:52:04.5752122Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T12:52:04.5752192Z 단계: CI/CD deploy"
|
||||
2026-07-04T12:52:04.5752262Z exit "$exit_code"
|
||||
2026-07-04T12:52:04.5752330Z }
|
||||
2026-07-04T12:52:04.5752395Z
|
||||
2026-07-04T12:52:04.5752476Z trap notify_failure ERR
|
||||
2026-07-04T12:52:04.5752547Z
|
||||
2026-07-04T12:52:04.5752607Z echo "=== Deploying TaxBaik $COMMIT ($TIMESTAMP) ==="
|
||||
2026-07-04T12:52:04.5752682Z
|
||||
2026-07-04T12:52:04.5752745Z # 1. 아티팩트 업로드
|
||||
2026-07-04T12:52:04.5752819Z scp -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T12:52:04.5752898Z taxbaik_deploy.tgz "$DEPLOY_USER@$DEPLOY_HOST:/tmp/taxbaik_${TIMESTAMP}.tgz"
|
||||
2026-07-04T12:52:04.5752988Z
|
||||
2026-07-04T12:52:04.5753051Z # 2. 서버에서 배포 + 헬스 체크 (SSH 1회 연결로 처리, Green-Blue 지원)
|
||||
2026-07-04T12:52:04.5753136Z ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T12:52:04.5753543Z -o ServerAliveInterval=10 \
|
||||
2026-07-04T12:52:04.5753625Z "$DEPLOY_USER@$DEPLOY_HOST" TAXBAIK_DEPLOY_FROM_CI=1 bash << REMOTE
|
||||
2026-07-04T12:52:04.5753709Z set -e
|
||||
2026-07-04T12:52:04.5753788Z DEPLOY_HOME="/home/***"
|
||||
2026-07-04T12:52:04.5753873Z DEPLOY_DIR="\$DEPLOY_HOME/deployments/taxbaik_${TIMESTAMP}"
|
||||
2026-07-04T12:52:04.5753953Z TIMESTAMP="${TIMESTAMP}"
|
||||
2026-07-04T12:52:04.5754024Z COMMIT="${COMMIT}"
|
||||
2026-07-04T12:52:04.5754093Z
|
||||
2026-07-04T12:52:04.5754169Z echo "--- [1/5] 압축 해제 ---"
|
||||
2026-07-04T12:52:04.5754243Z mkdir -p "\$DEPLOY_DIR"
|
||||
2026-07-04T12:52:04.5754318Z tar -xzf "/tmp/taxbaik_\${TIMESTAMP}.tgz" -C "\$DEPLOY_DIR"
|
||||
2026-07-04T12:52:04.5754407Z rm -f "/tmp/taxbaik_\${TIMESTAMP}.tgz"
|
||||
2026-07-04T12:52:04.5754475Z
|
||||
2026-07-04T12:52:04.5754537Z echo "--- [2/5] 운영 설정 검증 ---"
|
||||
2026-07-04T12:52:04.5754611Z test -s "\$DEPLOY_DIR/appsettings.Production.json" \
|
||||
2026-07-04T12:52:04.5754687Z || { echo "FATAL: appsettings.Production.json 없음" >&2; exit 1; }
|
||||
2026-07-04T12:52:04.5754769Z test -s "\$DEPLOY_DIR/proxy/TaxBaik.Proxy.dll" \
|
||||
2026-07-04T12:52:04.5754845Z || { echo "FATAL: TaxBaik.Proxy.dll 없음" >&2; exit 1; }
|
||||
2026-07-04T12:52:04.5754928Z
|
||||
2026-07-04T12:52:04.5754989Z echo "--- [3/5] 마이그레이션 사전 검증 ---"
|
||||
2026-07-04T12:52:04.5755073Z test -x "\$DEPLOY_DIR/scripts/validate_migrations.sh" \
|
||||
2026-07-04T12:52:04.5755143Z || { echo "FATAL: validate_migrations.sh 없음" >&2; exit 1; }
|
||||
2026-07-04T12:52:04.5755220Z "\$DEPLOY_DIR/scripts/validate_migrations.sh" "\$DEPLOY_DIR/db/migrations" "postgresql://taxbaik:taxbaik123@localhost:5432/taxbaikdb"
|
||||
2026-07-04T12:52:04.5755316Z
|
||||
2026-07-04T12:52:04.5755383Z echo "--- [4/5] Green-Blue 배포 실행 ---"
|
||||
2026-07-04T12:52:04.5755479Z chmod +x "\$DEPLOY_DIR/deploy_gb.sh"
|
||||
2026-07-04T12:52:04.5755550Z "\$DEPLOY_DIR/deploy_gb.sh" "\$DEPLOY_DIR"
|
||||
2026-07-04T12:52:04.5755622Z
|
||||
2026-07-04T12:52:04.5755686Z echo "--- [4.5/5] Nginx 설정 검증 ---"
|
||||
2026-07-04T12:52:04.5755768Z # 실제 로드되는 파일은 sites-enabled/의 심볼릭 링크 대상만이다.
|
||||
2026-07-04T12:52:04.5755850Z # sites-available/에 다른 파일(예: default)이 있어도 sites-enabled에
|
||||
2026-07-04T12:52:04.5755945Z # 링크되어 있지 않으면 nginx는 그 내용을 절대 읽지 않는다.
|
||||
2026-07-04T12:52:04.5756036Z NGINX_CONF=""
|
||||
2026-07-04T12:52:04.5756277Z for f in /etc/nginx/sites-enabled/*; do
|
||||
2026-07-04T12:52:04.5756361Z if [ -e "\$f" ] && grep -q "location /taxbaik" "\$f" 2>/dev/null; then
|
||||
2026-07-04T12:52:04.5756482Z NGINX_CONF=\$(readlink -f "\$f")
|
||||
2026-07-04T12:52:04.5756667Z break
|
||||
2026-07-04T12:52:04.5756846Z fi
|
||||
2026-07-04T12:52:04.5756964Z done
|
||||
2026-07-04T12:52:04.5757108Z
|
||||
2026-07-04T12:52:04.5757224Z if [ -z "\$NGINX_CONF" ]; then
|
||||
2026-07-04T12:52:04.5757368Z echo "❌ FATAL: sites-enabled/ 안에서 'location /taxbaik'를 정의한 파일을 찾을 수 없음" >&2
|
||||
2026-07-04T12:52:04.5757523Z echo " sites-available/에 파일을 수정해도 sites-enabled에 심볼릭 링크되어 있지 않으면 반영되지 않는다." >&2
|
||||
2026-07-04T12:52:04.5757636Z exit 1
|
||||
2026-07-04T12:52:04.5757715Z fi
|
||||
2026-07-04T12:52:04.5757781Z echo "실제 로드되는 설정 파일: \$NGINX_CONF"
|
||||
2026-07-04T12:52:04.5757891Z
|
||||
2026-07-04T12:52:04.5758224Z # 불변식: '/'와 '/taxbaik' location 모두 반드시 127.0.0.1:5001 (TaxBaik.Proxy)을
|
||||
2026-07-04T12:52:04.5758411Z # 가리켜야 한다. 5003/5004를 직접 하드코딩하면 Green-Blue 포트 전환 시
|
||||
2026-07-04T12:52:04.5758502Z # 죽은 포트를 가리키게 되어 502/404가 발생한다 (실제 발생했던 장애).
|
||||
2026-07-04T12:52:04.5758585Z if grep -E "proxy_pass\s+http://127\.0\.0\.1:500[34]" "\$NGINX_CONF" > /dev/null 2>&1; then
|
||||
2026-07-04T12:52:04.5758688Z echo "❌ FATAL: \$NGINX_CONF 가 포트 5003/5004를 직접 참조함 (Green-Blue 전환 시 502 발생)" >&2
|
||||
2026-07-04T12:52:04.5758790Z echo " 수정: sudo sed -i 's|127.0.0.1:500[34]|127.0.0.1:5001|g' \$NGINX_CONF && sudo nginx -t && sudo systemctl reload nginx" >&2
|
||||
2026-07-04T12:52:04.5758903Z exit 1
|
||||
2026-07-04T12:52:04.5758978Z fi
|
||||
2026-07-04T12:52:04.5759041Z
|
||||
2026-07-04T12:52:04.5759104Z # proxy_pass에 URI(끝 슬래시)가 있으면 nginx가 요청 경로를 재작성하며,
|
||||
2026-07-04T12:52:04.5759451Z # location 접두사와 슬래시 개수가 안 맞으면 백엔드로 이중 슬래시(//)가
|
||||
2026-07-04T12:52:04.5759539Z # 전달되어 404가 발생한다 (실제 발생했던 장애). 접두사 location에서는
|
||||
2026-07-04T12:52:04.5759631Z # proxy_pass에 URI를 붙이지 않는다.
|
||||
2026-07-04T12:52:04.5759730Z if grep -E "location\s+/taxbaik\s*\{" -A 1 "\$NGINX_CONF" | grep -qE "proxy_pass\s+http://127\.0\.0\.1:5001/;"; then
|
||||
2026-07-04T12:52:04.5759822Z echo "❌ FATAL: location /taxbaik 의 proxy_pass 에 불필요한 trailing slash가 있음 (이중 슬래시로 인한 404 위험)" >&2
|
||||
2026-07-04T12:52:04.5759913Z exit 1
|
||||
2026-07-04T12:52:04.5759981Z fi
|
||||
2026-07-04T12:52:04.5760047Z
|
||||
2026-07-04T12:52:04.5760121Z echo "✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)"
|
||||
2026-07-04T12:52:04.5760214Z
|
||||
2026-07-04T12:52:04.5760285Z echo "--- [5/5] 헬스 체크 (최대 60초) ---"
|
||||
2026-07-04T12:52:04.5760366Z ATTEMPTS=20
|
||||
2026-07-04T12:52:04.5760433Z for i in \$(seq 1 \$ATTEMPTS); do
|
||||
2026-07-04T12:52:04.5760506Z STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/healthz 2>/dev/null || echo "000")
|
||||
2026-07-04T12:52:04.5760596Z if [ "\$STATUS" = "200" ]; then
|
||||
2026-07-04T12:52:04.5760678Z echo "✓ [1/6] 헬스 체크 완료"
|
||||
2026-07-04T12:52:04.5760917Z
|
||||
2026-07-04T12:52:04.5760986Z # 검증 1: 메인 페이지 로드. curl -L + -w 는 리다이렉트 체인의 상태코드를
|
||||
2026-07-04T12:52:04.5761079Z # 이어붙이므로, 첫 응답 코드만 받아 200/3xx를 허용한다.
|
||||
2026-07-04T12:52:04.5761159Z MAIN_STATUS=\$(curl -fsS -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/ 2>/dev/null || echo "000")
|
||||
2026-07-04T12:52:04.5761249Z if ! printf '%s' "\$MAIN_STATUS" | grep -Eq '^(200|301|302|307|308)$'; then
|
||||
2026-07-04T12:52:04.5761333Z echo "❌ 메인 페이지 로드 실패 (상태: \$MAIN_STATUS)" >&2
|
||||
2026-07-04T12:52:04.5761415Z exit 1
|
||||
2026-07-04T12:52:04.5761482Z fi
|
||||
2026-07-04T12:52:04.5761561Z echo "✓ [2/6] 메인 페이지 로드 완료"
|
||||
2026-07-04T12:52:04.5761647Z
|
||||
2026-07-04T12:52:04.5761724Z # 검증 2: CSS 파일 로드
|
||||
2026-07-04T12:52:04.5761804Z CSS_STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/css/admin.css 2>/dev/null || echo "000")
|
||||
2026-07-04T12:52:04.5761955Z if [ "\$CSS_STATUS" != "200" ]; then
|
||||
2026-07-04T12:52:04.5762120Z echo "❌ CSS 파일 로드 실패 (상태: \$CSS_STATUS)" >&2
|
||||
2026-07-04T12:52:04.5762317Z exit 1
|
||||
2026-07-04T12:52:04.5762451Z fi
|
||||
2026-07-04T12:52:04.5762570Z echo "✓ [3/6] CSS 파일 로드 완료"
|
||||
2026-07-04T12:52:04.5762691Z
|
||||
2026-07-04T12:52:04.5762793Z # 검증 3: 버전 정보. 파일 존재만 보면 5001이 잘못된 구 프로세스를
|
||||
2026-07-04T12:52:04.5762940Z # 가리키는 장애를 놓치므로, HTTP 응답이 이번 커밋인지 확인한다.
|
||||
2026-07-04T12:52:04.5763096Z if [ ! -s "\$DEPLOY_DIR/wwwroot/version.json" ]; then
|
||||
2026-07-04T12:52:04.5763233Z echo "❌ version.json 누락" >&2
|
||||
2026-07-04T12:52:04.5763398Z exit 1
|
||||
2026-07-04T12:52:04.5763528Z fi
|
||||
2026-07-04T12:52:04.5763654Z VERSION_JSON=\$(curl -fsS http://127.0.0.1:5001/taxbaik/version.json 2>/dev/null || true)
|
||||
2026-07-04T12:52:04.5763823Z if ! printf '%s' "\$VERSION_JSON" | grep -q "\"version\": \"\$COMMIT\""; then
|
||||
2026-07-04T12:52:04.5763977Z echo "❌ 5001 프록시가 이번 배포 버전을 제공하지 않음" >&2
|
||||
2026-07-04T12:52:04.5764122Z echo " expected: \$COMMIT" >&2
|
||||
2026-07-04T12:52:04.5764261Z echo " actual: \$VERSION_JSON" >&2
|
||||
2026-07-04T12:52:04.5764401Z echo " 확인: 5001 포트가 TaxBaik.Proxy.dll인지, /home/***/taxbaik_port가 새 포트인지 점검" >&2
|
||||
2026-07-04T12:52:04.5764575Z exit 1
|
||||
2026-07-04T12:52:04.5764708Z fi
|
||||
2026-07-04T12:52:04.5764827Z echo "✓ [4/6] 버전 정보 확인 완료"
|
||||
2026-07-04T12:52:04.5764961Z
|
||||
2026-07-04T12:52:04.5765061Z # 검증 4: 5001 프록시 확인
|
||||
2026-07-04T12:52:04.5765196Z if ! ss -tlnp | grep -q ':5001 '; then
|
||||
2026-07-04T12:52:04.5765343Z echo "❌ 5001 프록시가 실행 중이 아님" >&2
|
||||
2026-07-04T12:52:04.5765486Z exit 1
|
||||
2026-07-04T12:52:04.5765610Z fi
|
||||
2026-07-04T12:52:04.5765730Z echo "✓ [5/6] 5001 프록시 확인 완료"
|
||||
2026-07-04T12:52:04.5765870Z
|
||||
2026-07-04T12:52:04.5765986Z # 검증 5: 관리자 로그인 페이지
|
||||
2026-07-04T12:52:04.5766315Z LOGIN_STATUS=\$(curl -fsSL -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/admin/login 2>/dev/null || echo "000")
|
||||
2026-07-04T12:52:04.5766510Z if [ "\$LOGIN_STATUS" != "200" ]; then
|
||||
2026-07-04T12:52:04.5766652Z echo "❌ 관리자 로그인 페이지 로드 실패 (상태: \$LOGIN_STATUS)" >&2
|
||||
2026-07-04T12:52:04.5766809Z exit 1
|
||||
2026-07-04T12:52:04.5766928Z fi
|
||||
2026-07-04T12:52:04.5767049Z echo "✓ [6/6] 관리자 페이지 로드 완료"
|
||||
2026-07-04T12:52:04.5767172Z
|
||||
2026-07-04T12:52:04.5767291Z echo "✓ 서비스 정상 (시도 \$i/\$ATTEMPTS)"
|
||||
2026-07-04T12:52:04.5767439Z # 구 배포 디렉토리 정리 (최근 5개 보존)
|
||||
2026-07-04T12:52:04.5767591Z ls -1dt \$DEPLOY_HOME/deployments/taxbaik_* 2>/dev/null \
|
||||
2026-07-04T12:52:04.5767740Z | tail -n +6 | xargs rm -rf 2>/dev/null || true
|
||||
2026-07-04T12:52:04.5767880Z exit 0
|
||||
2026-07-04T12:52:04.5768010Z fi
|
||||
2026-07-04T12:52:04.5768129Z if [ "\$i" -eq "\$ATTEMPTS" ]; then
|
||||
2026-07-04T12:52:04.5768263Z echo "=== FATAL: 서비스가 \$ATTEMPTS회 시도 후에도 응답하지 않음 ===" >&2
|
||||
2026-07-04T12:52:04.5768450Z echo "--- 5001 listener ---" >&2
|
||||
2026-07-04T12:52:04.5768587Z ss -tlnp 2>/dev/null | grep ':5001 ' >&2 || true
|
||||
2026-07-04T12:52:04.5768666Z echo "--- active port file ---" >&2
|
||||
2026-07-04T12:52:04.5768786Z cat "\$DEPLOY_HOME/taxbaik_port" >&2 || true
|
||||
2026-07-04T12:52:04.5768919Z echo "--- 신규 앱 로그 ---" >&2
|
||||
2026-07-04T12:52:04.5769051Z ACTIVE_PORT=\$(cat "\$DEPLOY_HOME/taxbaik_port" 2>/dev/null | tr -d '[:space:]' || true)
|
||||
2026-07-04T12:52:04.5769205Z if [ -n "\$ACTIVE_PORT" ] && [ -s "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" ]; then
|
||||
2026-07-04T12:52:04.5769305Z tail -n 80 "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" >&2
|
||||
2026-07-04T12:52:04.5769387Z else
|
||||
2026-07-04T12:52:04.5769507Z ls -la "\$DEPLOY_DIR" >&2 || true
|
||||
2026-07-04T12:52:04.5769640Z fi
|
||||
2026-07-04T12:52:04.5769755Z echo "--- proxy 로그 ---" >&2
|
||||
2026-07-04T12:52:04.5769889Z tail -n 80 "\$DEPLOY_HOME/taxbaik_proxy.log" >&2 || true
|
||||
2026-07-04T12:52:04.5770030Z exit 1
|
||||
2026-07-04T12:52:04.5770436Z fi
|
||||
2026-07-04T12:52:04.5770573Z echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)"
|
||||
2026-07-04T12:52:04.5770874Z sleep 3
|
||||
2026-07-04T12:52:04.5771010Z done
|
||||
2026-07-04T12:52:04.5771127Z REMOTE
|
||||
2026-07-04T12:52:04.5771246Z
|
||||
2026-07-04T12:52:04.5771356Z echo "✓ 배포 완료: taxbaik_${TIMESTAMP} @ $DEPLOY_HOST"
|
||||
2026-07-04T12:52:04.5771479Z
|
||||
2026-07-04T12:52:04.5771545Z echo "--- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---"
|
||||
2026-07-04T12:52:04.5771637Z ROOT_URL="https://www.taxbaik.com/" \
|
||||
2026-07-04T12:52:04.5771759Z ADMIN_URL="https://www.taxbaik.com/taxbaik/admin/login" \
|
||||
2026-07-04T12:52:04.5771883Z PUBLIC_MARKER="백원숙 세무회계" \
|
||||
2026-07-04T12:52:04.5771959Z PUBLIC_FORBIDDEN="관리자" \
|
||||
2026-07-04T12:52:04.5772036Z ADMIN_MARKER="관리자 로그인" \
|
||||
2026-07-04T12:52:04.5772120Z MAX_RETRIES=3 \
|
||||
2026-07-04T12:52:04.5772189Z RETRY_SLEEP_SECONDS=5 \
|
||||
2026-07-04T12:52:04.5772309Z bash ./scripts/taxbaik-smoke.sh
|
||||
2026-07-04T12:52:04.5772408Z echo "✓ 실제 공개 도메인 전체 정상"
|
||||
2026-07-04T12:52:04.5772486Z
|
||||
2026-07-04T12:52:04.5772551Z send_telegram "✅ <b>TaxBaik 배포 완료</b>
|
||||
2026-07-04T12:52:04.5772628Z
|
||||
2026-07-04T12:52:04.5772713Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T12:52:04.5772791Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T12:52:04.5772868Z 대상: <code>${DEPLOY_HOST}</code>
|
||||
2026-07-04T12:52:04.5772944Z 채널: <code>${TELEGRAM_CHAT_ID}</code>"
|
||||
2026-07-04T12:52:04.5773021Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:52:04.5773130Z ::endgroup::
|
||||
2026-07-04T12:52:04.6332316Z === Deploying TaxBaik dc86ccf (20260704_215204) ===
|
||||
2026-07-04T12:52:05.3820913Z --- [1/5] 압축 해제 ---
|
||||
2026-07-04T12:52:05.6284914Z --- [2/5] 운영 설정 검증 ---
|
||||
2026-07-04T12:52:05.6285418Z --- [3/5] 마이그레이션 사전 검증 ---
|
||||
2026-07-04T12:52:05.8433051Z Migration dry-run validation passed.
|
||||
2026-07-04T12:52:05.8438859Z --- [4/5] Green-Blue 배포 실행 ---
|
||||
2026-07-04T12:52:05.8509623Z ===== 🚀 TaxBaik Green/Blue Deployment Script =====
|
||||
2026-07-04T12:52:05.8541302Z Active Port: 5003
|
||||
2026-07-04T12:52:05.8541658Z Target Port: 5004
|
||||
2026-07-04T12:52:05.8542047Z Deploy Directory: /home/***/deployments/taxbaik_20260704_215204
|
||||
2026-07-04T12:52:05.9049695Z === Starting New App on Port 5004 ===
|
||||
2026-07-04T12:52:07.9185792Z === Health Checking Port 5004 ===
|
||||
2026-07-04T12:52:08.2035208Z ✓ Health check passed on port 5004 (Attempt 1/20)
|
||||
2026-07-04T12:52:08.2035939Z === Switching Traffic to Port 5004 ===
|
||||
2026-07-04T12:52:08.2039084Z ✓ Traffic routed to 5004 (via TaxBaik.Proxy on 5001)
|
||||
2026-07-04T12:52:08.2041337Z === Stopping Old App on Port 5003 ===
|
||||
2026-07-04T12:52:08.2181936Z Killing old process PID: 4117859
|
||||
2026-07-04T12:52:08.2184795Z ✓ Old process terminated
|
||||
2026-07-04T12:52:08.2192076Z === Cleaning Up Old Deployments ===
|
||||
2026-07-04T12:52:08.2379074Z ✓ Cleanup completed
|
||||
2026-07-04T12:52:08.2379676Z ===== ✅ Green/Blue Deployment Completed Successfully =====
|
||||
2026-07-04T12:52:08.2385094Z --- [4.5/5] Nginx 설정 검증 ---
|
||||
2026-07-04T12:52:08.2436700Z 실제 로드되는 설정 파일: /etc/nginx/sites-available/taxbaik-domains.conf
|
||||
2026-07-04T12:52:08.2509737Z ✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)
|
||||
2026-07-04T12:52:08.2510207Z --- [5/5] 헬스 체크 (최대 60초) ---
|
||||
2026-07-04T12:52:08.2933338Z ✓ [1/6] 헬스 체크 완료
|
||||
2026-07-04T12:52:08.3102145Z ✓ [2/6] 메인 페이지 로드 완료
|
||||
2026-07-04T12:52:08.3324117Z ✓ [3/6] CSS 파일 로드 완료
|
||||
2026-07-04T12:52:08.3445763Z ✓ [4/6] 버전 정보 확인 완료
|
||||
2026-07-04T12:52:08.3544241Z ✓ [5/6] 5001 프록시 확인 완료
|
||||
2026-07-04T12:52:08.3650602Z ✓ [6/6] 관리자 페이지 로드 완료
|
||||
2026-07-04T12:52:08.3651465Z ✓ 서비스 정상 (시도 1/20)
|
||||
2026-07-04T12:52:08.3716219Z ✓ 배포 완료: taxbaik_20260704_215204 @ ***
|
||||
2026-07-04T12:52:08.3716849Z --- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---
|
||||
2026-07-04T12:52:10.5585268Z retrying... (1/3)
|
||||
2026-07-04T12:52:10.5585809Z ✗ https://www.taxbaik.com/ -> body missing required marker: 백원숙 세무회계
|
||||
2026-07-04T12:52:17.6149854Z ✗ https://www.taxbaik.com/ -> body missing required marker: 백원숙 세무회계
|
||||
2026-07-04T12:52:17.6152469Z retrying... (2/3)
|
||||
2026-07-04T12:52:24.5668073Z ✗ https://www.taxbaik.com/ -> body missing required marker: 백원숙 세무회계
|
||||
2026-07-04T12:52:24.5668594Z ✗ smoke verification failed
|
||||
2026-07-04T12:52:24.8198071Z ❌ Failure - Main Deploy & verify on server
|
||||
2026-07-04T12:52:24.8336834Z exitcode '1': failure
|
||||
2026-07-04T12:52:24.8630234Z evaluating expression 'success()'
|
||||
2026-07-04T12:52:24.8631375Z expression 'success()' evaluated to 'false'
|
||||
2026-07-04T12:52:24.8631585Z Skipping step 'Setup .NET' due to 'success()'
|
||||
2026-07-04T12:52:24.8839000Z evaluating expression 'always()'
|
||||
2026-07-04T12:52:24.8839624Z expression 'always()' evaluated to 'true'
|
||||
2026-07-04T12:52:24.8839784Z ⭐ Run Post Checkout code
|
||||
2026-07-04T12:52:24.8839977Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T12:52:24.8840143Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T12:52:24.8840244Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T12:52:24.8840333Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T12:52:24.8840411Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T12:52:24.8840523Z Extracting content to '/var/run/act'
|
||||
2026-07-04T12:52:24.8865590Z run post step for 'Checkout code'
|
||||
2026-07-04T12:52:24.8866457Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-07-04T12:52:24.9112212Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-07-04T12:52:24.9112610Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-07-04T12:52:24.9113018Z Working directory '/workspace/***/taxbaik'
|
||||
2026-07-04T12:52:25.1573902Z [command]/usr/bin/git version
|
||||
2026-07-04T12:52:25.1613809Z git version 2.54.0
|
||||
2026-07-04T12:52:25.1650128Z ***
|
||||
2026-07-04T12:52:25.1677928Z Temporarily overriding HOME='/tmp/daa4130a-b951-44ca-9bf6-2a832ad8d592' before making global git config changes
|
||||
2026-07-04T12:52:25.1678247Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T12:52:25.1680429Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T12:52:25.1715854Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T12:52:25.1760614Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T12:52:25.1997273Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T12:52:25.2020534Z http.http://gitea:3000/.extraheader
|
||||
2026-07-04T12:52:25.2034486Z [command]/usr/bin/git config --local --unset-all http.http://gitea:3000/.extraheader
|
||||
2026-07-04T12:52:25.2067074Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T12:52:25.2313893Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T12:52:25.2344461Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T12:52:25.2706764Z ✅ Success - Post Checkout code
|
||||
2026-07-04T12:52:25.2810331Z Cleaning up container for job build-and-deploy
|
||||
2026-07-04T12:52:25.6754704Z Removed container: 7fdc784e6b95f4a2f3a7139414bcbaeff9754c0efd147950d7f0357c1b99e6c6
|
||||
2026-07-04T12:52:25.6765166Z 🐳 docker volume rm GITEA-ACTIONS-TASK-1550-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-d1b621a7a13ad682fe29533e6a28b6835590d0898313b1b9fc5be41b5870455c
|
||||
2026-07-04T12:52:25.7686731Z 🐳 docker volume rm GITEA-ACTIONS-TASK-1550-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-d1b621a7a13ad682fe29533e6a28b6835590d0898313b1b9fc5be41b5870455c-env
|
||||
2026-07-04T12:52:25.8187706Z 🏁 Job failed
|
||||
2026-07-04T12:52:25.8314043Z Job 'build-and-deploy' failed
|
||||
+944
@@ -0,0 +1,944 @@
|
||||
2026-07-04T12:55:56.4615511Z hz-prod-runner-2(version:v0.6.1) received task 1552 of job build-and-deploy, be triggered by event: push
|
||||
2026-07-04T12:55:56.4637712Z workflow prepared
|
||||
2026-07-04T12:55:56.4638531Z evaluating expression 'success()'
|
||||
2026-07-04T12:55:56.4639250Z expression 'success()' evaluated to 'true'
|
||||
2026-07-04T12:55:56.4639410Z 🚀 Start image=docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T12:55:56.4717320Z 🐳 docker pull image=docker.gitea.com/runner-images:ubuntu-latest platform= username= forcePull=false
|
||||
2026-07-04T12:55:56.4717578Z 🐳 docker pull docker.gitea.com/runner-images:ubuntu-latest
|
||||
2026-07-04T12:55:56.4972676Z Image exists? true
|
||||
2026-07-04T12:55:56.5450519Z 🐳 docker create image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T12:55:56.6404647Z Created container name=GITEA-ACTIONS-TASK-1552-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-ab2d1e70739a3063f448d1e9d12be855fbd02428b801ec092546b895bdf5c88d id=545d203ee9994ebf9eca9357f948b418a29c0a80f13c2d69e6b64ca3d86d4b5b from image docker.gitea.com/runner-images:ubuntu-latest (platform: )
|
||||
2026-07-04T12:55:56.6405073Z ENV ==> [RUNNER_TOOL_CACHE=/opt/hostedtoolcache RUNNER_OS=Linux RUNNER_ARCH=X64 RUNNER_TEMP=/tmp LANG=C.UTF-8]
|
||||
2026-07-04T12:55:56.6405231Z 🐳 docker run image=docker.gitea.com/runner-images:ubuntu-latest platform= entrypoint=["/bin/sleep" "10800"] cmd=[] network="gitea_default"
|
||||
2026-07-04T12:55:56.6405352Z Starting container: 545d203ee9994ebf9eca9357f948b418a29c0a80f13c2d69e6b64ca3d86d4b5b
|
||||
2026-07-04T12:55:56.8160318Z Started container: 545d203ee9994ebf9eca9357f948b418a29c0a80f13c2d69e6b64ca3d86d4b5b
|
||||
2026-07-04T12:55:56.9278346Z Writing entry to tarball workflow/event.json len:4744
|
||||
2026-07-04T12:55:56.9278912Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T12:55:56.9279089Z Extracting content to '/var/run/act/'
|
||||
2026-07-04T12:55:56.9554266Z ☁ git clone 'https://github.com/actions/checkout' # ref=v4
|
||||
2026-07-04T12:55:56.9554640Z cloning https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T12:55:57.7778122Z Unable to pull refs/heads/v4: non-fast-forward update
|
||||
2026-07-04T12:55:57.7778594Z Cloned https://github.com/actions/checkout to /root/.cache/act/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab
|
||||
2026-07-04T12:55:57.7935665Z Checked out v4
|
||||
2026-07-04T12:55:57.8047363Z ☁ git clone 'https://github.com/actions/setup-dotnet' # ref=v4
|
||||
2026-07-04T12:55:57.8048149Z cloning https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T12:55:58.3258730Z Unable to pull refs/heads/v4: worktree contains unstaged changes
|
||||
2026-07-04T12:55:58.3259204Z Cloned https://github.com/actions/setup-dotnet to /root/.cache/act/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336
|
||||
2026-07-04T12:55:58.3442763Z Checked out v4
|
||||
2026-07-04T12:55:58.3705741Z evaluating expression ''
|
||||
2026-07-04T12:55:58.3706586Z expression '' evaluated to 'true'
|
||||
2026-07-04T12:55:58.3706713Z ⭐ Run Main Checkout code
|
||||
2026-07-04T12:55:58.3706901Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T12:55:58.3707051Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T12:55:58.3707153Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T12:55:58.3707264Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T12:55:58.3707351Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T12:55:58.3707451Z Extracting content to '/var/run/act'
|
||||
2026-07-04T12:55:58.3748068Z ::group::Run Checkout code
|
||||
2026-07-04T12:55:58.9258868Z ::add-matcher::/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/problem-matcher.json
|
||||
2026-07-04T12:55:58.9264682Z Syncing repository: ***/taxbaik
|
||||
2026-07-04T12:55:58.9272267Z ::group::Getting Git version info
|
||||
2026-07-04T12:55:58.9272441Z Working directory is '/workspace/***/taxbaik'
|
||||
2026-07-04T12:55:58.9311321Z [command]/usr/bin/git version
|
||||
2026-07-04T12:55:58.9387081Z git version 2.54.0
|
||||
2026-07-04T12:55:58.9458330Z ::endgroup::
|
||||
2026-07-04T12:55:58.9480820Z Temporarily overriding HOME='/tmp/2e7b254c-3300-4ed7-b3ac-5e0628723e83' before making global git config changes
|
||||
2026-07-04T12:55:58.9482460Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T12:55:58.9497103Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T12:55:58.9544269Z Deleting the contents of '/workspace/***/taxbaik'
|
||||
2026-07-04T12:55:58.9576838Z ::group::Initializing the repository
|
||||
2026-07-04T12:55:58.9588388Z [command]/usr/bin/git init /workspace/***/taxbaik
|
||||
2026-07-04T12:55:58.9715154Z hint: Using 'master' as the name for the initial branch. This default branch name
|
||||
2026-07-04T12:55:58.9728629Z hint: will change to "main" in Git 3.0. To configure the initial branch name
|
||||
2026-07-04T12:55:58.9729225Z hint: to use in all of your new repositories, which will suppress this warning,
|
||||
2026-07-04T12:55:58.9729399Z hint: call:
|
||||
2026-07-04T12:55:58.9729772Z hint:
|
||||
2026-07-04T12:55:58.9729859Z hint: git config --global init.defaultBranch <name>
|
||||
2026-07-04T12:55:58.9729946Z hint:
|
||||
2026-07-04T12:55:58.9730097Z hint: Names commonly chosen instead of 'master' are 'main', 'trunk' and
|
||||
2026-07-04T12:55:58.9730184Z hint: 'development'. The just-created branch can be renamed via this command:
|
||||
2026-07-04T12:55:58.9730499Z hint:
|
||||
2026-07-04T12:55:58.9730665Z hint: git branch -m <name>
|
||||
2026-07-04T12:55:58.9730770Z hint:
|
||||
2026-07-04T12:55:58.9730838Z hint: Disable this message with "git config set advice.defaultBranchName false"
|
||||
2026-07-04T12:55:58.9730925Z Initialized empty Git repository in /workspace/***/taxbaik/.git/
|
||||
2026-07-04T12:55:58.9834190Z [command]/usr/bin/git remote add origin http://gitea:3000/***/taxbaik
|
||||
2026-07-04T12:55:58.9916667Z ::endgroup::
|
||||
2026-07-04T12:55:58.9917174Z ::group::Disabling automatic garbage collection
|
||||
2026-07-04T12:55:58.9928398Z [command]/usr/bin/git config --local gc.auto 0
|
||||
2026-07-04T12:55:58.9992137Z ::endgroup::
|
||||
2026-07-04T12:55:58.9992625Z ::group::Setting up auth
|
||||
2026-07-04T12:55:58.9992804Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T12:55:59.0031077Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T12:55:59.0510927Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T12:55:59.0554440Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T12:55:59.0907354Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T12:55:59.0920983Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T12:55:59.1162021Z [command]/usr/bin/git config --local http.http://gitea:3000/.extraheader AUTHORIZATION: basic ***
|
||||
2026-07-04T12:55:59.1196020Z ::endgroup::
|
||||
2026-07-04T12:55:59.1196454Z ::group::Fetching the repository
|
||||
2026-07-04T12:55:59.1210231Z [command]/usr/bin/git -c protocol.version=2 fetch --no-tags --prune --no-recurse-submodules --depth=1 origin +c00d237a4d2716bc22cf06f053a807cd7a45f200:refs/remotes/origin/master
|
||||
2026-07-04T12:56:01.5767577Z From http://gitea:3000/***/taxbaik
|
||||
2026-07-04T12:56:01.5768075Z * [new ref] c00d237a4d2716bc22cf06f053a807cd7a45f200 -> origin/master
|
||||
2026-07-04T12:56:01.5798239Z ::endgroup::
|
||||
2026-07-04T12:56:01.5798671Z ::group::Determining the checkout info
|
||||
2026-07-04T12:56:01.5801467Z ::endgroup::
|
||||
2026-07-04T12:56:01.5808449Z [command]/usr/bin/git sparse-checkout disable
|
||||
2026-07-04T12:56:01.5862591Z [command]/usr/bin/git config --local --unset-all extensions.worktreeConfig
|
||||
2026-07-04T12:56:01.5900860Z ::group::Checking out the ref
|
||||
2026-07-04T12:56:01.5907120Z [command]/usr/bin/git checkout --progress --force -B master refs/remotes/origin/master
|
||||
2026-07-04T12:56:02.4699566Z Reset branch 'master'
|
||||
2026-07-04T12:56:02.4847933Z branch 'master' set up to track 'origin/master'.
|
||||
2026-07-04T12:56:02.4849782Z ::endgroup::
|
||||
2026-07-04T12:56:02.4886004Z [command]/usr/bin/git log -1 --format=%H
|
||||
2026-07-04T12:56:02.4952462Z c00d237a4d2716bc22cf06f053a807cd7a45f200
|
||||
2026-07-04T12:56:02.4994673Z ::remove-matcher owner=checkout-git::
|
||||
2026-07-04T12:56:02.5182273Z ::endgroup::
|
||||
2026-07-04T12:56:02.5668549Z ::group::Run Setup .NET
|
||||
2026-07-04T12:56:02.5669115Z with:
|
||||
2026-07-04T12:56:02.5669224Z dotnet-version: 10.0
|
||||
2026-07-04T12:56:03.6548348Z (node:141) [DEP0040] DeprecationWarning: The `punycode` module is deprecated. Please use a userland alternative instead.
|
||||
2026-07-04T12:56:03.6548980Z (Use `node --trace-deprecation ...` to show where the warning was created)
|
||||
2026-07-04T12:56:03.6690381Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --runtime dotnet --channel LTS
|
||||
2026-07-04T12:56:04.3566016Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T12:56:04.7466768Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz size is 36606251 bytes.
|
||||
2026-07-04T12:56:04.7467352Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Runtime/10.0.9/dotnet-runtime-10.0.9-linux-x64.tar.gz
|
||||
2026-07-04T12:56:06.0871997Z dotnet-install: Downloaded file size is 36606251 bytes.
|
||||
2026-07-04T12:56:06.0872663Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T12:56:06.1077477Z dotnet-install: Installed version is 10.0.9
|
||||
2026-07-04T12:56:06.1177302Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T12:56:06.1177905Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T12:56:06.1178042Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T12:56:06.1178186Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T12:56:06.1212465Z [command]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/externals/install-dotnet.sh --skip-non-versioned-files --channel 10.0
|
||||
2026-07-04T12:56:06.5612026Z dotnet-install: Attempting to download using aka.ms link https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T12:56:07.8777550Z dotnet-install: Remote file https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz size is 235086718 bytes.
|
||||
2026-07-04T12:56:07.8778105Z dotnet-install: Extracting archive from https://builds.dotnet.microsoft.com/dotnet/Sdk/10.0.301/dotnet-sdk-10.0.301-linux-x64.tar.gz
|
||||
2026-07-04T12:56:15.9574962Z dotnet-install: Downloaded file size is 235086718 bytes.
|
||||
2026-07-04T12:56:15.9575450Z dotnet-install: The remote and local file sizes are equal.
|
||||
2026-07-04T12:56:16.4216427Z dotnet-install: Installed version is 10.0.301
|
||||
2026-07-04T12:56:16.4608895Z dotnet-install: Adding to current process PATH: `/usr/share/dotnet`. Note: This change will be visible only when sourcing script.
|
||||
2026-07-04T12:56:16.4609480Z dotnet-install: Note that the script does not resolve dependencies during installation.
|
||||
2026-07-04T12:56:16.4609633Z dotnet-install: To check the list of dependencies, go to https://learn.microsoft.com/dotnet/core/install, select your operating system and check the "Dependencies" section.
|
||||
2026-07-04T12:56:16.4609773Z dotnet-install: Installation finished successfully.
|
||||
2026-07-04T12:56:16.4610111Z ##[add-matcher]/run/act/actions/2d637816dd86ec9ff59dad9ec3547bf90b88133b3029538a91ec96ac7f316336/.github/csc.json
|
||||
2026-07-04T12:56:16.4838195Z ::endgroup::
|
||||
2026-07-04T12:56:16.6836471Z ::group::Run dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T12:56:16.6836809Z dotnet restore src/TaxBaik.sln
|
||||
2026-07-04T12:56:16.6836915Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:56:16.6837057Z ::endgroup::
|
||||
2026-07-04T12:56:17.1062566Z
|
||||
2026-07-04T12:56:17.1063187Z Welcome to .NET 10.0!
|
||||
2026-07-04T12:56:17.1063335Z ---------------------
|
||||
2026-07-04T12:56:17.1063423Z SDK Version: 10.0.301
|
||||
2026-07-04T12:56:17.1063509Z
|
||||
2026-07-04T12:56:17.1063586Z Telemetry
|
||||
2026-07-04T12:56:17.1063723Z ---------
|
||||
2026-07-04T12:56:17.1063814Z The .NET tools collect usage data in order to help us improve your experience. It is collected by Microsoft and shared with the community. You can opt-out of telemetry by setting the DOTNET_CLI_TELEMETRY_OPTOUT environment variable to '1' or 'true' using your favorite shell.
|
||||
2026-07-04T12:56:17.1063988Z
|
||||
2026-07-04T12:56:17.1064082Z Read more about .NET CLI Tools telemetry: https://aka.ms/dotnet-cli-telemetry
|
||||
2026-07-04T12:56:17.7956740Z
|
||||
2026-07-04T12:56:17.7957774Z ----------------
|
||||
2026-07-04T12:56:17.7958124Z Installed an ASP.NET Core HTTPS development certificate.
|
||||
2026-07-04T12:56:17.7958509Z To trust the certificate, run 'dotnet dev-certs https --trust'
|
||||
2026-07-04T12:56:17.7958698Z Learn about HTTPS: https://aka.ms/dotnet-https
|
||||
2026-07-04T12:56:17.7958830Z
|
||||
2026-07-04T12:56:17.7959148Z ----------------
|
||||
2026-07-04T12:56:17.7959321Z Write your first app: https://aka.ms/dotnet-hello-world
|
||||
2026-07-04T12:56:17.7959481Z Find out what's new: https://aka.ms/dotnet-whats-new
|
||||
2026-07-04T12:56:17.7959628Z Explore documentation: https://aka.ms/dotnet-docs
|
||||
2026-07-04T12:56:17.7959926Z Report issues and find source on GitHub: https://github.com/dotnet/core
|
||||
2026-07-04T12:56:17.7960053Z Use 'dotnet --help' to see available commands or visit: https://aka.ms/dotnet-cli
|
||||
2026-07-04T12:56:17.7962047Z --------------------------------------------------------------------------------------
|
||||
2026-07-04T12:56:20.9087685Z Determining projects to restore...
|
||||
2026-07-04T12:56:30.8926957Z Restored /workspace/***/taxbaik/src/TaxBaik.Infrastructure/TaxBaik.Infrastructure.csproj (in 6.9 sec).
|
||||
2026-07-04T12:56:30.9025803Z Restored /workspace/***/taxbaik/src/TaxBaik.Web/TaxBaik.Web.csproj (in 6.89 sec).
|
||||
2026-07-04T12:56:30.9698454Z Restored /workspace/***/taxbaik/src/TaxBaik.Domain/TaxBaik.Domain.csproj (in 2 ms).
|
||||
2026-07-04T12:56:31.4466553Z Restored /workspace/***/taxbaik/src/TaxBaik.Application/TaxBaik.Application.csproj (in 444 ms).
|
||||
2026-07-04T12:56:37.8960870Z Restored /workspace/***/taxbaik/src/TaxBaik.Application.Tests/TaxBaik.Application.Tests.csproj (in 6.43 sec).
|
||||
2026-07-04T12:56:38.1253187Z Restored /workspace/***/taxbaik/src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj (in 7.21 sec).
|
||||
2026-07-04T12:56:38.3047389Z ::group::Run dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:56:38.3047747Z dotnet build src/TaxBaik.sln -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:56:38.3047878Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:56:38.3047984Z ::endgroup::
|
||||
2026-07-04T12:56:47.5523499Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:56:53.8139393Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:56:56.3263776Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T12:57:41.2956856Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:57:41.2957970Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Debug/net10.0/wwwroot
|
||||
2026-07-04T12:57:54.4727116Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T12:57:56.1020240Z TaxBaik.Application.Tests -> /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll
|
||||
2026-07-04T12:57:56.1185508Z
|
||||
2026-07-04T12:57:56.1186502Z Build succeeded.
|
||||
2026-07-04T12:57:56.1187397Z 0 Warning(s)
|
||||
2026-07-04T12:57:56.1187565Z 0 Error(s)
|
||||
2026-07-04T12:57:56.1187859Z
|
||||
2026-07-04T12:57:56.1187992Z Time Elapsed 00:01:17.28
|
||||
2026-07-04T12:57:56.3442702Z ::group::Run dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T12:57:56.3443052Z dotnet test src/TaxBaik.sln -c Release --no-build
|
||||
2026-07-04T12:57:56.3443177Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:57:56.3443278Z ::endgroup::
|
||||
2026-07-04T12:58:00.2708385Z Test run for /workspace/***/taxbaik/src/TaxBaik.Application.Tests/bin/Release/net10.0/TaxBaik.Application.Tests.dll (.NETCoreApp,Version=v10.0)
|
||||
2026-07-04T12:58:01.4967596Z A total of 1 test files matched the specified pattern.
|
||||
2026-07-04T12:58:08.9229118Z
|
||||
2026-07-04T12:58:08.9419846Z Passed! - Failed: 0, Passed: 26, Skipped: 0, Total: 26, Duration: 547 ms - TaxBaik.Application.Tests.dll (net10.0)
|
||||
2026-07-04T12:58:09.4829427Z ::group::Run set -e
|
||||
2026-07-04T12:58:09.4829769Z set -e
|
||||
2026-07-04T12:58:09.4829932Z mkdir -p ./publish-logs
|
||||
2026-07-04T12:58:09.4830025Z web_log="./publish-logs/publish-web.log"
|
||||
2026-07-04T12:58:09.4830116Z start=$(date +%s)
|
||||
2026-07-04T12:58:09.4830216Z # Web.Client needs a Release static-web-assets manifest for Web publish.
|
||||
2026-07-04T12:58:09.4830322Z # Build it explicitly so publish can reuse the prepared outputs.
|
||||
2026-07-04T12:58:09.4830419Z dotnet build src/TaxBaik.Web.Client/TaxBaik.Web.Client.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:58:09.4830524Z # Build the Web host in Release as well so publish has the same inputs
|
||||
2026-07-04T12:58:09.4830643Z # the server uses in production.
|
||||
2026-07-04T12:58:09.4830726Z dotnet build src/TaxBaik.Web/TaxBaik.Web.csproj -c Release --no-restore -p:ContinuousIntegrationBuild=true
|
||||
2026-07-04T12:58:09.4830819Z echo "--- Web.Client Release artifacts ---"
|
||||
2026-07-04T12:58:09.4830932Z ls -la src/TaxBaik.Web.Client/bin/Release/net10.0 || true
|
||||
2026-07-04T12:58:09.4831022Z ls -la src/TaxBaik.Web.Client/obj/Release/net10.0 || true
|
||||
2026-07-04T12:58:09.4831103Z if ! dotnet publish src/TaxBaik.Web/ \
|
||||
2026-07-04T12:58:09.4831188Z -c Release \
|
||||
2026-07-04T12:58:09.4831285Z -o ./publish \
|
||||
2026-07-04T12:58:09.4831373Z --no-restore \
|
||||
2026-07-04T12:58:09.4831449Z -p:SelfContained=false \
|
||||
2026-07-04T12:58:09.4831732Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T12:58:09.4831866Z -p:PerformanceSummary=true \
|
||||
2026-07-04T12:58:09.4831988Z -clp:Summary \
|
||||
2026-07-04T12:58:09.4832113Z -bl:"./publish-logs/publish-web.binlog" >"$web_log" 2>&1; then
|
||||
2026-07-04T12:58:09.4832289Z echo "=== Publish Web failed; tailing log ==="
|
||||
2026-07-04T12:58:09.4832414Z tail -n 120 "$web_log" || true
|
||||
2026-07-04T12:58:09.4832535Z exit 1
|
||||
2026-07-04T12:58:09.4832795Z fi
|
||||
2026-07-04T12:58:09.4832909Z end=$(date +%s)
|
||||
2026-07-04T12:58:09.4833051Z echo "✓ Publish Web elapsed: $((end - start))s"
|
||||
2026-07-04T12:58:09.4833195Z ls -lh ./publish-logs/publish-web.binlog
|
||||
2026-07-04T12:58:09.4833380Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T12:58:09.4833512Z ::endgroup::
|
||||
2026-07-04T12:58:15.0626337Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:58:16.0646936Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:58:43.1637915Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:58:43.1638555Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T12:58:43.2125386Z
|
||||
2026-07-04T12:58:43.2137113Z Build succeeded.
|
||||
2026-07-04T12:58:43.2137638Z 0 Warning(s)
|
||||
2026-07-04T12:58:43.2137752Z 0 Error(s)
|
||||
2026-07-04T12:58:43.2137837Z
|
||||
2026-07-04T12:58:43.2137937Z Time Elapsed 00:00:31.72
|
||||
2026-07-04T12:58:46.1821154Z TaxBaik.Domain -> /workspace/***/taxbaik/src/TaxBaik.Domain/bin/Release/net10.0/TaxBaik.Domain.dll
|
||||
2026-07-04T12:58:46.3588108Z TaxBaik.Infrastructure -> /workspace/***/taxbaik/src/TaxBaik.Infrastructure/bin/Release/net10.0/TaxBaik.Infrastructure.dll
|
||||
2026-07-04T12:58:47.0759678Z TaxBaik.Application -> /workspace/***/taxbaik/src/TaxBaik.Application/bin/Release/net10.0/TaxBaik.Application.dll
|
||||
2026-07-04T12:58:51.7209180Z TaxBaik.Web.Client -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:58:51.7249991Z TaxBaik.Web.Client (Blazor output) -> /workspace/***/taxbaik/src/TaxBaik.Web.Client/bin/Release/net10.0/wwwroot
|
||||
2026-07-04T12:59:06.8811243Z TaxBaik.Web -> /workspace/***/taxbaik/src/TaxBaik.Web/bin/Release/net10.0/TaxBaik.Web.dll
|
||||
2026-07-04T12:59:06.9584686Z
|
||||
2026-07-04T12:59:06.9595915Z Build succeeded.
|
||||
2026-07-04T12:59:06.9663358Z 0 Warning(s)
|
||||
2026-07-04T12:59:06.9664940Z 0 Error(s)
|
||||
2026-07-04T12:59:06.9667639Z
|
||||
2026-07-04T12:59:06.9727168Z Time Elapsed 00:00:23.15
|
||||
2026-07-04T12:59:07.2928672Z --- Web.Client Release artifacts ---
|
||||
2026-07-04T12:59:07.2995244Z total 42056
|
||||
2026-07-04T12:59:07.2995608Z drwxr-xr-x 3 root root 20480 Jul 4 12:58 .
|
||||
2026-07-04T12:59:07.2995883Z drwxr-xr-x 3 root root 4096 Jul 4 12:58 ..
|
||||
2026-07-04T12:59:07.2996012Z -rwxr--r-- 1 root root 55632 May 20 20:19 Microsoft.AspNetCore.Authorization.dll
|
||||
2026-07-04T12:59:07.2996353Z -rwxr--r-- 1 root root 34128 May 20 20:19 Microsoft.AspNetCore.Components.Authorization.dll
|
||||
2026-07-04T12:59:07.2996466Z -rwxr--r-- 1 root root 47952 May 20 20:19 Microsoft.AspNetCore.Components.Forms.dll
|
||||
2026-07-04T12:59:07.2996556Z -rwxr--r-- 1 root root 189264 May 20 20:19 Microsoft.AspNetCore.Components.Web.dll
|
||||
2026-07-04T12:59:07.2996643Z -rwxr--r-- 1 root root 166736 May 20 20:20 Microsoft.AspNetCore.Components.WebAssembly.dll
|
||||
2026-07-04T12:59:07.2996769Z -rwxr--r-- 1 root root 399184 May 20 20:19 Microsoft.AspNetCore.Components.dll
|
||||
2026-07-04T12:59:07.2996860Z -rwxr--r-- 1 root root 16208 May 20 20:18 Microsoft.AspNetCore.Metadata.dll
|
||||
2026-07-04T12:59:07.2997106Z -rwxr--r-- 1 root root 19248 Dec 12 2025 Microsoft.Bcl.Cryptography.dll
|
||||
2026-07-04T12:59:07.2997201Z -rwxr--r-- 1 root root 311632 May 20 18:30 Microsoft.CSharp.dll
|
||||
2026-07-04T12:59:07.2997298Z -rwxr--r-- 1 root root 38192 Oct 24 2025 Microsoft.Extensions.Caching.Abstractions.dll
|
||||
2026-07-04T12:59:07.2997390Z -rwxr--r-- 1 root root 28496 May 20 19:29 Microsoft.Extensions.Configuration.Abstractions.dll
|
||||
2026-07-04T12:59:07.2997500Z -rwxr--r-- 1 root root 43344 May 20 19:32 Microsoft.Extensions.Configuration.Binder.dll
|
||||
2026-07-04T12:59:07.2997593Z -rwxr--r-- 1 root root 28496 May 20 19:34 Microsoft.Extensions.Configuration.FileExtensions.dll
|
||||
2026-07-04T12:59:07.2997681Z -rwxr--r-- 1 root root 27984 May 20 19:36 Microsoft.Extensions.Configuration.Json.dll
|
||||
2026-07-04T12:59:07.2997903Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Configuration.dll
|
||||
2026-07-04T12:59:07.2997993Z -rwxr--r-- 1 root root 65872 May 20 19:29 Microsoft.Extensions.DependencyInjection.Abstractions.dll
|
||||
2026-07-04T12:59:07.2998083Z -rwxr--r-- 1 root root 95568 May 20 19:30 Microsoft.Extensions.DependencyInjection.dll
|
||||
2026-07-04T12:59:07.2998186Z -rwxr--r-- 1 root root 31056 May 20 19:32 Microsoft.Extensions.Diagnostics.Abstractions.dll
|
||||
2026-07-04T12:59:07.2998272Z -rwxr--r-- 1 root root 36176 May 20 19:34 Microsoft.Extensions.Diagnostics.dll
|
||||
2026-07-04T12:59:07.2998461Z -rwxr--r-- 1 root root 23376 May 20 19:29 Microsoft.Extensions.FileProviders.Abstractions.dll
|
||||
2026-07-04T12:59:07.2998731Z -rwxr--r-- 1 root root 45392 May 20 19:33 Microsoft.Extensions.FileProviders.Physical.dll
|
||||
2026-07-04T12:59:07.2998823Z -rwxr--r-- 1 root root 47952 May 20 19:30 Microsoft.Extensions.FileSystemGlobbing.dll
|
||||
2026-07-04T12:59:07.2998932Z -rwxr--r-- 1 root root 93008 May 20 19:37 Microsoft.Extensions.Http.dll
|
||||
2026-07-04T12:59:07.2999016Z -rwxr--r-- 1 root root 19576 Mar 25 2023 Microsoft.Extensions.Localization.Abstractions.dll
|
||||
2026-07-04T12:59:07.2999099Z -rwxr--r-- 1 root root 31872 Mar 25 2023 Microsoft.Extensions.Localization.dll
|
||||
2026-07-04T12:59:07.2999184Z -rwxr--r-- 1 root root 66896 May 20 19:29 Microsoft.Extensions.Logging.Abstractions.dll
|
||||
2026-07-04T12:59:07.2999292Z -rwxr--r-- 1 root root 51536 May 20 19:33 Microsoft.Extensions.Logging.dll
|
||||
2026-07-04T12:59:07.2999529Z -rwxr--r-- 1 root root 21840 May 20 19:33 Microsoft.Extensions.Options.ConfigurationExtensions.dll
|
||||
2026-07-04T12:59:07.2999620Z -rwxr--r-- 1 root root 65360 May 20 19:30 Microsoft.Extensions.Options.dll
|
||||
2026-07-04T12:59:07.2999737Z -rwxr--r-- 1 root root 44880 May 20 19:29 Microsoft.Extensions.Primitives.dll
|
||||
2026-07-04T12:59:07.2999839Z -rwxr--r-- 1 root root 43344 May 20 20:19 Microsoft.Extensions.Validation.dll
|
||||
2026-07-04T12:59:07.2999920Z -rwxr--r-- 1 root root 19296 Jun 2 20:51 Microsoft.IdentityModel.Abstractions.dll
|
||||
2026-07-04T12:59:07.3000007Z -rwxr--r-- 1 root root 172856 Jun 2 20:52 Microsoft.IdentityModel.JsonWebTokens.dll
|
||||
2026-07-04T12:59:07.3000449Z -rwxr--r-- 1 root root 38200 Jun 2 20:51 Microsoft.IdentityModel.Logging.dll
|
||||
2026-07-04T12:59:07.3000602Z -rwxr--r-- 1 root root 407352 Jun 2 20:51 Microsoft.IdentityModel.Tokens.dll
|
||||
2026-07-04T12:59:07.3000692Z -rwxr--r-- 1 root root 24912 May 20 20:20 Microsoft.JSInterop.WebAssembly.dll
|
||||
2026-07-04T12:59:07.3000807Z -rwxr--r-- 1 root root 75088 May 20 20:19 Microsoft.JSInterop.dll
|
||||
2026-07-04T12:59:07.3000896Z -rwxr--r-- 1 root root 428880 May 20 18:30 Microsoft.VisualBasic.Core.dll
|
||||
2026-07-04T12:59:07.3000979Z -rwxr--r-- 1 root root 17232 May 20 18:31 Microsoft.VisualBasic.dll
|
||||
2026-07-04T12:59:07.3001230Z -rwxr--r-- 1 root root 15696 May 20 18:29 Microsoft.Win32.Primitives.dll
|
||||
2026-07-04T12:59:07.3001364Z -rwxr--r-- 1 root root 33104 May 20 18:29 Microsoft.Win32.Registry.dll
|
||||
2026-07-04T12:59:07.3001452Z -rwxr--r-- 1 root root 9108480 Sep 14 2023 MudBlazor.dll
|
||||
2026-07-04T12:59:07.3001536Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.AppContext.dll
|
||||
2026-07-04T12:59:07.3001639Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Buffers.dll
|
||||
2026-07-04T12:59:07.3001876Z -rwxr--r-- 1 root root 88912 May 20 18:29 System.Collections.Concurrent.dll
|
||||
2026-07-04T12:59:07.3002141Z -rwxr--r-- 1 root root 251216 May 20 18:29 System.Collections.Immutable.dll
|
||||
2026-07-04T12:59:07.3002230Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.NonGeneric.dll
|
||||
2026-07-04T12:59:07.3002356Z -rwxr--r-- 1 root root 47952 May 20 18:29 System.Collections.Specialized.dll
|
||||
2026-07-04T12:59:07.3011962Z -rwxr--r-- 1 root root 112976 May 20 18:28 System.Collections.dll
|
||||
2026-07-04T12:59:07.3012179Z -rwxr--r-- 1 root root 102736 May 20 18:31 System.ComponentModel.Annotations.dll
|
||||
2026-07-04T12:59:07.3012338Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ComponentModel.DataAnnotations.dll
|
||||
2026-07-04T12:59:07.3012446Z -rwxr--r-- 1 root root 26448 May 20 18:29 System.ComponentModel.EventBasedAsync.dll
|
||||
2026-07-04T12:59:07.3012536Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.ComponentModel.Primitives.dll
|
||||
2026-07-04T12:59:07.3012797Z -rwxr--r-- 1 root root 316752 May 20 18:31 System.ComponentModel.TypeConverter.dll
|
||||
2026-07-04T12:59:07.3012938Z -rwxr--r-- 1 root root 16208 May 20 18:29 System.ComponentModel.dll
|
||||
2026-07-04T12:59:07.3013028Z -rwxr--r-- 1 root root 19280 May 20 18:31 System.Configuration.dll
|
||||
2026-07-04T12:59:07.3013114Z -rwxr--r-- 1 root root 54096 May 20 18:31 System.Console.dll
|
||||
2026-07-04T12:59:07.3013209Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Core.dll
|
||||
2026-07-04T12:59:07.3013292Z -rwxr--r-- 1 root root 1018192 May 20 18:31 System.Data.Common.dll
|
||||
2026-07-04T12:59:07.3013385Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Data.DataSetExtensions.dll
|
||||
2026-07-04T12:59:07.3013632Z -rwxr--r-- 1 root root 25424 May 20 18:31 System.Data.dll
|
||||
2026-07-04T12:59:07.3013742Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Diagnostics.Contracts.dll
|
||||
2026-07-04T12:59:07.3013844Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Diagnostics.Debug.dll
|
||||
2026-07-04T12:59:07.3013934Z -rwxr--r-- 1 root root 202576 May 20 18:29 System.Diagnostics.DiagnosticSource.dll
|
||||
2026-07-04T12:59:07.3014028Z -rwxr--r-- 1 root root 22864 May 20 18:29 System.Diagnostics.FileVersionInfo.dll
|
||||
2026-07-04T12:59:07.3014112Z -rwxr--r-- 1 root root 56656 May 20 18:29 System.Diagnostics.Process.dll
|
||||
2026-07-04T12:59:07.3014195Z -rwxr--r-- 1 root root 25936 May 20 18:29 System.Diagnostics.StackTrace.dll
|
||||
2026-07-04T12:59:07.3014435Z -rwxr--r-- 1 root root 31568 May 20 18:31 System.Diagnostics.TextWriterTraceListener.dll
|
||||
2026-07-04T12:59:07.3014564Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Diagnostics.Tools.dll
|
||||
2026-07-04T12:59:07.3014656Z -rwxr--r-- 1 root root 58704 May 20 18:29 System.Diagnostics.TraceSource.dll
|
||||
2026-07-04T12:59:07.3014763Z -rwxr--r-- 1 root root 16208 May 20 18:28 System.Diagnostics.Tracing.dll
|
||||
2026-07-04T12:59:07.3014864Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Drawing.Primitives.dll
|
||||
2026-07-04T12:59:07.3014949Z -rwxr--r-- 1 root root 20304 May 20 18:31 System.Drawing.dll
|
||||
2026-07-04T12:59:07.3015044Z -rwxr--r-- 1 root root 16208 May 20 18:30 System.Dynamic.Runtime.dll
|
||||
2026-07-04T12:59:07.3015280Z -rwxr--r-- 1 root root 97104 May 20 18:29 System.Formats.Asn1.dll
|
||||
2026-07-04T12:59:07.3015397Z -rwxr--r-- 1 root root 38736 May 20 18:29 System.Formats.Tar.dll
|
||||
2026-07-04T12:59:07.3015481Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.Calendars.dll
|
||||
2026-07-04T12:59:07.3015567Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Globalization.Extensions.dll
|
||||
2026-07-04T12:59:07.3015663Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Globalization.dll
|
||||
2026-07-04T12:59:07.3015747Z -rwxr--r-- 1 root root 28496 May 20 18:29 System.IO.Compression.Brotli.dll
|
||||
2026-07-04T12:59:07.3015831Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.IO.Compression.FileSystem.dll
|
||||
2026-07-04T12:59:07.3016040Z -rwxr--r-- 1 root root 53584 May 20 18:29 System.IO.Compression.ZipFile.dll
|
||||
2026-07-04T12:59:07.3016293Z -rwxr--r-- 1 root root 167760 May 20 18:31 System.IO.Compression.dll
|
||||
2026-07-04T12:59:07.3016382Z -rwxr--r-- 1 root root 32080 May 20 18:29 System.IO.FileSystem.AccessControl.dll
|
||||
2026-07-04T12:59:07.3016467Z -rwxr--r-- 1 root root 23888 May 20 18:29 System.IO.FileSystem.DriveInfo.dll
|
||||
2026-07-04T12:59:07.3016562Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.IO.FileSystem.Primitives.dll
|
||||
2026-07-04T12:59:07.3016652Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.IO.FileSystem.Watcher.dll
|
||||
2026-07-04T12:59:07.3016895Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.FileSystem.dll
|
||||
2026-07-04T12:59:07.3016989Z -rwxr--r-- 1 root root 35152 May 20 18:30 System.IO.IsolatedStorage.dll
|
||||
2026-07-04T12:59:07.3017098Z -rwxr--r-- 1 root root 50000 May 20 18:31 System.IO.MemoryMappedFiles.dll
|
||||
2026-07-04T12:59:07.3017197Z -rwxr--r-- 1 root root 78160 May 20 18:29 System.IO.Pipelines.dll
|
||||
2026-07-04T12:59:07.3017283Z -rwxr--r-- 1 root root 23376 May 20 18:29 System.IO.Pipes.AccessControl.dll
|
||||
2026-07-04T12:59:07.3017385Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.IO.Pipes.dll
|
||||
2026-07-04T12:59:07.3017475Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.UnmanagedMemoryStream.dll
|
||||
2026-07-04T12:59:07.3017708Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.IO.dll
|
||||
2026-07-04T12:59:07.3017795Z -rwxr--r-- 1 root root 92000 Jun 2 20:51 System.IdentityModel.Tokens.Jwt.dll
|
||||
2026-07-04T12:59:07.3017911Z -rwxr--r-- 1 root root 456528 May 20 18:29 System.Linq.AsyncEnumerable.dll
|
||||
2026-07-04T12:59:07.3018007Z -rwxr--r-- 1 root root 575312 May 20 18:29 System.Linq.Expressions.dll
|
||||
2026-07-04T12:59:07.3018088Z -rwxr--r-- 1 root root 223056 May 20 18:31 System.Linq.Parallel.dll
|
||||
2026-07-04T12:59:07.3018173Z -rwxr--r-- 1 root root 78672 May 20 18:31 System.Linq.Queryable.dll
|
||||
2026-07-04T12:59:07.3018253Z -rwxr--r-- 1 root root 201040 May 20 18:29 System.Linq.dll
|
||||
2026-07-04T12:59:07.3018473Z -rwxr--r-- 1 root root 55632 May 20 18:28 System.Memory.dll
|
||||
2026-07-04T12:59:07.3018562Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.Http.Json.dll
|
||||
2026-07-04T12:59:07.3018718Z -rwxr--r-- 1 root root 296272 May 20 18:31 System.Net.Http.dll
|
||||
2026-07-04T12:59:07.3018879Z -rwxr--r-- 1 root root 56144 May 20 18:30 System.Net.HttpListener.dll
|
||||
2026-07-04T12:59:07.3019013Z -rwxr--r-- 1 root root 105296 May 20 18:31 System.Net.Mail.dll
|
||||
2026-07-04T12:59:07.3019285Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Net.NameResolution.dll
|
||||
2026-07-04T12:59:07.3019384Z -rwxr--r-- 1 root root 42320 May 20 18:29 System.Net.NetworkInformation.dll
|
||||
2026-07-04T12:59:07.3019468Z -rwxr--r-- 1 root root 27984 May 20 18:29 System.Net.Ping.dll
|
||||
2026-07-04T12:59:07.3019549Z -rwxr--r-- 1 root root 107344 May 20 18:31 System.Net.Primitives.dll
|
||||
2026-07-04T12:59:07.3019646Z -rwxr--r-- 1 root root 39248 May 20 18:30 System.Net.Quic.dll
|
||||
2026-07-04T12:59:07.3019725Z -rwxr--r-- 1 root root 65872 May 20 18:30 System.Net.Requests.dll
|
||||
2026-07-04T12:59:07.3019808Z -rwxr--r-- 1 root root 114512 May 20 18:30 System.Net.Security.dll
|
||||
2026-07-04T12:59:07.3019892Z -rwxr--r-- 1 root root 40784 May 20 18:29 System.Net.ServerSentEvents.dll
|
||||
2026-07-04T12:59:07.3020121Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Net.ServicePoint.dll
|
||||
2026-07-04T12:59:07.3020212Z -rwxr--r-- 1 root root 74576 May 20 18:29 System.Net.Sockets.dll
|
||||
2026-07-04T12:59:07.3020295Z -rwxr--r-- 1 root root 56144 May 20 18:31 System.Net.WebClient.dll
|
||||
2026-07-04T12:59:07.3020488Z -rwxr--r-- 1 root root 33104 May 20 18:29 System.Net.WebHeaderCollection.dll
|
||||
2026-07-04T12:59:07.3020573Z -rwxr--r-- 1 root root 21840 May 20 18:31 System.Net.WebProxy.dll
|
||||
2026-07-04T12:59:07.3020657Z -rwxr--r-- 1 root root 52560 May 20 18:31 System.Net.WebSockets.Client.dll
|
||||
2026-07-04T12:59:07.3020744Z -rwxr--r-- 1 root root 108880 May 20 18:31 System.Net.WebSockets.dll
|
||||
2026-07-04T12:59:07.3020970Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Net.dll
|
||||
2026-07-04T12:59:07.3021057Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Numerics.Vectors.dll
|
||||
2026-07-04T12:59:07.3021143Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Numerics.dll
|
||||
2026-07-04T12:59:07.3021232Z -rwxr--r-- 1 root root 41296 May 20 18:29 System.ObjectModel.dll
|
||||
2026-07-04T12:59:07.3021315Z -rwxr--r-- 1 root root 4880208 May 20 18:19 System.Private.CoreLib.dll
|
||||
2026-07-04T12:59:07.3021397Z -rwxr--r-- 1 root root 859472 May 20 18:31 System.Private.DataContractSerialization.dll
|
||||
2026-07-04T12:59:07.3021490Z -rwxr--r-- 1 root root 105808 May 20 18:28 System.Private.Uri.dll
|
||||
2026-07-04T12:59:07.3021829Z -rwxr--r-- 1 root root 153936 May 20 18:30 System.Private.Xml.Linq.dll
|
||||
2026-07-04T12:59:07.3021924Z -rwxr--r-- 1 root root 3106128 May 20 18:30 System.Private.Xml.dll
|
||||
2026-07-04T12:59:07.3022020Z -rwxr--r-- 1 root root 38224 May 20 18:31 System.Reflection.DispatchProxy.dll
|
||||
2026-07-04T12:59:07.3022121Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.ILGeneration.dll
|
||||
2026-07-04T12:59:07.3022214Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Reflection.Emit.Lightweight.dll
|
||||
2026-07-04T12:59:07.3022300Z -rwxr--r-- 1 root root 133456 May 20 18:29 System.Reflection.Emit.dll
|
||||
2026-07-04T12:59:07.3022534Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Reflection.Extensions.dll
|
||||
2026-07-04T12:59:07.3022623Z -rwxr--r-- 1 root root 503632 May 20 18:29 System.Reflection.Metadata.dll
|
||||
2026-07-04T12:59:07.3022707Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Reflection.Primitives.dll
|
||||
2026-07-04T12:59:07.3022794Z -rwxr--r-- 1 root root 24400 May 20 18:31 System.Reflection.TypeExtensions.dll
|
||||
2026-07-04T12:59:07.3022902Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Reflection.dll
|
||||
2026-07-04T12:59:07.3022986Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Resources.Reader.dll
|
||||
2026-07-04T12:59:07.3023069Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Resources.ResourceManager.dll
|
||||
2026-07-04T12:59:07.3023153Z -rwxr--r-- 1 root root 26960 May 20 18:31 System.Resources.Writer.dll
|
||||
2026-07-04T12:59:07.3023377Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Runtime.CompilerServices.Unsafe.dll
|
||||
2026-07-04T12:59:07.3023472Z -rwxr--r-- 1 root root 17232 May 20 18:30 System.Runtime.CompilerServices.VisualC.dll
|
||||
2026-07-04T12:59:07.3023557Z -rwxr--r-- 1 root root 17744 May 20 18:30 System.Runtime.Extensions.dll
|
||||
2026-07-04T12:59:07.3023656Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Runtime.Handles.dll
|
||||
2026-07-04T12:59:07.3023754Z -rwxr--r-- 1 root root 89936 May 20 18:31 System.Runtime.InteropServices.JavaScript.dll
|
||||
2026-07-04T12:59:07.3023845Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Runtime.InteropServices.RuntimeInformation.dll
|
||||
2026-07-04T12:59:07.3023932Z -rwxr--r-- 1 root root 64848 May 20 18:29 System.Runtime.InteropServices.dll
|
||||
2026-07-04T12:59:07.3024221Z -rwxr--r-- 1 root root 17232 May 20 18:29 System.Runtime.Intrinsics.dll
|
||||
2026-07-04T12:59:07.3024393Z -rwxr--r-- 1 root root 15696 May 20 18:29 System.Runtime.Loader.dll
|
||||
2026-07-04T12:59:07.3024484Z -rwxr--r-- 1 root root 145232 May 20 18:29 System.Runtime.Numerics.dll
|
||||
2026-07-04T12:59:07.3024579Z -rwxr--r-- 1 root root 65872 May 20 18:29 System.Runtime.Serialization.Formatters.dll
|
||||
2026-07-04T12:59:07.3024674Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Runtime.Serialization.Json.dll
|
||||
2026-07-04T12:59:07.3024767Z -rwxr--r-- 1 root root 23376 May 20 18:30 System.Runtime.Serialization.Primitives.dll
|
||||
2026-07-04T12:59:07.3025038Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Runtime.Serialization.Xml.dll
|
||||
2026-07-04T12:59:07.3025127Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Runtime.Serialization.dll
|
||||
2026-07-04T12:59:07.3025213Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Runtime.dll
|
||||
2026-07-04T12:59:07.3025296Z -rwxr--r-- 1 root root 58192 May 20 18:29 System.Security.AccessControl.dll
|
||||
2026-07-04T12:59:07.3025393Z -rwxr--r-- 1 root root 55120 May 20 18:29 System.Security.Claims.dll
|
||||
2026-07-04T12:59:07.3025477Z -rwxr--r-- 1 root root 17232 May 20 18:31 System.Security.Cryptography.Algorithms.dll
|
||||
2026-07-04T12:59:07.3025565Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Cng.dll
|
||||
2026-07-04T12:59:07.3025922Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Security.Cryptography.Csp.dll
|
||||
2026-07-04T12:59:07.3026035Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Encoding.dll
|
||||
2026-07-04T12:59:07.3026508Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.OpenSsl.dll
|
||||
2026-07-04T12:59:07.3026604Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Security.Cryptography.Primitives.dll
|
||||
2026-07-04T12:59:07.3026700Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Security.Cryptography.X509Certificates.dll
|
||||
2026-07-04T12:59:07.3026796Z -rwxr--r-- 1 root root 654160 May 20 18:31 System.Security.Cryptography.dll
|
||||
2026-07-04T12:59:07.3026889Z -rwxr--r-- 1 root root 37712 May 20 18:29 System.Security.Principal.Windows.dll
|
||||
2026-07-04T12:59:07.3026988Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Security.Principal.dll
|
||||
2026-07-04T12:59:07.3027225Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Security.SecureString.dll
|
||||
2026-07-04T12:59:07.3027312Z -rwxr--r-- 1 root root 18256 May 20 18:31 System.Security.dll
|
||||
2026-07-04T12:59:07.3027399Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.ServiceModel.Web.dll
|
||||
2026-07-04T12:59:07.3027496Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.ServiceProcess.dll
|
||||
2026-07-04T12:59:07.3027578Z -rwxr--r-- 1 root root 742736 May 20 18:29 System.Text.Encoding.CodePages.dll
|
||||
2026-07-04T12:59:07.3027663Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Text.Encoding.Extensions.dll
|
||||
2026-07-04T12:59:07.3027753Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Text.Encoding.dll
|
||||
2026-07-04T12:59:07.3027971Z -rwxr--r-- 1 root root 65872 May 20 18:32 System.Text.Encodings.Web.dll
|
||||
2026-07-04T12:59:07.3028064Z -rwxr--r-- 1 root root 649040 May 20 18:30 System.Text.Json.dll
|
||||
2026-07-04T12:59:07.3028143Z -rwxr--r-- 1 root root 384848 May 20 18:30 System.Text.RegularExpressions.dll
|
||||
2026-07-04T12:59:07.3028244Z -rwxr--r-- 1 root root 33616 May 20 18:29 System.Threading.AccessControl.dll
|
||||
2026-07-04T12:59:07.3028326Z -rwxr--r-- 1 root root 66384 May 20 18:29 System.Threading.Channels.dll
|
||||
2026-07-04T12:59:07.3028411Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Overlapped.dll
|
||||
2026-07-04T12:59:07.3028493Z -rwxr--r-- 1 root root 185680 May 20 18:29 System.Threading.Tasks.Dataflow.dll
|
||||
2026-07-04T12:59:07.3028587Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Threading.Tasks.Extensions.dll
|
||||
2026-07-04T12:59:07.3028808Z -rwxr--r-- 1 root root 61264 May 20 18:31 System.Threading.Tasks.Parallel.dll
|
||||
2026-07-04T12:59:07.3028902Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Threading.Tasks.dll
|
||||
2026-07-04T12:59:07.3028994Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.Thread.dll
|
||||
2026-07-04T12:59:07.3029076Z -rwxr--r-- 1 root root 15696 May 20 18:28 System.Threading.ThreadPool.dll
|
||||
2026-07-04T12:59:07.3029160Z -rwxr--r-- 1 root root 15184 May 20 18:30 System.Threading.Timer.dll
|
||||
2026-07-04T12:59:07.3029262Z -rwxr--r-- 1 root root 44880 May 20 18:28 System.Threading.dll
|
||||
2026-07-04T12:59:07.3029345Z -rwxr--r-- 1 root root 175952 May 20 18:30 System.Transactions.Local.dll
|
||||
2026-07-04T12:59:07.3029560Z -rwxr--r-- 1 root root 16720 May 20 18:31 System.Transactions.dll
|
||||
2026-07-04T12:59:07.3029651Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.ValueTuple.dll
|
||||
2026-07-04T12:59:07.3029740Z -rwxr--r-- 1 root root 30032 May 20 18:31 System.Web.HttpUtility.dll
|
||||
2026-07-04T12:59:07.3029838Z -rwxr--r-- 1 root root 15184 May 20 18:31 System.Web.dll
|
||||
2026-07-04T12:59:07.3029919Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Windows.dll
|
||||
2026-07-04T12:59:07.3030002Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.Linq.dll
|
||||
2026-07-04T12:59:07.3030083Z -rwxr--r-- 1 root root 21840 May 20 18:30 System.Xml.ReaderWriter.dll
|
||||
2026-07-04T12:59:07.3030164Z -rwxr--r-- 1 root root 16208 May 20 18:31 System.Xml.Serialization.dll
|
||||
2026-07-04T12:59:07.3030381Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XDocument.dll
|
||||
2026-07-04T12:59:07.3030479Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XPath.XDocument.dll
|
||||
2026-07-04T12:59:07.3030561Z -rwxr--r-- 1 root root 15696 May 20 18:30 System.Xml.XPath.dll
|
||||
2026-07-04T12:59:07.3030650Z -rwxr--r-- 1 root root 15696 May 20 18:31 System.Xml.XmlDocument.dll
|
||||
2026-07-04T12:59:07.3030739Z -rwxr--r-- 1 root root 17744 May 20 18:31 System.Xml.XmlSerializer.dll
|
||||
2026-07-04T12:59:07.3030822Z -rwxr--r-- 1 root root 23376 May 20 18:31 System.Xml.dll
|
||||
2026-07-04T12:59:07.3030913Z -rwxr--r-- 1 root root 50000 May 20 18:32 System.dll
|
||||
2026-07-04T12:59:07.3030995Z -rw-r--r-- 1 root root 156672 Jul 4 12:56 TaxBaik.Application.dll
|
||||
2026-07-04T12:59:07.3031231Z -rw-r--r-- 1 root root 38468 Jul 4 12:56 TaxBaik.Application.pdb
|
||||
2026-07-04T12:59:07.3031318Z -rw-r--r-- 1 root root 37888 Jul 4 12:56 TaxBaik.Domain.dll
|
||||
2026-07-04T12:59:07.3031411Z -rw-r--r-- 1 root root 24100 Jul 4 12:56 TaxBaik.Domain.pdb
|
||||
2026-07-04T12:59:07.3031494Z -rw-r--r-- 1 root root 713216 Jul 4 12:58 TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:59:07.3031583Z -rw-r--r-- 1 root root 373136 Jul 4 12:58 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T12:59:07.3031768Z -rw-r--r-- 1 root root 2546 Jul 4 12:58 TaxBaik.Web.Client.runtimeconfig.json
|
||||
2026-07-04T12:59:07.3032037Z -rw-r--r-- 1 root root 1007340 Jul 4 12:58 TaxBaik.Web.Client.staticwebassets.endpoints.json
|
||||
2026-07-04T12:59:07.3032142Z -rw-r--r-- 1 root root 78064 Jul 4 12:58 TaxBaik.Web.Client.staticwebassets.runtime.json
|
||||
2026-07-04T12:59:07.3032230Z -rwxr--r-- 1 root root 16208 May 20 18:31 WindowsBase.dll
|
||||
2026-07-04T12:59:07.3032313Z -rwxr--r-- 1 root root 37898 May 20 18:42 dotnet.js
|
||||
2026-07-04T12:59:07.3032406Z -rwxr--r-- 1 root root 51818 May 20 18:42 dotnet.js.map
|
||||
2026-07-04T12:59:07.3032485Z -rwxr--r-- 1 root root 145050 May 20 18:43 dotnet.native.js
|
||||
2026-07-04T12:59:07.3032565Z -rwxr--r-- 1 root root 3002101 May 20 18:43 dotnet.native.wasm
|
||||
2026-07-04T12:59:07.3032781Z -rwxr--r-- 1 root root 198479 May 20 18:42 dotnet.runtime.js
|
||||
2026-07-04T12:59:07.3032873Z -rwxr--r-- 1 root root 276757 May 20 18:42 dotnet.runtime.js.map
|
||||
2026-07-04T12:59:07.3032955Z -rwxr--r-- 1 root root 956416 Apr 2 19:04 icudt_CJK.dat
|
||||
2026-07-04T12:59:07.3033032Z -rwxr--r-- 1 root root 550832 Apr 2 19:04 icudt_EFIGS.dat
|
||||
2026-07-04T12:59:07.3033111Z -rwxr--r-- 1 root root 1107168 Apr 2 19:04 icudt_no_CJK.dat
|
||||
2026-07-04T12:59:07.3033190Z -rwxr--r-- 1 root root 59728 May 20 18:31 mscorlib.dll
|
||||
2026-07-04T12:59:07.3033269Z -rwxr--r-- 1 root root 100688 May 20 18:32 netstandard.dll
|
||||
2026-07-04T12:59:07.3033348Z drwxr-xr-x 3 root root 4096 Jul 4 12:58 wwwroot
|
||||
2026-07-04T12:59:07.3071176Z total 4352
|
||||
2026-07-04T12:59:07.3071587Z drwxr-xr-x 8 root root 4096 Jul 4 12:58 .
|
||||
2026-07-04T12:59:07.3071872Z drwxr-xr-x 3 root root 4096 Jul 4 12:58 ..
|
||||
2026-07-04T12:59:07.3071979Z -rw-r--r-- 1 root root 196 Jul 4 12:58 .NETCoreApp,Version=v10.0.AssemblyAttributes.cs
|
||||
2026-07-04T12:59:07.3072092Z -rw-r--r-- 1 root root 137 Jul 4 12:58 EmbeddedAttribute.cs
|
||||
2026-07-04T12:59:07.3072373Z -rw-r--r-- 1 root root 0 Jul 4 12:58 TaxBaik..C36EE7CA.Up2Date
|
||||
2026-07-04T12:59:07.3072471Z -rw-r--r-- 1 root root 1008 Jul 4 12:58 TaxBaik.Web.Client.AssemblyInfo.cs
|
||||
2026-07-04T12:59:07.3072582Z -rw-r--r-- 1 root root 65 Jul 4 12:58 TaxBaik.Web.Client.AssemblyInfoInputs.cache
|
||||
2026-07-04T12:59:07.3072703Z -rw-r--r-- 1 root root 16355 Jul 4 12:58 TaxBaik.Web.Client.GeneratedMSBuildEditorConfig.editorconfig
|
||||
2026-07-04T12:59:07.3072810Z -rw-r--r-- 1 root root 433 Jul 4 12:58 TaxBaik.Web.Client.GlobalUsings.g.cs
|
||||
2026-07-04T12:59:07.3072898Z -rw-r--r-- 1 root root 0 Jul 4 12:58 TaxBaik.Web.Client.MvcApplicationPartsAssemblyInfo.cache
|
||||
2026-07-04T12:59:07.3073143Z -rw-r--r-- 1 root root 27329 Jul 4 12:58 TaxBaik.Web.Client.assets.cache
|
||||
2026-07-04T12:59:07.3073238Z -rw-r--r-- 1 root root 20456 Jul 4 12:58 TaxBaik.Web.Client.csproj.AssemblyReference.cache
|
||||
2026-07-04T12:59:07.3073326Z -rw-r--r-- 1 root root 65 Jul 4 12:58 TaxBaik.Web.Client.csproj.CoreCompileInputs.cache
|
||||
2026-07-04T12:59:07.3073433Z -rw-r--r-- 1 root root 136894 Jul 4 12:58 TaxBaik.Web.Client.csproj.FileListAbsolute.txt
|
||||
2026-07-04T12:59:07.3073537Z -rw-r--r-- 1 root root 713216 Jul 4 12:58 TaxBaik.Web.Client.dll
|
||||
2026-07-04T12:59:07.3073640Z -rw-r--r-- 1 root root 65 Jul 4 12:58 TaxBaik.Web.Client.genruntimeconfig.cache
|
||||
2026-07-04T12:59:07.3073730Z -rw-r--r-- 1 root root 373136 Jul 4 12:58 TaxBaik.Web.Client.pdb
|
||||
2026-07-04T12:59:07.3073973Z -rw-r--r-- 1 root root 276 Jul 4 12:58 ValidatableTypeAttribute.cs
|
||||
2026-07-04T12:59:07.3074072Z -rw-r--r-- 1 root root 3 Jul 4 12:58 blazor.build.boot-extension.json
|
||||
2026-07-04T12:59:07.3074158Z drwxr-xr-x 2 root root 20480 Jul 4 12:58 compressed
|
||||
2026-07-04T12:59:07.3074258Z -rw-r--r-- 1 root root 93392 Jul 4 12:58 dotnet.js
|
||||
2026-07-04T12:59:07.3074339Z -rw-r--r-- 1 root root 276577 Jul 4 12:58 rbcswa.dswa.cache.json
|
||||
2026-07-04T12:59:07.3074420Z drwxr-xr-x 2 root root 4096 Jul 4 12:58 ref
|
||||
2026-07-04T12:59:07.3074500Z drwxr-xr-x 2 root root 4096 Jul 4 12:58 refint
|
||||
2026-07-04T12:59:07.3074734Z -rw-r--r-- 1 root root 327 Jul 4 12:58 rjimswa.dswa.cache.json
|
||||
2026-07-04T12:59:07.3074829Z -rw-r--r-- 1 root root 3434 Jul 4 12:58 rjsmcshtml.dswa.cache.json
|
||||
2026-07-04T12:59:07.3074912Z -rw-r--r-- 1 root root 3434 Jul 4 12:58 rjsmrazor.dswa.cache.json
|
||||
2026-07-04T12:59:07.3074999Z -rw-r--r-- 1 root root 4208 Jul 4 12:58 rpswa.dswa.cache.json
|
||||
2026-07-04T12:59:07.3075082Z drwxr-xr-x 2 root root 4096 Jul 4 12:58 staticwebassets
|
||||
2026-07-04T12:59:07.3075161Z -rw-r--r-- 1 root root 1007340 Jul 4 12:58 staticwebassets.build.endpoints.json
|
||||
2026-07-04T12:59:07.3075247Z -rw-r--r-- 1 root root 1564906 Jul 4 12:58 staticwebassets.build.json
|
||||
2026-07-04T12:59:07.3075331Z -rw-r--r-- 1 root root 44 Jul 4 12:58 staticwebassets.build.json.cache
|
||||
2026-07-04T12:59:07.3075530Z -rw-r--r-- 1 root root 78064 Jul 4 12:58 staticwebassets.development.json
|
||||
2026-07-04T12:59:07.3075619Z -rw-r--r-- 1 root root 0 Jul 4 12:58 swae.build.ex.cache
|
||||
2026-07-04T12:59:07.3075707Z drwxr-xr-x 2 root root 4096 Jul 4 12:58 tmp-webcil
|
||||
2026-07-04T12:59:07.3075785Z drwxr-xr-x 2 root root 20480 Jul 4 12:58 webcil
|
||||
2026-07-04T13:01:22.5627758Z ✓ Publish Web elapsed: 193s
|
||||
2026-07-04T13:01:22.5646529Z -rw-r--r-- 1 root root 2.2M Jul 4 13:01 ./publish-logs/publish-web.binlog
|
||||
2026-07-04T13:01:22.6880698Z ::group::Run set -e
|
||||
2026-07-04T13:01:22.6881027Z set -e
|
||||
2026-07-04T13:01:22.6881197Z mkdir -p ./publish-logs
|
||||
2026-07-04T13:01:22.6881283Z # Proxy is not part of the solution restore graph, so restore it once
|
||||
2026-07-04T13:01:22.6881372Z # here before publishing to avoid NETSDK1004 in CI.
|
||||
2026-07-04T13:01:22.6881469Z dotnet restore src/TaxBaik.Proxy/
|
||||
2026-07-04T13:01:22.6881543Z dotnet build src/TaxBaik.Proxy/TaxBaik.Proxy.csproj -c Release --no-restore
|
||||
2026-07-04T13:01:22.6881631Z start=$(date +%s)
|
||||
2026-07-04T13:01:22.6881698Z dotnet publish src/TaxBaik.Proxy/ \
|
||||
2026-07-04T13:01:22.6881795Z -c Release \
|
||||
2026-07-04T13:01:22.6882017Z -o ./publish/proxy \
|
||||
2026-07-04T13:01:22.6882108Z --no-restore \
|
||||
2026-07-04T13:01:22.6882193Z --no-build \
|
||||
2026-07-04T13:01:22.6882265Z -p:PublishReadyToRun=false \
|
||||
2026-07-04T13:01:22.6882334Z -p:PerformanceSummary=true \
|
||||
2026-07-04T13:01:22.6882404Z -clp:Summary \
|
||||
2026-07-04T13:01:22.6882495Z -bl:./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T13:01:22.6882564Z end=$(date +%s)
|
||||
2026-07-04T13:01:22.6882635Z echo "✓ Publish Proxy elapsed: $((end - start))s"
|
||||
2026-07-04T13:01:22.6882738Z ls -lh ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T13:01:22.6882814Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:22.6882907Z ::endgroup::
|
||||
2026-07-04T13:01:24.3061500Z Determining projects to restore...
|
||||
2026-07-04T13:01:24.9616018Z Restored /workspace/***/taxbaik/src/TaxBaik.Proxy/TaxBaik.Proxy.csproj (in 156 ms).
|
||||
2026-07-04T13:01:26.9924481Z TaxBaik.Proxy -> /workspace/***/taxbaik/src/TaxBaik.Proxy/bin/Release/net10.0/TaxBaik.Proxy.dll
|
||||
2026-07-04T13:01:27.0997744Z
|
||||
2026-07-04T13:01:27.1028989Z Build succeeded.
|
||||
2026-07-04T13:01:27.1047131Z 0 Warning(s)
|
||||
2026-07-04T13:01:27.1047398Z 0 Error(s)
|
||||
2026-07-04T13:01:27.1047541Z
|
||||
2026-07-04T13:01:27.1047621Z Time Elapsed 00:00:01.55
|
||||
2026-07-04T13:01:28.9796929Z TaxBaik.Proxy -> /workspace/***/taxbaik/publish/proxy/
|
||||
2026-07-04T13:01:29.0117388Z
|
||||
2026-07-04T13:01:29.0137929Z Build succeeded.
|
||||
2026-07-04T13:01:29.0142336Z 0 Warning(s)
|
||||
2026-07-04T13:01:29.0144041Z 0 Error(s)
|
||||
2026-07-04T13:01:29.0147048Z
|
||||
2026-07-04T13:01:29.0149487Z Time Elapsed 00:00:01.04
|
||||
2026-07-04T13:01:29.0760476Z ✓ Publish Proxy elapsed: 2s
|
||||
2026-07-04T13:01:29.0761097Z -rw-r--r-- 1 root root 335K Jul 4 13:01 ./publish-logs/publish-proxy.binlog
|
||||
2026-07-04T13:01:29.2472841Z ::group::Run set -e
|
||||
2026-07-04T13:01:29.2473270Z set -e
|
||||
2026-07-04T13:01:29.2473414Z JWT_SECRET_KEY="***"
|
||||
2026-07-04T13:01:29.2473519Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T13:01:29.2473612Z TELEGRAM_CHAT_ID="***"
|
||||
2026-07-04T13:01:29.2473691Z TELEGRAM_INQUIRY_CHAT_ID=""
|
||||
2026-07-04T13:01:29.2473786Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T13:01:29.2473869Z [ -z "$JWT_SECRET_KEY" ] && { echo "Missing TAXBAIK_JWT_SECRET_KEY" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.2473974Z [ -z "$TELEGRAM_BOT_TOKEN" ] && { echo "Missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.2474063Z [ -z "$TELEGRAM_CHAT_ID" ] && { echo "Missing TAXBAIK_TELEGRAM_CHAT_ID" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.2474147Z [ -z "$TELEGRAM_INQUIRY_CHAT_ID" ] && TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_CHAT_ID"
|
||||
2026-07-04T13:01:29.2474240Z [ -z "$TELEGRAM_SYSTEM_CHAT_ID" ] && TELEGRAM_SYSTEM_CHAT_ID="-5585148480"
|
||||
2026-07-04T13:01:29.2474325Z JWT_SECRET_KEY="$JWT_SECRET_KEY" \
|
||||
2026-07-04T13:01:29.2474401Z TELEGRAM_BOT_TOKEN="$TELEGRAM_BOT_TOKEN" \
|
||||
2026-07-04T13:01:29.2474541Z TELEGRAM_CHAT_ID="$TELEGRAM_CHAT_ID" \
|
||||
2026-07-04T13:01:29.2474616Z TELEGRAM_INQUIRY_CHAT_ID="$TELEGRAM_INQUIRY_CHAT_ID" \
|
||||
2026-07-04T13:01:29.2474692Z TELEGRAM_SYSTEM_CHAT_ID="$TELEGRAM_SYSTEM_CHAT_ID" \
|
||||
2026-07-04T13:01:29.2474783Z python3 -c '
|
||||
2026-07-04T13:01:29.2474854Z import json, os, pathlib
|
||||
2026-07-04T13:01:29.2474933Z pathlib.Path("./publish/appsettings.Production.json").write_text(
|
||||
2026-07-04T13:01:29.2475012Z json.dumps({
|
||||
2026-07-04T13:01:29.2475107Z "Jwt": {"SecretKey": os.environ["JWT_SECRET_KEY"]},
|
||||
2026-07-04T13:01:29.2475203Z "Telegram": {
|
||||
2026-07-04T13:01:29.2475275Z "BotToken": os.environ["TELEGRAM_BOT_TOKEN"],
|
||||
2026-07-04T13:01:29.2475367Z "ChatId": os.environ["TELEGRAM_CHAT_ID"],
|
||||
2026-07-04T13:01:29.2475442Z "InquiryChatId": os.environ["TELEGRAM_INQUIRY_CHAT_ID"],
|
||||
2026-07-04T13:01:29.2475513Z "SystemChatId": os.environ["TELEGRAM_SYSTEM_CHAT_ID"]
|
||||
2026-07-04T13:01:29.2475584Z }
|
||||
2026-07-04T13:01:29.2475671Z }, ensure_ascii=False, indent=2),
|
||||
2026-07-04T13:01:29.2475739Z encoding="utf-8"
|
||||
2026-07-04T13:01:29.2475812Z )'
|
||||
2026-07-04T13:01:29.2475895Z test -s ./publish/appsettings.Production.json || { echo "appsettings.Production.json is empty" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.2475995Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:29.2476277Z ::endgroup::
|
||||
2026-07-04T13:01:29.5445729Z ::group::Run test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.5446479Z test -s ./publish/proxy/TaxBaik.Proxy.dll || { echo "TaxBaik.Proxy.dll missing" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.5446656Z test -s ./publish/proxy/TaxBaik.Proxy.runtimeconfig.json || { echo "TaxBaik.Proxy.runtimeconfig.json missing" >&2; exit 1; }
|
||||
2026-07-04T13:01:29.5446772Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:29.5446901Z ::endgroup::
|
||||
2026-07-04T13:01:29.7396976Z ::group::Run mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T13:01:29.7397352Z mkdir -p ./publish/db && cp -r db/migrations ./publish/db/ || true
|
||||
2026-07-04T13:01:29.7397484Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:29.7397589Z ::endgroup::
|
||||
2026-07-04T13:01:30.0169769Z ::group::Run bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T13:01:30.0170284Z bash scripts/validate_migrations.sh db/migrations
|
||||
2026-07-04T13:01:30.0170495Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:30.0170623Z ::endgroup::
|
||||
2026-07-04T13:01:30.1873738Z Duplicate version check passed.
|
||||
2026-07-04T13:01:30.3350394Z ::group::Run bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T13:01:30.3350747Z bash scripts/validate_kst_timestamps.sh
|
||||
2026-07-04T13:01:30.3350854Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:30.3350983Z ::endgroup::
|
||||
2026-07-04T13:01:30.4075762Z KST timestamp harness passed.
|
||||
2026-07-04T13:01:30.5339955Z ::group::Run COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T13:01:30.5340420Z COMMIT_HASH=$(git rev-parse --short HEAD)
|
||||
2026-07-04T13:01:30.5340542Z BUILD_TIME=$(TZ=Asia/Seoul date +'%Y-%m-%d %H:%M:%S KST')
|
||||
2026-07-04T13:01:30.5340635Z mkdir -p ./publish/wwwroot
|
||||
2026-07-04T13:01:30.5340751Z printf '{\n "version": "%s",\n "built": "%s"\n}\n' "$COMMIT_HASH" "$BUILD_TIME" > ./publish/wwwroot/version.json
|
||||
2026-07-04T13:01:30.5340864Z echo "✓ Build: $COMMIT_HASH @ $BUILD_TIME"
|
||||
2026-07-04T13:01:30.5340985Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:30.5341090Z ::endgroup::
|
||||
2026-07-04T13:01:30.5999292Z ✓ Build: c00d237 @ 2026-07-04 22:01:30 KST
|
||||
2026-07-04T13:01:30.7264039Z ::group::Run mkdir -p ~/.ssh
|
||||
2026-07-04T13:01:30.7264431Z mkdir -p ~/.ssh
|
||||
2026-07-04T13:01:30.7264604Z SSH_KEY_B64="***"
|
||||
2026-07-04T13:01:30.7264799Z SSH_KEY_RAW="***"
|
||||
2026-07-04T13:01:30.7265065Z if [ -n "$SSH_KEY_B64" ]; then
|
||||
2026-07-04T13:01:30.7265231Z printf '%s' "$SSH_KEY_B64" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T13:01:30.7265382Z elif [ -n "$SSH_KEY_RAW" ]; then
|
||||
2026-07-04T13:01:30.7265513Z if printf '%s' "$SSH_KEY_RAW" | grep -q 'BEGIN .*PRIVATE KEY'; then
|
||||
2026-07-04T13:01:30.7265665Z printf '%b\n' "$SSH_KEY_RAW" > ~/.ssh/id_ed25519
|
||||
2026-07-04T13:01:30.7265813Z else
|
||||
2026-07-04T13:01:30.7265955Z printf '%s' "$SSH_KEY_RAW" | base64 -d > ~/.ssh/id_ed25519
|
||||
2026-07-04T13:01:30.7266448Z fi
|
||||
2026-07-04T13:01:30.7266624Z else
|
||||
2026-07-04T13:01:30.7266747Z echo "Missing DEPLOY_SSH_KEY_B64 or DEPLOY_SSH_KEY" >&2; exit 1
|
||||
2026-07-04T13:01:30.7266892Z fi
|
||||
2026-07-04T13:01:30.7267009Z sed -i 's/\r$//' ~/.ssh/id_ed25519
|
||||
2026-07-04T13:01:30.7267138Z chmod 600 ~/.ssh/id_ed25519
|
||||
2026-07-04T13:01:30.7267222Z ssh-keyscan -H "***" >> ~/.ssh/known_hosts 2>/dev/null || true
|
||||
2026-07-04T13:01:30.7267363Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:30.7267559Z ::endgroup::
|
||||
2026-07-04T13:01:31.3915758Z ::group::Run cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T13:01:31.3916326Z cp deploy_gb.sh ./publish/deploy_gb.sh
|
||||
2026-07-04T13:01:31.3916448Z mkdir -p ./publish/scripts
|
||||
2026-07-04T13:01:31.3916532Z cp scripts/validate_migrations.sh ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T13:01:31.3916629Z chmod +x ./publish/scripts/validate_migrations.sh
|
||||
2026-07-04T13:01:31.3916706Z tar -czf taxbaik_deploy.tgz -C ./publish .
|
||||
2026-07-04T13:01:31.3916791Z echo "✓ Package: $(du -sh taxbaik_deploy.tgz | cut -f1)"
|
||||
2026-07-04T13:01:31.3916894Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:31.3916989Z ::endgroup::
|
||||
2026-07-04T13:01:34.5550762Z ✓ Package: 23M
|
||||
2026-07-04T13:01:34.6596310Z ::group::Run set -e
|
||||
2026-07-04T13:01:34.6596644Z set -e
|
||||
2026-07-04T13:01:34.6596755Z export TAXBAIK_DEPLOY_FROM_CI=1
|
||||
2026-07-04T13:01:34.6596854Z TIMESTAMP=$(TZ=Asia/Seoul date +%Y%m%d_%H%M%S)
|
||||
2026-07-04T13:01:34.6596935Z COMMIT=$(git rev-parse --short HEAD)
|
||||
2026-07-04T13:01:34.6597016Z DEPLOY_HOST="***"
|
||||
2026-07-04T13:01:34.6597103Z DEPLOY_USER="***"
|
||||
2026-07-04T13:01:34.6597300Z TELEGRAM_BOT_TOKEN="***"
|
||||
2026-07-04T13:01:34.6597384Z TELEGRAM_SYSTEM_CHAT_ID=""
|
||||
2026-07-04T13:01:34.6597460Z TELEGRAM_CHAT_ID="${TELEGRAM_SYSTEM_CHAT_ID:--5585148480}"
|
||||
2026-07-04T13:01:34.6597556Z
|
||||
2026-07-04T13:01:34.6597626Z send_telegram() {
|
||||
2026-07-04T13:01:34.6597703Z local text="$1"
|
||||
2026-07-04T13:01:34.6597779Z if [ -z "$TELEGRAM_BOT_TOKEN" ]; then
|
||||
2026-07-04T13:01:34.6597884Z echo "Skipping Telegram notification: missing TAXBAIK_TELEGRAM_BOT_TOKEN" >&2
|
||||
2026-07-04T13:01:34.6597983Z return 0
|
||||
2026-07-04T13:01:34.6598050Z fi
|
||||
2026-07-04T13:01:34.6598129Z
|
||||
2026-07-04T13:01:34.6598193Z curl -fsS -X POST "https://api.telegram.org/bot${TELEGRAM_BOT_TOKEN}/sendMessage" \
|
||||
2026-07-04T13:01:34.6598278Z -d "chat_id=${TELEGRAM_CHAT_ID}" \
|
||||
2026-07-04T13:01:34.6598353Z --data-urlencode "text=${text}" \
|
||||
2026-07-04T13:01:34.6598442Z -d "parse_mode=HTML" >/dev/null || true
|
||||
2026-07-04T13:01:34.6598515Z }
|
||||
2026-07-04T13:01:34.6598583Z
|
||||
2026-07-04T13:01:34.6598655Z notify_failure() {
|
||||
2026-07-04T13:01:34.6598728Z local exit_code=$?
|
||||
2026-07-04T13:01:34.6598798Z send_telegram "❌ <b>TaxBaik 배포 실패</b>
|
||||
2026-07-04T13:01:34.6598890Z
|
||||
2026-07-04T13:01:34.6598968Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T13:01:34.6599054Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T13:01:34.6599132Z 단계: CI/CD deploy"
|
||||
2026-07-04T13:01:34.6599222Z exit "$exit_code"
|
||||
2026-07-04T13:01:34.6599293Z }
|
||||
2026-07-04T13:01:34.6599355Z
|
||||
2026-07-04T13:01:34.6599452Z trap notify_failure ERR
|
||||
2026-07-04T13:01:34.6599539Z
|
||||
2026-07-04T13:01:34.6599604Z echo "=== Deploying TaxBaik $COMMIT ($TIMESTAMP) ==="
|
||||
2026-07-04T13:01:34.6599681Z
|
||||
2026-07-04T13:01:34.6599753Z # 1. 아티팩트 업로드
|
||||
2026-07-04T13:01:34.6599828Z scp -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T13:01:34.6599908Z taxbaik_deploy.tgz "$DEPLOY_USER@$DEPLOY_HOST:/tmp/taxbaik_${TIMESTAMP}.tgz"
|
||||
2026-07-04T13:01:34.6599993Z
|
||||
2026-07-04T13:01:34.6600070Z # 2. 서버에서 배포 + 헬스 체크 (SSH 1회 연결로 처리, Green-Blue 지원)
|
||||
2026-07-04T13:01:34.6600159Z ssh -i ~/.ssh/id_ed25519 -o StrictHostKeyChecking=yes \
|
||||
2026-07-04T13:01:34.6600240Z -o ServerAliveInterval=10 \
|
||||
2026-07-04T13:01:34.6600323Z "$DEPLOY_USER@$DEPLOY_HOST" TAXBAIK_DEPLOY_FROM_CI=1 bash << REMOTE
|
||||
2026-07-04T13:01:34.6600403Z set -e
|
||||
2026-07-04T13:01:34.6600473Z DEPLOY_HOME="/home/***"
|
||||
2026-07-04T13:01:34.6600555Z DEPLOY_DIR="\$DEPLOY_HOME/deployments/taxbaik_${TIMESTAMP}"
|
||||
2026-07-04T13:01:34.6600671Z TIMESTAMP="${TIMESTAMP}"
|
||||
2026-07-04T13:01:34.6600741Z COMMIT="${COMMIT}"
|
||||
2026-07-04T13:01:34.6600810Z
|
||||
2026-07-04T13:01:34.6600871Z echo "--- [1/5] 압축 해제 ---"
|
||||
2026-07-04T13:01:34.6600946Z mkdir -p "\$DEPLOY_DIR"
|
||||
2026-07-04T13:01:34.6601017Z tar -xzf "/tmp/taxbaik_\${TIMESTAMP}.tgz" -C "\$DEPLOY_DIR"
|
||||
2026-07-04T13:01:34.6601091Z rm -f "/tmp/taxbaik_\${TIMESTAMP}.tgz"
|
||||
2026-07-04T13:01:34.6601165Z
|
||||
2026-07-04T13:01:34.6601224Z echo "--- [2/5] 운영 설정 검증 ---"
|
||||
2026-07-04T13:01:34.6601302Z test -s "\$DEPLOY_DIR/appsettings.Production.json" \
|
||||
2026-07-04T13:01:34.6601375Z || { echo "FATAL: appsettings.Production.json 없음" >&2; exit 1; }
|
||||
2026-07-04T13:01:34.6601452Z test -s "\$DEPLOY_DIR/proxy/TaxBaik.Proxy.dll" \
|
||||
2026-07-04T13:01:34.6601525Z || { echo "FATAL: TaxBaik.Proxy.dll 없음" >&2; exit 1; }
|
||||
2026-07-04T13:01:34.6601608Z
|
||||
2026-07-04T13:01:34.6601676Z echo "--- [3/5] 마이그레이션 사전 검증 ---"
|
||||
2026-07-04T13:01:34.6601750Z test -x "\$DEPLOY_DIR/scripts/validate_migrations.sh" \
|
||||
2026-07-04T13:01:34.6601824Z || { echo "FATAL: validate_migrations.sh 없음" >&2; exit 1; }
|
||||
2026-07-04T13:01:34.6602022Z "\$DEPLOY_DIR/scripts/validate_migrations.sh" "\$DEPLOY_DIR/db/migrations" "postgresql://taxbaik:taxbaik123@localhost:5432/taxbaikdb"
|
||||
2026-07-04T13:01:34.6602131Z
|
||||
2026-07-04T13:01:34.6602198Z echo "--- [4/5] Green-Blue 배포 실행 ---"
|
||||
2026-07-04T13:01:34.6602279Z chmod +x "\$DEPLOY_DIR/deploy_gb.sh"
|
||||
2026-07-04T13:01:34.6602356Z "\$DEPLOY_DIR/deploy_gb.sh" "\$DEPLOY_DIR"
|
||||
2026-07-04T13:01:34.6602427Z
|
||||
2026-07-04T13:01:34.6602489Z echo "--- [4.5/5] Nginx 설정 검증 ---"
|
||||
2026-07-04T13:01:34.6602561Z # 실제 로드되는 파일은 sites-enabled/의 심볼릭 링크 대상만이다.
|
||||
2026-07-04T13:01:34.6602644Z # sites-available/에 다른 파일(예: default)이 있어도 sites-enabled에
|
||||
2026-07-04T13:01:34.6602727Z # 링크되어 있지 않으면 nginx는 그 내용을 절대 읽지 않는다.
|
||||
2026-07-04T13:01:34.6602804Z NGINX_CONF=""
|
||||
2026-07-04T13:01:34.6602878Z for f in /etc/nginx/sites-enabled/*; do
|
||||
2026-07-04T13:01:34.6602947Z if [ -e "\$f" ] && grep -q "location /taxbaik" "\$f" 2>/dev/null; then
|
||||
2026-07-04T13:01:34.6603031Z NGINX_CONF=\$(readlink -f "\$f")
|
||||
2026-07-04T13:01:34.6603100Z break
|
||||
2026-07-04T13:01:34.6603168Z fi
|
||||
2026-07-04T13:01:34.6603237Z done
|
||||
2026-07-04T13:01:34.6603297Z
|
||||
2026-07-04T13:01:34.6603360Z if [ -z "\$NGINX_CONF" ]; then
|
||||
2026-07-04T13:01:34.6603428Z echo "❌ FATAL: sites-enabled/ 안에서 'location /taxbaik'를 정의한 파일을 찾을 수 없음" >&2
|
||||
2026-07-04T13:01:34.6603520Z echo " sites-available/에 파일을 수정해도 sites-enabled에 심볼릭 링크되어 있지 않으면 반영되지 않는다." >&2
|
||||
2026-07-04T13:01:34.6603616Z exit 1
|
||||
2026-07-04T13:01:34.6603681Z fi
|
||||
2026-07-04T13:01:34.6603749Z echo "실제 로드되는 설정 파일: \$NGINX_CONF"
|
||||
2026-07-04T13:01:34.6603826Z
|
||||
2026-07-04T13:01:34.6603893Z # 불변식: '/'와 '/taxbaik' location 모두 반드시 127.0.0.1:5001 (TaxBaik.Proxy)을
|
||||
2026-07-04T13:01:34.6603979Z # 가리켜야 한다. 5003/5004를 직접 하드코딩하면 Green-Blue 포트 전환 시
|
||||
2026-07-04T13:01:34.6604062Z # 죽은 포트를 가리키게 되어 502/404가 발생한다 (실제 발생했던 장애).
|
||||
2026-07-04T13:01:34.6604145Z if grep -E "proxy_pass\s+http://127\.0\.0\.1:500[34]" "\$NGINX_CONF" > /dev/null 2>&1; then
|
||||
2026-07-04T13:01:34.6604235Z echo "❌ FATAL: \$NGINX_CONF 가 포트 5003/5004를 직접 참조함 (Green-Blue 전환 시 502 발생)" >&2
|
||||
2026-07-04T13:01:34.6604332Z echo " 수정: sudo sed -i 's|127.0.0.1:500[34]|127.0.0.1:5001|g' \$NGINX_CONF && sudo nginx -t && sudo systemctl reload nginx" >&2
|
||||
2026-07-04T13:01:34.6604421Z exit 1
|
||||
2026-07-04T13:01:34.6604491Z fi
|
||||
2026-07-04T13:01:34.6604558Z
|
||||
2026-07-04T13:01:34.6604619Z # proxy_pass에 URI(끝 슬래시)가 있으면 nginx가 요청 경로를 재작성하며,
|
||||
2026-07-04T13:01:34.6607916Z # location 접두사와 슬래시 개수가 안 맞으면 백엔드로 이중 슬래시(//)가
|
||||
2026-07-04T13:01:34.6608040Z # 전달되어 404가 발생한다 (실제 발생했던 장애). 접두사 location에서는
|
||||
2026-07-04T13:01:34.6608133Z # proxy_pass에 URI를 붙이지 않는다.
|
||||
2026-07-04T13:01:34.6608233Z if grep -E "location\s+/taxbaik\s*\{" -A 1 "\$NGINX_CONF" | grep -qE "proxy_pass\s+http://127\.0\.0\.1:5001/;"; then
|
||||
2026-07-04T13:01:34.6608347Z echo "❌ FATAL: location /taxbaik 의 proxy_pass 에 불필요한 trailing slash가 있음 (이중 슬래시로 인한 404 위험)" >&2
|
||||
2026-07-04T13:01:34.6608443Z exit 1
|
||||
2026-07-04T13:01:34.6608513Z fi
|
||||
2026-07-04T13:01:34.6608578Z
|
||||
2026-07-04T13:01:34.6608647Z echo "✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)"
|
||||
2026-07-04T13:01:34.6608736Z
|
||||
2026-07-04T13:01:34.6608799Z echo "--- [5/5] 헬스 체크 (최대 60초) ---"
|
||||
2026-07-04T13:01:34.6608888Z ATTEMPTS=20
|
||||
2026-07-04T13:01:34.6608968Z for i in \$(seq 1 \$ATTEMPTS); do
|
||||
2026-07-04T13:01:34.6609044Z STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/healthz 2>/dev/null || echo "000")
|
||||
2026-07-04T13:01:34.6609143Z if [ "\$STATUS" = "200" ]; then
|
||||
2026-07-04T13:01:34.6609218Z echo "✓ [1/6] 헬스 체크 완료"
|
||||
2026-07-04T13:01:34.6609291Z
|
||||
2026-07-04T13:01:34.6609353Z # 검증 1: 메인 페이지 로드. curl -L + -w 는 리다이렉트 체인의 상태코드를
|
||||
2026-07-04T13:01:34.6609448Z # 이어붙이므로, 첫 응답 코드만 받아 200/3xx를 허용한다.
|
||||
2026-07-04T13:01:34.6609531Z MAIN_STATUS=\$(curl -fsS -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/ 2>/dev/null || echo "000")
|
||||
2026-07-04T13:01:34.6609626Z if ! printf '%s' "\$MAIN_STATUS" | grep -Eq '^(200|301|302|307|308)$'; then
|
||||
2026-07-04T13:01:34.6609715Z echo "❌ 메인 페이지 로드 실패 (상태: \$MAIN_STATUS)" >&2
|
||||
2026-07-04T13:01:34.6609801Z exit 1
|
||||
2026-07-04T13:01:34.6609869Z fi
|
||||
2026-07-04T13:01:34.6609935Z echo "✓ [2/6] 메인 페이지 로드 완료"
|
||||
2026-07-04T13:01:34.6610016Z
|
||||
2026-07-04T13:01:34.6610077Z # 검증 2: CSS 파일 로드
|
||||
2026-07-04T13:01:34.6610147Z CSS_STATUS=\$(curl -sf -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/css/admin.css 2>/dev/null || echo "000")
|
||||
2026-07-04T13:01:34.6610236Z if [ "\$CSS_STATUS" != "200" ]; then
|
||||
2026-07-04T13:01:34.6610312Z echo "❌ CSS 파일 로드 실패 (상태: \$CSS_STATUS)" >&2
|
||||
2026-07-04T13:01:34.6610402Z exit 1
|
||||
2026-07-04T13:01:34.6610470Z fi
|
||||
2026-07-04T13:01:34.6610544Z echo "✓ [3/6] CSS 파일 로드 완료"
|
||||
2026-07-04T13:01:34.6610621Z
|
||||
2026-07-04T13:01:34.6610685Z # 검증 3: 버전 정보. 파일 존재만 보면 5001이 잘못된 구 프로세스를
|
||||
2026-07-04T13:01:34.6610769Z # 가리키는 장애를 놓치므로, HTTP 응답이 이번 커밋인지 확인한다.
|
||||
2026-07-04T13:01:34.6610858Z if [ ! -s "\$DEPLOY_DIR/wwwroot/version.json" ]; then
|
||||
2026-07-04T13:01:34.6610939Z echo "❌ version.json 누락" >&2
|
||||
2026-07-04T13:01:34.6611026Z exit 1
|
||||
2026-07-04T13:01:34.6611104Z fi
|
||||
2026-07-04T13:01:34.6611170Z VERSION_JSON=\$(curl -fsS http://127.0.0.1:5001/taxbaik/version.json 2>/dev/null || true)
|
||||
2026-07-04T13:01:34.6611253Z if ! printf '%s' "\$VERSION_JSON" | grep -q "\"version\": \"\$COMMIT\""; then
|
||||
2026-07-04T13:01:34.6611332Z echo "❌ 5001 프록시가 이번 배포 버전을 제공하지 않음" >&2
|
||||
2026-07-04T13:01:34.6611415Z echo " expected: \$COMMIT" >&2
|
||||
2026-07-04T13:01:34.6611490Z echo " actual: \$VERSION_JSON" >&2
|
||||
2026-07-04T13:01:34.6611563Z echo " 확인: 5001 포트가 TaxBaik.Proxy.dll인지, /home/***/taxbaik_port가 새 포트인지 점검" >&2
|
||||
2026-07-04T13:01:34.6611663Z exit 1
|
||||
2026-07-04T13:01:34.6611729Z fi
|
||||
2026-07-04T13:01:34.6611794Z echo "✓ [4/6] 버전 정보 확인 완료"
|
||||
2026-07-04T13:01:34.6612039Z
|
||||
2026-07-04T13:01:34.6612103Z # 검증 4: 5001 프록시 확인
|
||||
2026-07-04T13:01:34.6612177Z if ! ss -tlnp | grep -q ':5001 '; then
|
||||
2026-07-04T13:01:34.6612250Z echo "❌ 5001 프록시가 실행 중이 아님" >&2
|
||||
2026-07-04T13:01:34.6612338Z exit 1
|
||||
2026-07-04T13:01:34.6612405Z fi
|
||||
2026-07-04T13:01:34.6612476Z echo "✓ [5/6] 5001 프록시 확인 완료"
|
||||
2026-07-04T13:01:34.6612558Z
|
||||
2026-07-04T13:01:34.6612622Z # 검증 5: 관리자 로그인 페이지
|
||||
2026-07-04T13:01:34.6612698Z LOGIN_STATUS=\$(curl -fsSL -o /dev/null -w '%{http_code}' http://127.0.0.1:5001/taxbaik/admin/login 2>/dev/null || echo "000")
|
||||
2026-07-04T13:01:34.6612790Z if [ "\$LOGIN_STATUS" != "200" ]; then
|
||||
2026-07-04T13:01:34.6612871Z echo "❌ 관리자 로그인 페이지 로드 실패 (상태: \$LOGIN_STATUS)" >&2
|
||||
2026-07-04T13:01:34.6612964Z exit 1
|
||||
2026-07-04T13:01:34.6613037Z fi
|
||||
2026-07-04T13:01:34.6613099Z echo "✓ [6/6] 관리자 페이지 로드 완료"
|
||||
2026-07-04T13:01:34.6613182Z
|
||||
2026-07-04T13:01:34.6613243Z echo "✓ 서비스 정상 (시도 \$i/\$ATTEMPTS)"
|
||||
2026-07-04T13:01:34.6613322Z # 구 배포 디렉토리 정리 (최근 5개 보존)
|
||||
2026-07-04T13:01:34.6613401Z ls -1dt \$DEPLOY_HOME/deployments/taxbaik_* 2>/dev/null \
|
||||
2026-07-04T13:01:34.6613481Z | tail -n +6 | xargs rm -rf 2>/dev/null || true
|
||||
2026-07-04T13:01:34.6613557Z exit 0
|
||||
2026-07-04T13:01:34.6613622Z fi
|
||||
2026-07-04T13:01:34.6613692Z if [ "\$i" -eq "\$ATTEMPTS" ]; then
|
||||
2026-07-04T13:01:34.6613767Z echo "=== FATAL: 서비스가 \$ATTEMPTS회 시도 후에도 응답하지 않음 ===" >&2
|
||||
2026-07-04T13:01:34.6613858Z echo "--- 5001 listener ---" >&2
|
||||
2026-07-04T13:01:34.6613947Z ss -tlnp 2>/dev/null | grep ':5001 ' >&2 || true
|
||||
2026-07-04T13:01:34.6614022Z echo "--- active port file ---" >&2
|
||||
2026-07-04T13:01:34.6614102Z cat "\$DEPLOY_HOME/taxbaik_port" >&2 || true
|
||||
2026-07-04T13:01:34.6614174Z echo "--- 신규 앱 로그 ---" >&2
|
||||
2026-07-04T13:01:34.6614245Z ACTIVE_PORT=\$(cat "\$DEPLOY_HOME/taxbaik_port" 2>/dev/null | tr -d '[:space:]' || true)
|
||||
2026-07-04T13:01:34.6614329Z if [ -n "\$ACTIVE_PORT" ] && [ -s "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" ]; then
|
||||
2026-07-04T13:01:34.6614409Z tail -n 80 "\$DEPLOY_DIR/web_\${ACTIVE_PORT}.log" >&2
|
||||
2026-07-04T13:01:34.6614489Z else
|
||||
2026-07-04T13:01:34.6614554Z ls -la "\$DEPLOY_DIR" >&2 || true
|
||||
2026-07-04T13:01:34.6614626Z fi
|
||||
2026-07-04T13:01:34.6614690Z echo "--- proxy 로그 ---" >&2
|
||||
2026-07-04T13:01:34.6614764Z tail -n 80 "\$DEPLOY_HOME/taxbaik_proxy.log" >&2 || true
|
||||
2026-07-04T13:01:34.6614848Z exit 1
|
||||
2026-07-04T13:01:34.6614917Z fi
|
||||
2026-07-04T13:01:34.6614986Z echo " 대기 중... (\$i/\$ATTEMPTS, HTTP \$STATUS)"
|
||||
2026-07-04T13:01:34.6615062Z sleep 3
|
||||
2026-07-04T13:01:34.6615131Z done
|
||||
2026-07-04T13:01:34.6615194Z REMOTE
|
||||
2026-07-04T13:01:34.6615256Z
|
||||
2026-07-04T13:01:34.6615315Z echo "✓ 배포 완료: taxbaik_${TIMESTAMP} @ $DEPLOY_HOST"
|
||||
2026-07-04T13:01:34.6615389Z
|
||||
2026-07-04T13:01:34.6615454Z echo "--- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---"
|
||||
2026-07-04T13:01:34.6615540Z ROOT_URL="https://www.taxbaik.com/" \
|
||||
2026-07-04T13:01:34.6615611Z ADMIN_URL="https://www.taxbaik.com/taxbaik/admin/login" \
|
||||
2026-07-04T13:01:34.6615686Z PUBLIC_MARKER="백원숙 세무회계" \
|
||||
2026-07-04T13:01:34.6615758Z PUBLIC_FORBIDDEN="관리자" \
|
||||
2026-07-04T13:01:34.6615829Z ADMIN_MARKER="관리자 로그인" \
|
||||
2026-07-04T13:01:34.6615900Z MAX_RETRIES=3 \
|
||||
2026-07-04T13:01:34.6615976Z RETRY_SLEEP_SECONDS=5 \
|
||||
2026-07-04T13:01:34.6616044Z bash ./scripts/taxbaik-smoke.sh
|
||||
2026-07-04T13:01:34.6616322Z echo "✓ 실제 공개 도메인 전체 정상"
|
||||
2026-07-04T13:01:34.6616404Z
|
||||
2026-07-04T13:01:34.6616463Z send_telegram "✅ <b>TaxBaik 배포 완료</b>
|
||||
2026-07-04T13:01:34.6616542Z
|
||||
2026-07-04T13:01:34.6616609Z 커밋: <code>${COMMIT}</code>
|
||||
2026-07-04T13:01:34.6616695Z 시간: <code>${TIMESTAMP}</code>
|
||||
2026-07-04T13:01:34.6616774Z 대상: <code>${DEPLOY_HOST}</code>
|
||||
2026-07-04T13:01:34.6616853Z 채널: <code>${TELEGRAM_CHAT_ID}</code>"
|
||||
2026-07-04T13:01:34.6616931Z shell: bash --noprofile --norc -e -o pipefail {0}
|
||||
2026-07-04T13:01:34.6617030Z ::endgroup::
|
||||
2026-07-04T13:01:34.7483080Z === Deploying TaxBaik c00d237 (20260704_220134) ===
|
||||
2026-07-04T13:01:36.0560253Z --- [1/5] 압축 해제 ---
|
||||
2026-07-04T13:01:36.3575256Z --- [2/5] 운영 설정 검증 ---
|
||||
2026-07-04T13:01:36.3575950Z --- [3/5] 마이그레이션 사전 검증 ---
|
||||
2026-07-04T13:01:36.9509044Z Migration dry-run validation passed.
|
||||
2026-07-04T13:01:36.9509614Z --- [4/5] Green-Blue 배포 실행 ---
|
||||
2026-07-04T13:01:36.9593876Z ===== 🚀 TaxBaik Green/Blue Deployment Script =====
|
||||
2026-07-04T13:01:37.1157726Z Active Port: 5004
|
||||
2026-07-04T13:01:37.1158178Z Target Port: 5003
|
||||
2026-07-04T13:01:37.1158370Z Deploy Directory: /home/***/deployments/taxbaik_20260704_220134
|
||||
2026-07-04T13:01:37.4066841Z === Starting New App on Port 5003 ===
|
||||
2026-07-04T13:01:39.4311374Z === Health Checking Port 5003 ===
|
||||
2026-07-04T13:01:39.5507815Z Waiting for health check... (1/20, Status: 000000)
|
||||
2026-07-04T13:01:42.1278558Z ✓ Health check passed on port 5003 (Attempt 2/20)
|
||||
2026-07-04T13:01:42.1279137Z === Switching Traffic to Port 5003 ===
|
||||
2026-07-04T13:01:42.1312702Z ✓ Traffic routed to 5003 (via TaxBaik.Proxy on 5001)
|
||||
2026-07-04T13:01:42.1313191Z === Stopping Old App on Port 5004 ===
|
||||
2026-07-04T13:01:42.2456799Z Killing old process PID: 4150110
|
||||
2026-07-04T13:01:42.2457355Z ✓ Old process terminated
|
||||
2026-07-04T13:01:42.2457639Z === Cleaning Up Old Deployments ===
|
||||
2026-07-04T13:01:42.2824667Z ✓ Cleanup completed
|
||||
2026-07-04T13:01:42.2825372Z ===== ✅ Green/Blue Deployment Completed Successfully =====
|
||||
2026-07-04T13:01:42.2827207Z --- [4.5/5] Nginx 설정 검증 ---
|
||||
2026-07-04T13:01:42.2917525Z 실제 로드되는 설정 파일: /etc/nginx/sites-available/taxbaik-domains.conf
|
||||
2026-07-04T13:01:42.2977470Z ✓ Nginx 설정 검증 통과 (실제 로드 파일 확인 + 포트 5001 고정 + trailing slash 없음)
|
||||
2026-07-04T13:01:42.2978026Z --- [5/5] 헬스 체크 (최대 60초) ---
|
||||
2026-07-04T13:01:42.3668351Z ✓ [1/6] 헬스 체크 완료
|
||||
2026-07-04T13:01:42.8378177Z ✓ [2/6] 메인 페이지 로드 완료
|
||||
2026-07-04T13:01:42.8839270Z ✓ [3/6] CSS 파일 로드 완료
|
||||
2026-07-04T13:01:42.8929193Z ✓ [4/6] 버전 정보 확인 완료
|
||||
2026-07-04T13:01:42.9068857Z ✓ [5/6] 5001 프록시 확인 완료
|
||||
2026-07-04T13:01:42.9149449Z ✓ [6/6] 관리자 페이지 로드 완료
|
||||
2026-07-04T13:01:42.9150100Z ✓ 서비스 정상 (시도 1/20)
|
||||
2026-07-04T13:01:42.9248052Z ✓ 배포 완료: taxbaik_20260704_220134 @ ***
|
||||
2026-07-04T13:01:42.9248637Z --- 실제 공개 도메인 종단 간 검증 (Nginx/Cloudflare 경유, 최대 3회 재시도) ---
|
||||
2026-07-04T13:01:43.3724216Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T13:01:43.6877712Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T13:01:44.0126645Z retrying... (1/3)
|
||||
2026-07-04T13:01:44.0128053Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: 관리자 로그인
|
||||
2026-07-04T13:01:49.3854327Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T13:01:49.6485192Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T13:01:50.0153135Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: 관리자 로그인
|
||||
2026-07-04T13:01:50.0153696Z retrying... (2/3)
|
||||
2026-07-04T13:01:55.2722916Z ✓ https://www.taxbaik.com/ -> HTTP 200
|
||||
2026-07-04T13:01:55.6800476Z ✓ https://www.taxbaik.com/taxbaik/ -> HTTP 200
|
||||
2026-07-04T13:01:55.9334729Z ✗ https://www.taxbaik.com/taxbaik/admin/login -> body missing required marker: 관리자 로그인
|
||||
2026-07-04T13:01:55.9335523Z ✗ smoke verification failed
|
||||
2026-07-04T13:01:56.2238319Z ❌ Failure - Main Deploy & verify on server
|
||||
2026-07-04T13:01:56.2411008Z exitcode '1': failure
|
||||
2026-07-04T13:01:56.2699164Z evaluating expression 'success()'
|
||||
2026-07-04T13:01:56.2699697Z expression 'success()' evaluated to 'false'
|
||||
2026-07-04T13:01:56.2699842Z Skipping step 'Setup .NET' due to 'success()'
|
||||
2026-07-04T13:01:56.2953445Z evaluating expression 'always()'
|
||||
2026-07-04T13:01:56.2953918Z expression 'always()' evaluated to 'true'
|
||||
2026-07-04T13:01:56.2954039Z ⭐ Run Post Checkout code
|
||||
2026-07-04T13:01:56.2954206Z Writing entry to tarball workflow/outputcmd.txt len:0
|
||||
2026-07-04T13:01:56.2954356Z Writing entry to tarball workflow/statecmd.txt len:0
|
||||
2026-07-04T13:01:56.2954454Z Writing entry to tarball workflow/pathcmd.txt len:0
|
||||
2026-07-04T13:01:56.2954553Z Writing entry to tarball workflow/envs.txt len:0
|
||||
2026-07-04T13:01:56.2954636Z Writing entry to tarball workflow/SUMMARY.md len:0
|
||||
2026-07-04T13:01:56.2954724Z Extracting content to '/var/run/act'
|
||||
2026-07-04T13:01:56.2989360Z run post step for 'Checkout code'
|
||||
2026-07-04T13:01:56.2989963Z executing remote job container: [node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]
|
||||
2026-07-04T13:01:56.3354078Z 🐳 docker exec cmd=[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js] user= workdir=
|
||||
2026-07-04T13:01:56.3354506Z Exec command '[node /var/run/act/actions/c3fe249fe73091a17d6638fe1341e7bd0bcc3466ce52323c0688e83e2463a4ab/dist/index.js]'
|
||||
2026-07-04T13:01:56.3354997Z Working directory '/workspace/***/taxbaik'
|
||||
2026-07-04T13:01:56.5634391Z [command]/usr/bin/git version
|
||||
2026-07-04T13:01:56.5708822Z git version 2.54.0
|
||||
2026-07-04T13:01:56.5752988Z ***
|
||||
2026-07-04T13:01:56.5772894Z Temporarily overriding HOME='/tmp/29afdc3d-d383-4267-8baa-f87edca3a0e3' before making global git config changes
|
||||
2026-07-04T13:01:56.5782158Z Adding repository directory to the temporary git global config as a safe directory
|
||||
2026-07-04T13:01:56.5785763Z [command]/usr/bin/git config --global --add safe.directory /workspace/***/taxbaik
|
||||
2026-07-04T13:01:56.5856624Z [command]/usr/bin/git config --local --name-only --get-regexp core\.sshCommand
|
||||
2026-07-04T13:01:56.5933870Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'core\.sshCommand' && git config --local --unset-all 'core.sshCommand' || :"
|
||||
2026-07-04T13:01:56.6622902Z [command]/usr/bin/git config --local --name-only --get-regexp http\.http\:\/\/gitea\:3000\/\.extraheader
|
||||
2026-07-04T13:01:56.6697660Z http.http://gitea:3000/.extraheader
|
||||
2026-07-04T13:01:56.6698844Z [command]/usr/bin/git config --local --unset-all http.http://gitea:3000/.extraheader
|
||||
2026-07-04T13:01:56.6735534Z [command]/usr/bin/git submodule foreach --recursive sh -c "git config --local --name-only --get-regexp 'http\.http\:\/\/gitea\:3000\/\.extraheader' && git config --local --unset-all 'http.http://gitea:3000/.extraheader' || :"
|
||||
2026-07-04T13:01:56.6986910Z [command]/usr/bin/git config --local --name-only --get-regexp ^includeIf\.gitdir:
|
||||
2026-07-04T13:01:56.7046662Z [command]/usr/bin/git submodule foreach --recursive git config --local --show-origin --name-only --get-regexp remote.origin.url
|
||||
2026-07-04T13:01:56.8590734Z ✅ Success - Post Checkout code
|
||||
2026-07-04T13:01:56.8750550Z Cleaning up container for job build-and-deploy
|
||||
2026-07-04T13:01:57.5600546Z Removed container: 545d203ee9994ebf9eca9357f948b418a29c0a80f13c2d69e6b64ca3d86d4b5b
|
||||
2026-07-04T13:01:57.5657268Z 🐳 docker volume rm GITEA-ACTIONS-TASK-1552-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-ab2d1e70739a3063f448d1e9d12be855fbd02428b801ec092546b895bdf5c88d
|
||||
2026-07-04T13:01:57.6930032Z 🐳 docker volume rm GITEA-ACTIONS-TASK-1552-WORKFLOW-TaxBaik-CI-CD-JOB-build-and-de-ab2d1e70739a3063f448d1e9d12be855fbd02428b801ec092546b895bdf5c88d-env
|
||||
2026-07-04T13:01:57.9092324Z 🏁 Job failed
|
||||
2026-07-04T13:01:57.9175317Z Job 'build-and-deploy' failed
|
||||
@@ -13,20 +13,20 @@ public static class InquiryStatusMapper
|
||||
|
||||
public static readonly Dictionary<string, string> Labels = new()
|
||||
{
|
||||
["new"] = "신규",
|
||||
["new"] = "신규",
|
||||
["consulting"] = "상담중",
|
||||
["contracted"] = "계약완료",
|
||||
["rejected"] = "거절",
|
||||
["closed"] = "종결",
|
||||
["rejected"] = "거절",
|
||||
["closed"] = "종결",
|
||||
};
|
||||
|
||||
public static string ToStorageValue(InquiryStatus status) => status switch
|
||||
{
|
||||
InquiryStatus.New => "new",
|
||||
InquiryStatus.New => "new",
|
||||
InquiryStatus.Consulting => "consulting",
|
||||
InquiryStatus.Contracted => "contracted",
|
||||
InquiryStatus.Rejected => "rejected",
|
||||
InquiryStatus.Closed => "closed",
|
||||
InquiryStatus.Rejected => "rejected",
|
||||
InquiryStatus.Closed => "closed",
|
||||
_ => throw new ArgumentOutOfRangeException(nameof(status), status, null)
|
||||
};
|
||||
|
||||
@@ -35,11 +35,11 @@ public static class InquiryStatusMapper
|
||||
var key = value?.Trim().ToLowerInvariant();
|
||||
status = key switch
|
||||
{
|
||||
"new" => InquiryStatus.New,
|
||||
"new" => InquiryStatus.New,
|
||||
"consulting" => InquiryStatus.Consulting,
|
||||
"contracted" => InquiryStatus.Contracted,
|
||||
"rejected" => InquiryStatus.Rejected,
|
||||
"closed" => InquiryStatus.Closed,
|
||||
"rejected" => InquiryStatus.Rejected,
|
||||
"closed" => InquiryStatus.Closed,
|
||||
_ => default
|
||||
};
|
||||
return key is "new" or "consulting" or "contracted" or "rejected" or "closed";
|
||||
|
||||
@@ -10,9 +10,9 @@ public class TaxFilingService(ITaxFilingRepository repository)
|
||||
|
||||
public static readonly Dictionary<string, string> StatusLabels = new()
|
||||
{
|
||||
["pending"] = "신고 예정",
|
||||
["filed"] = "신고 완료",
|
||||
["overdue"] = "기한 초과",
|
||||
["pending"] = "신고 예정",
|
||||
["filed"] = "신고 완료",
|
||||
["overdue"] = "기한 초과",
|
||||
};
|
||||
|
||||
public async Task<IEnumerable<TaxFiling>> GetByClientIdAsync(int clientId, CancellationToken ct = default) =>
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/admin"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@inject NavigationManager NavigationManager
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
@page "/announcements/create"
|
||||
@page "/announcements/{Id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.Web.Services
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/announcements"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Domain.Entities
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/blog/create"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.WasmClient.Components.Admin.Pages.Blog
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/blog/{id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.WasmClient.Components.Admin.Pages.Blog
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/blog"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@inject IBlogBrowserClient BlogClient
|
||||
@inject ISnackbar Snackbar
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/clients/{ClientId:int}"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
@page "/clients/create"
|
||||
@page "/clients/{Id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.Web.Services
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/clients"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Domain.Entities
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/common-codes"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.Domain.Entities
|
||||
@attribute [Authorize]
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/companies/create"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.WasmClient.Components.Admin.Forms
|
||||
@inject IApiClient ApiClient
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/companies/{id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.WasmClient.Components.Admin.Forms
|
||||
@inject IApiClient ApiClient
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/companies"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@inject IApiClient ApiClient
|
||||
@inject ISnackbar Snackbar
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/consulting-activities"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
@inject IConsultingActivityBrowserClient ActivityClient
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/contracts"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
@inject IContractBrowserClient ContractClient
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/dashboard"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
@page "/faqs/create"
|
||||
@page "/faqs/{Id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Domain.Entities
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/faqs"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Domain.Entities
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/inquiries/create"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.WasmClient.Components.Admin.Forms
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/inquiries/{InquiryId:int}"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.Services
|
||||
@using TaxBaik.Web.Services
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/inquiries/{id:int}/edit"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.DTOs
|
||||
@using TaxBaik.WasmClient.Components.Admin.Forms
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/inquiries"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.Services
|
||||
@using TaxBaik.Web.Services
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/logout"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services
|
||||
@inject CustomAuthenticationStateProvider AuthStateProvider
|
||||
@inject NavigationManager NavigationManager
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/revenue-trackings"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
@inject IRevenueTrackingBrowserClient RevenueClient
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/season-simulator"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Application.Seasonal
|
||||
@using TaxBaik.Application.Services
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/settings"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using System.ComponentModel.DataAnnotations
|
||||
@using System.Collections.Generic
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/tax-filing-schedules"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.Domain.Entities
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/tax-filings"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@attribute [Authorize]
|
||||
@using TaxBaik.Web.Services
|
||||
@using TaxBaik.Domain.Entities
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
@page "/tax-profiles"
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: false))
|
||||
@rendermode @(new InteractiveWebAssemblyRenderMode(prerender: true))
|
||||
@using TaxBaik.Web.Services.AdminClients
|
||||
@using TaxBaik.WasmClient.Components.Admin.Shared
|
||||
@inject ITaxProfileBrowserClient TaxProfileClient
|
||||
|
||||
@@ -142,7 +142,7 @@
|
||||
<p class="text-muted mb-5">무료 상담으로 현재 상황을 진단하고 맞춤형 절세 전략을 받아보세요.</p>
|
||||
<div class="d-flex gap-3 justify-content-center flex-wrap">
|
||||
<a href="/taxbaik/contact" class="btn btn-primary btn-lg">상담 신청하기</a>
|
||||
<a href="http://pf.kakao.com/_xoxchTX" target="_blank" class="btn btn-warning btn-lg">카카오채널로 문의</a>
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer" class="btn btn-warning btn-lg">카카오채널로 문의</a>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
|
||||
@@ -219,7 +219,7 @@
|
||||
<h5 class="fw-bold mb-3">빠른 상담을 원하시나요?</h5>
|
||||
<p>카카오톡 채널을 통해 더 빠르게 상담받을 수 있습니다.</p>
|
||||
<div class="gap-2 d-flex flex-wrap">
|
||||
<a href="http://pf.kakao.com/_xoxchTX" target="_blank" class="btn btn-warning">카카오톡 채널 문의</a>
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer" class="btn btn-warning">카카오톡 채널 문의</a>
|
||||
<a href="tel:010-4122-8268" class="btn btn-outline-primary">전화 상담</a>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
@@ -48,8 +48,9 @@
|
||||
<a href="/taxbaik/contact" class="btn btn-warning btn-lg fw-bold">
|
||||
⏰ @season.CtaText
|
||||
</a>
|
||||
<a href="javascript:void(0);" class="btn btn-outline-primary btn-lg"
|
||||
onclick="openKakao()" style="border-color: white; color: white;">
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer"
|
||||
class="btn btn-outline-primary btn-lg" onclick="openKakao(event)"
|
||||
style="border-color: white; color: white;">
|
||||
💬 카카오채널 문의
|
||||
</a>
|
||||
</div>
|
||||
@@ -89,8 +90,9 @@ else
|
||||
</p>
|
||||
<div class="d-flex gap-3 flex-wrap">
|
||||
<a href="/taxbaik/contact" class="btn btn-primary btn-lg">무료 상담 신청</a>
|
||||
<a href="javascript:void(0);" class="btn btn-outline-primary btn-lg"
|
||||
onclick="openKakao()" style="border-color: white; color: white;">
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer"
|
||||
class="btn btn-outline-primary btn-lg" onclick="openKakao(event)"
|
||||
style="border-color: white; color: white;">
|
||||
💬 카카오채널 문의
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
<div class="col-md-4">
|
||||
<h6 class="fw-bold">채널</h6>
|
||||
<p class="small">
|
||||
<a href="http://pf.kakao.com/_xoxchTX" target="_blank" class="btn btn-sm btn-warning me-2">카카오톡</a>
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer" class="btn btn-sm btn-warning me-2">카카오톡</a>
|
||||
<a href="https://www.instagram.com/taxtory5668/" target="_blank" class="btn btn-sm btn-outline-secondary">Instagram</a>
|
||||
</p>
|
||||
</div>
|
||||
|
||||
@@ -56,7 +56,7 @@
|
||||
},
|
||||
"sameAs": [
|
||||
"https://www.instagram.com/taxtory5668/",
|
||||
"http://pf.kakao.com/_xoxchTX"
|
||||
"https://pf.kakao.com/_xoxchTX"
|
||||
]
|
||||
}
|
||||
</script>
|
||||
@@ -71,7 +71,7 @@
|
||||
gtag('config', 'G-25KRKY45D7');
|
||||
</script>
|
||||
</head>
|
||||
<body class="with-mobile-cta">
|
||||
<body class="with-mobile-cta" data-kakao-url="https://pf.kakao.com/_xoxchTX">
|
||||
<partial name="_Header" />
|
||||
<main role="main" class="pb-5">
|
||||
@RenderBody()
|
||||
@@ -106,7 +106,7 @@
|
||||
<div class="col-md-3">
|
||||
<h6 class="fw-bold mb-3">채널</h6>
|
||||
<p class="small">
|
||||
<a href="http://pf.kakao.com/_xoxchTX" target="_blank" class="btn btn-sm btn-warning me-2">카카오톡</a>
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer" class="btn btn-sm btn-warning me-2">카카오톡</a>
|
||||
<a href="https://www.instagram.com/taxtory5668/" target="_blank" class="btn btn-sm btn-outline-secondary">Instagram</a>
|
||||
</p>
|
||||
</div>
|
||||
@@ -133,7 +133,7 @@
|
||||
|
||||
<!-- Mobile Fixed CTA -->
|
||||
<div class="mobile-cta-bar d-lg-none">
|
||||
<a href="http://pf.kakao.com/_xoxchTX" target="_blank" class="btn-kakao-mobile">
|
||||
<a href="https://pf.kakao.com/_xoxchTX" target="_blank" rel="noopener noreferrer" class="btn-kakao-mobile">
|
||||
💬 카카오 상담하기
|
||||
</a>
|
||||
</div>
|
||||
|
||||
@@ -288,7 +288,8 @@ builder.Services.AddMudServices(config =>
|
||||
config.PopoverOptions.ThrowOnDuplicateProvider = false;
|
||||
});
|
||||
builder.Services.AddMemoryCache();
|
||||
builder.Services.AddResponseCompression(opts => {
|
||||
builder.Services.AddResponseCompression(opts =>
|
||||
{
|
||||
opts.Providers.Add<GzipCompressionProvider>();
|
||||
});
|
||||
builder.Services.AddHostedService<TelegramReportBackgroundService>();
|
||||
@@ -394,9 +395,13 @@ app.MapHealthChecks("/healthz");
|
||||
app.MapRazorPages(); // Sitemap.cshtml, Rss.cshtml, Feed.cshtml
|
||||
app.MapStaticAssets();
|
||||
|
||||
// SPA 라우팅 폴백 (MapFallbackToFile만 사용 - 순수 정적 WASM)
|
||||
// MapFallbackToFile로 index.html을 serve하면 WASM이 클라이언트에서 직접 부팅됨
|
||||
// index.html의 <script src="_framework/blazor.webassembly.js">로 자동 초기화
|
||||
// Blazor WebAssembly - prerender: false 페이지 지원
|
||||
// 대시보드 등은 prerender: false이므로 MapRazorComponents 필수
|
||||
app.MapRazorComponents<TaxBaik.WasmClient.Components.Admin.App>()
|
||||
.AddInteractiveWebAssemblyRenderMode()
|
||||
.AllowAnonymous();
|
||||
|
||||
// SPA 라우팅 폴백
|
||||
app.MapFallbackToFile("admin/{*path:nonfile}", "admin/index.html");
|
||||
app.MapFallbackToFile("portal/{*path:nonfile}", "portal/index.html");
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
function openKakao() {
|
||||
const kakaoUrl = document.querySelector('[data-kakao-url]')?.dataset.kakaoUrl || '#';
|
||||
if (kakaoUrl !== '#') {
|
||||
window.open(kakaoUrl, '_blank');
|
||||
} else {
|
||||
alert('카카오톡 채널 URL이 설정되지 않았습니다.');
|
||||
function openKakao(event) {
|
||||
const kakaoUrl = document.body?.dataset.kakaoUrl || window.taxbaikKakaoUrl || 'https://pf.kakao.com/_xoxchTX';
|
||||
if (event) {
|
||||
event.preventDefault();
|
||||
}
|
||||
window.open(kakaoUrl, '_blank', 'noopener,noreferrer');
|
||||
}
|
||||
|
||||
document.addEventListener('DOMContentLoaded', function() {
|
||||
|
||||
@@ -1,589 +0,0 @@
|
||||
백원숙 세무사 영업·마케팅 상세 플레이북
|
||||
1. 결론부터 말하면: “세무 + 부동산 + 가족자산” 포지션으로 가야 합니다
|
||||
|
||||
백원숙 세무사님의 승부처는 저가 기장 시장이 아닙니다. 이미 세무사 수는 많고, 지역 세무사·대형 세무법인·세무 플랫폼·저가 기장 업체가 모두 경쟁하고 있습니다. 한국세무사회 세무사 현황에서도 전국 세무사 수가 1만7천 명대 규모로 확인됩니다.
|
||||
|
||||
따라서 핵심 포지셔닝은 이겁니다.
|
||||
|
||||
“사업자 세무를 기본으로, 부동산 거래·증여·상속·가족 현금흐름까지 함께 보는 생활형 자산 세무사”
|
||||
|
||||
부동산중개사 자격은 “부동산 시장 언어를 아는 세무사”로, 보험설계사 자격은 “상속·증여·대표자 리스크·가족 현금흐름을 이해하는 세무사”로 써야 합니다. 단, 전면에 내세울 주인공은 반드시 세무사여야 합니다.
|
||||
|
||||
2. 시장 판단: 기회는 크지만, 정면승부하면 가격경쟁에 빠집니다
|
||||
|
||||
국세청 사업자 현황 지표는 국세청에 등록된 법인·일반·간이·면세 사업자 수를 기준으로 하며, 2023년 말 총 사업자는 995만 명으로 전년 대비 2.8% 증가했다고 설명합니다. 사업자 수 자체는 계속 크고, 세무 수요는 사라지기 어렵습니다.
|
||||
|
||||
하지만 문제는 수요가 크다는 것과 내가 돈을 번다는 것은 다르다는 점입니다. 단순 기장, 단순 종소세 신고, 단순 부가세 신고만 하면 비교 대상이 많아집니다. 고객은 “얼마예요?”부터 묻습니다.
|
||||
|
||||
그래서 백원숙 세무사님은 아래 3개 시장을 동시에 잡아야 합니다.
|
||||
|
||||
시장 성격 추천도 이유
|
||||
일반 개인사업자·소상공인 기장 반복 매출 ★★★★☆ 기본 현금흐름 확보
|
||||
부동산 양도·증여·상속·임대 세무 고단가 상담 ★★★★★ 부동산중개사 자격과 시너지
|
||||
보험설계사·중개사·프리랜서·영업직 세무 틈새 반복 시장 ★★★★★ 본인 경험과 언어가 맞음
|
||||
|
||||
가장 좋은 구조는 기장 고객으로 월 반복매출을 깔고, 부동산·자산 세무 상담으로 고단가 매출을 올리는 모델입니다.
|
||||
|
||||
3. 법적·윤리적 주의선: 광고는 가능하지만 과장하면 안 됩니다
|
||||
|
||||
세무사의 직무는 조세 신고·신청·청구 대리, 세무 관련 서류 작성, 장부 작성 대행, 조세 상담·자문, 세무관서 조사·처분 관련 의견진술 대리 등을 포함합니다.
|
||||
|
||||
2026년 6월 24일 이후 광고분부터 세무사·세무법인 업무 광고 기준이 적용될 예정이며, 거짓 광고, 객관적 사실 과장, 사적 관계 암시, 부당한 기대 유발, 판결·처분 예측, 무료·최저가 표기 광고 등이 금지 대상으로 정리되어 있습니다. 또한 2025년 12월 개정 세무사법은 무자격자가 세무대리 업무를 취급하는 것으로 오인될 우려가 있는 표시·광고까지 금지하는 방향으로 강화되었습니다.
|
||||
|
||||
그래서 마케팅 문구는 이렇게 가야 합니다.
|
||||
|
||||
쓰면 좋은 표현
|
||||
|
||||
“사전 검토”, “리스크 점검”, “상황별 절세 방향 안내”, “신고 전 체크”, “부동산 거래 전 세금 검토”, “사업자 세무관리 체계화”
|
||||
|
||||
피해야 할 표현
|
||||
|
||||
“무조건 절세”, “환급 보장”, “최저가”, “무료 상담 무제한”, “국세청 출신 수준”, “100% 해결”, “세무조사 안 받게 해드립니다”
|
||||
|
||||
4. 브랜드 포지션 설계
|
||||
4-1. 브랜드 한 문장
|
||||
|
||||
백원숙 세무사 — 사업과 부동산, 가족의 돈 흐름까지 함께 보는 생활자산 세무 파트너
|
||||
|
||||
4-2. 고객에게 각인시킬 핵심 이미지
|
||||
|
||||
백원숙 세무사님은 화려한 대형 세무법인 이미지보다 꼼꼼함, 현실감, 여성 대표자 관점, 가족자산 이해, 사업자 세무 실무감을 밀어야 합니다.
|
||||
|
||||
브랜드 키워드는 다음 5개입니다.
|
||||
|
||||
키워드 의미
|
||||
꼼꼼함 신고 누락·가산세·증빙 리스크 점검
|
||||
현실성 사업자 입장에서 실제 돈 흐름을 이해
|
||||
부동산 이해 양도·증여·임대·상가·주택 세무 상담
|
||||
가족자산 배우자·자녀·상속·증여·보험 활용 관점
|
||||
여성 세무사 여성 대표자·워킹맘·가족사업자에게 심리적 접근성
|
||||
4-3. 대표 슬로건 후보
|
||||
사업의 숫자와 가족의 자산을 함께 지키는 세무사
|
||||
부동산과 사업 세금을 한 번에 보는 세무 파트너
|
||||
신고만 하는 세무가 아니라, 돈의 흐름을 정리하는 세무
|
||||
사업자 세무부터 부동산 절세까지, 현실적으로 안내합니다
|
||||
성북에서 시작하는 생활자산 세무관리
|
||||
5. 주력 고객군을 4개로 좁히십시오
|
||||
1순위: 부동산 보유·매도·증여 예정자
|
||||
|
||||
가장 강력한 고단가 시장입니다. 부동산중개사 자격을 가진 세무사는 고객 입장에서 “말이 통한다”는 느낌을 줍니다.
|
||||
|
||||
대상
|
||||
|
||||
고객 니즈
|
||||
1주택자·일시적 2주택자 양도세 사전검토
|
||||
부모 자산을 자녀에게 넘기려는 가족 증여세·상속세 사전 설계
|
||||
상가·오피스텔·임대사업자 종소세·부가세·양도세 관리
|
||||
부동산 매도 전 고객 계약 전 세금 시뮬레이션
|
||||
재개발·재건축 관심자 취득·보유·양도 단계 리스크
|
||||
|
||||
상품명
|
||||
|
||||
부동산 세금 사전진단
|
||||
가족 부동산 증여·상속 세무상담
|
||||
임대사업자 세무관리 패키지
|
||||
|
||||
2순위: 보험설계사·부동산중개사·프리랜서·영업직
|
||||
|
||||
이 시장은 매우 좋습니다. 왜냐하면 백원숙 세무사님이 보험과 부동산 영업 구조를 직접 이해하기 때문입니다.
|
||||
|
||||
이 고객들이 자주 겪는 문제
|
||||
|
||||
문제 상담 포인트
|
||||
소득 변동이 큼 예상세액 관리
|
||||
경비처리 기준이 애매함 증빙·업무관련성 정리
|
||||
5월 종소세 때 불안함 월별 세금 적립 구조
|
||||
4대보험·지역보험료 부담 종합소득·보험료 영향 설명
|
||||
가족 명의·공동사업 고민 명의·증여·소득분산 리스크 점검
|
||||
|
||||
상품명
|
||||
|
||||
영업직 종합소득세 관리
|
||||
보험설계사·중개사 세무관리
|
||||
프리랜서 절세 습관 만들기
|
||||
|
||||
3순위: 성북·강북권 소상공인과 1인 법인
|
||||
|
||||
이 시장은 반복매출의 기반입니다. 다만 저가 경쟁이 심하므로 “기장료 얼마냐” 경쟁으로 들어가면 안 됩니다.
|
||||
|
||||
차별화 포인트
|
||||
|
||||
“장부만 치는 기장이 아니라, 매월 세금·인건비·현금흐름을 같이 보는 기장”
|
||||
|
||||
대상 업종
|
||||
|
||||
업종 이유
|
||||
학원·교습소 여성 대표자 많고, 지역 기반 강함
|
||||
병의원·미용·피부관리 비용·인건비·부가세 이슈
|
||||
온라인 판매자 매출자료·플랫폼 정산·부가세
|
||||
1인 법인 대표 급여·배당·가지급금·법인카드 이슈
|
||||
가족사업자 명의·급여·증여·사업승계 이슈
|
||||
4순위: 여성 대표자·워킹맘 사업자
|
||||
|
||||
백원숙 세무사님의 개인 배경은 약점이 아니라 브랜드 자산입니다. 경력이 많지 않다는 점을 숨기려고만 하지 말고, “작게 시작한 사업자의 현실을 안다”로 바꿔야 합니다.
|
||||
|
||||
메시지
|
||||
|
||||
“저도 집을 사업장으로 등록하고 작게 시작해 본 사람입니다. 그래서 처음 사업을 시작하는 대표님의 막막함을 압니다.”
|
||||
|
||||
이 문장은 매우 강합니다. 대형 세무법인이 줄 수 없는 공감입니다.
|
||||
|
||||
6. 서비스 상품 구조: 무료상담 말고 ‘유료 진단’으로 시작하십시오
|
||||
6-1. 상품 사다리
|
||||
단계 상품 목적 가격 전략
|
||||
1단계 무료 콘텐츠 신뢰 형성 블로그·PDF·체크리스트
|
||||
2단계 유료 1회 상담 진짜 고객 선별 7만~20만 원 권장
|
||||
3단계 신고대리 단기 매출 종소세·양도세·증여세
|
||||
4단계 월 기장 반복 매출 월 정액
|
||||
5단계 자산·사업 세무관리 고부가 분기/연간 자문
|
||||
|
||||
핵심은 무료상담을 남발하지 않는 것입니다. 무료상담은 가격 민감 고객을 많이 끌고 옵니다. 대신 “상담료는 받되, 기장 또는 신고 계약 시 일부 차감” 방식이 좋습니다.
|
||||
|
||||
6-2. 대표 상품 5개
|
||||
상품 1. 사업자 첫 세무정리 패키지
|
||||
|
||||
대상: 신규 개인사업자, 프리랜서, 스마트스토어, 영업직
|
||||
내용: 사업자등록 유형, 부가세, 종소세, 비용처리, 증빙관리, 세금계좌 분리
|
||||
목표: 기장 전환
|
||||
|
||||
상품 2. 월 기장 관리 패키지
|
||||
|
||||
대상: 매출 발생 사업자
|
||||
내용: 장부, 부가세, 원천세, 인건비, 예상세액, 증빙 점검
|
||||
차별화: 월 1회 “세금 리스크 리포트” 제공
|
||||
|
||||
상품 3. 부동산 양도세 사전진단
|
||||
|
||||
대상: 매도 예정자
|
||||
내용: 보유기간, 거주요건, 취득가액, 필요경비, 장기보유특별공제, 비과세 여부 검토
|
||||
목표: 고단가 상담 및 신고대리
|
||||
|
||||
상품 4. 가족 증여·상속 사전상담
|
||||
|
||||
대상: 부모 자산 이전 고민 고객
|
||||
내용: 증여 시기, 증여재산 평가, 세부담, 자금출처, 보험 활용 가능성 검토
|
||||
주의: 보험상품 판매는 세무상담과 명확히 분리
|
||||
|
||||
상품 5. 보험설계사·중개사 종소세 관리
|
||||
|
||||
대상: 보험설계사, 부동산중개사, 영업직
|
||||
내용: 수수료 소득, 경비처리, 차량비, 접대비, 통신비, 교육비, 소득세 예측
|
||||
강점: 본인이 업계 구조를 이해함
|
||||
|
||||
7. 온라인 채널 설계: 네이버를 본진, 카카오를 접점, 유튜브/릴스를 확장 채널로
|
||||
7-1. 채널 우선순위
|
||||
우선순위 채널 역할
|
||||
1 네이버 플레이스 지역 검색 신뢰
|
||||
2 네이버 블로그 검색 유입
|
||||
3 카카오채널 상담 전환·재접촉
|
||||
4 홈페이지 또는 랜딩페이지 상품 설명·예약
|
||||
5 유튜브 쇼츠/인스타 릴스 인지도 확장
|
||||
6 네이버 검색광고 빠른 테스트
|
||||
|
||||
세무 고객은 충동구매를 하지 않습니다. 검색하고, 비교하고, 프로필을 보고, 글을 읽고, 상담을 신청합니다. 그러므로 채널의 목적은 “조회수”가 아니라 신뢰 축적과 상담 전환입니다.
|
||||
|
||||
8. 네이버 플레이스 세팅 매뉴얼
|
||||
8-1. 상호명
|
||||
|
||||
가능하면 아래 형식이 좋습니다.
|
||||
|
||||
백원숙세무회계 | 부동산·사업자 세무상담
|
||||
|
||||
단, 상호 표기 규정과 실제 사업자명 표기 가능 범위는 확인해야 합니다.
|
||||
|
||||
8-2. 대표 설명문
|
||||
|
||||
백원숙 세무사는 사업자 기장, 종합소득세, 부가가치세, 양도세, 증여·상속 세무상담을 중심으로 운영합니다. 부동산중개사·보험설계사 자격을 함께 보유하여 부동산 거래, 임대사업, 가족자산 이전, 사업자 현금흐름까지 현실적으로 검토합니다.
|
||||
|
||||
8-3. 플레이스 카테고리
|
||||
|
||||
주 카테고리는 반드시 세무사 또는 세무회계 중심이어야 합니다. 부동산·보험 카테고리로 흐리면 안 됩니다.
|
||||
|
||||
8-4. 사진 구성
|
||||
사진 목적
|
||||
대표 프로필 사진 신뢰 형성
|
||||
책상·상담공간 안정감
|
||||
자격증·등록증 일부 전문성
|
||||
상담 장면 연출 친근감
|
||||
체크리스트 이미지 실무형 이미지
|
||||
8-5. 리뷰 요청 문구
|
||||
|
||||
상담이 도움이 되셨다면 다른 대표님들께도 참고가 될 수 있도록 간단한 후기를 남겨주세요. 세금 문제를 처음 겪는 분들께 큰 도움이 됩니다.
|
||||
|
||||
9. 블로그 콘텐츠 전략: 광고글 말고 “검색되는 답변”을 쌓아야 합니다
|
||||
9-1. 블로그 글의 기본 구조
|
||||
|
||||
모든 글은 아래 구조로 쓰십시오.
|
||||
|
||||
고객이 실제로 묻는 질문을 제목으로 쓴다.
|
||||
결론을 첫 문단에 쓴다.
|
||||
사례를 하나 든다.
|
||||
체크리스트를 제공한다.
|
||||
“상담 전 준비자료”를 안내한다.
|
||||
카카오채널 또는 예약 링크로 연결한다.
|
||||
9-2. 핵심 카테고리 5개
|
||||
카테고리 목적
|
||||
사업자 세무 기장 고객 확보
|
||||
종합소득세 5월 집중 유입
|
||||
부가가치세 1월·7월 유입
|
||||
부동산 세금 고단가 상담
|
||||
보험설계사·중개사 세무 틈새시장 장악
|
||||
|
||||
국세청 세무일정상 원천세 신고는 매월 10일, 부가가치세 예정·확정 신고는 4월·7월·10월 등 주요 시점에 반복적으로 발생하고, 종합소득세 확정신고·납부도 매년 중요한 시즌입니다. 이런 일정형 수요는 콘텐츠 캘린더와 광고 집행 타이밍을 맞추기 좋습니다.
|
||||
|
||||
10. 바로 쓸 수 있는 블로그 제목 40개
|
||||
사업자 기장 콘텐츠
|
||||
개인사업자 기장 꼭 해야 하나요? 매출 규모별 판단 기준
|
||||
사업자 통장 꼭 따로 써야 할까? 세무사가 보는 기준
|
||||
카드값은 많은데 세금이 많이 나오는 이유
|
||||
간이과세자에서 일반과세자로 바뀌면 무엇이 달라질까
|
||||
사업 초기에 세무사에게 꼭 물어봐야 할 7가지
|
||||
가족에게 급여를 줘도 비용처리가 될까
|
||||
사업자 차량 비용처리, 어디까지 가능할까
|
||||
홈오피스 사업자의 비용처리 기준
|
||||
매출은 늘었는데 돈이 없는 대표님의 세금 구조
|
||||
장부를 맡기기 전에 준비해야 할 자료
|
||||
부가세 콘텐츠
|
||||
부가세 신고 전 꼭 확인해야 할 매입자료
|
||||
세금계산서 누락하면 어떤 문제가 생길까
|
||||
현금영수증과 카드매출, 부가세 신고에서 어떻게 반영될까
|
||||
간이과세자도 부가세 신고를 조심해야 하는 이유
|
||||
폐업 후 부가세 신고를 놓치면 생기는 일
|
||||
종합소득세 콘텐츠
|
||||
프리랜서 종합소득세, 경비처리 어디까지 가능할까
|
||||
보험설계사 종소세 신고 전 준비자료
|
||||
부동산중개사 종합소득세 절세 체크리스트
|
||||
작년에 소득이 갑자기 늘었다면 5월 전에 해야 할 일
|
||||
종소세 신고 후 건강보험료가 오르는 이유
|
||||
부동산 세무 콘텐츠
|
||||
집 팔기 전 양도세 상담을 먼저 받아야 하는 이유
|
||||
1세대 1주택 비과세, 가장 많이 착각하는 부분
|
||||
부모님 집을 자녀에게 증여하기 전 체크할 것
|
||||
상가 매도 전 필요경비로 인정받을 수 있는 것
|
||||
임대사업자 종합소득세, 장부가 중요한 이유
|
||||
오피스텔은 주택일까 상가일까? 세금에서 달라지는 점
|
||||
부동산 계약서 쓰기 전 세금부터 봐야 하는 경우
|
||||
재개발·재건축 입주권 세금, 미리 봐야 하는 이유
|
||||
부부 공동명의가 항상 유리한 것은 아닙니다
|
||||
자금출처조사, 증여 전부터 준비해야 합니다
|
||||
보험·가족자산 연계 콘텐츠
|
||||
상속세 납부재원, 세무 관점에서 왜 미리 봐야 할까
|
||||
보험금은 상속세와 어떤 관련이 있을까
|
||||
가족에게 돈을 빌려줄 때 차용증만 있으면 될까
|
||||
자녀에게 생활비를 보내도 증여세 문제가 될까
|
||||
대표자 유고 리스크와 사업자 세무관리
|
||||
여성 대표자·워킹맘 사업자 콘텐츠
|
||||
집에서 시작한 사업, 세무처리 어떻게 해야 할까
|
||||
육아 중 시작한 부업이 사업이 되는 순간
|
||||
여성 1인 사업자가 처음 세무사를 만날 때 물어볼 질문
|
||||
부부가 함께 운영하는 사업, 명의와 급여는 어떻게 정할까
|
||||
작은 사업일수록 세금 습관이 중요한 이유
|
||||
11. 상담 전환 장치: 모든 콘텐츠 끝에는 같은 문구를 넣으십시오
|
||||
|
||||
블로그 글 마지막에는 매번 아래 문구를 넣으면 됩니다.
|
||||
|
||||
세금은 신고 시점보다 계약·매출·명의·자금 이동 전에 검토할수록 선택지가 많습니다.
|
||||
사업자 기장, 종합소득세, 부가세, 양도세, 증여·상속세 상담이 필요하시면 상담 전 자료를 정리해 드린 뒤 검토해 드립니다.
|
||||
|
||||
그리고 버튼은 3개만 두십시오.
|
||||
|
||||
카카오채널 상담하기
|
||||
상담 예약하기
|
||||
상담 전 준비자료 보기
|
||||
12. 카카오채널 운영 매뉴얼
|
||||
12-1. 자동응답 문구
|
||||
|
||||
안녕하세요. 백원숙 세무사입니다.
|
||||
정확한 상담을 위해 아래 내용을 남겨주세요.
|
||||
|
||||
상담 분야: 기장 / 종소세 / 부가세 / 양도세 / 증여·상속 / 기타
|
||||
개인 또는 법인 여부
|
||||
업종 또는 부동산 종류
|
||||
상담 희망 일정
|
||||
현재 가장 걱정되는 부분
|
||||
12-2. 상담 접수 후 1차 답변
|
||||
|
||||
남겨주신 내용 확인했습니다. 세금 상담은 사실관계에 따라 결론이 달라질 수 있어 자료 확인 후 안내드리는 방식으로 진행합니다. 상담 전 필요한 자료를 먼저 보내드리겠습니다.
|
||||
|
||||
12-3. 유료상담 안내 문구
|
||||
|
||||
단순 문의가 아니라 세액 방향, 신고 리스크, 절세 가능성을 검토하는 상담은 유료로 진행됩니다. 상담 후 신고대리 또는 기장 계약으로 이어지는 경우 상담료 일부를 차감해 드릴 수 있습니다.
|
||||
|
||||
“무료”를 전면에 내세우지 않는 것이 좋습니다. 특히 앞으로 광고 기준상 무료·최저가 표현은 주의가 필요합니다.
|
||||
|
||||
13. 첫 상담 프로세스: 상담이 곧 영업입니다
|
||||
13-1. 30분 상담 구조
|
||||
시간 내용
|
||||
0~5분 고객 상황 확인
|
||||
5~10분 현재 가장 큰 세무 리스크 파악
|
||||
10~20분 선택 가능한 방향 설명
|
||||
20~25분 필요한 자료와 다음 단계 제시
|
||||
25~30분 신고대리·기장·자문 상품 안내
|
||||
13-2. 첫 질문 10개
|
||||
현재 개인사업자입니까, 법인입니까?
|
||||
업종과 매출 구조는 어떻게 되십니까?
|
||||
직원 또는 프리랜서에게 지급하는 인건비가 있습니까?
|
||||
사업용 통장과 개인 통장을 분리하고 있습니까?
|
||||
세금계산서·현금영수증·카드자료는 누가 관리합니까?
|
||||
최근 1년 안에 부동산 매매·증여·임대가 있었습니까?
|
||||
가족 명의로 돈이나 자산이 이동한 적이 있습니까?
|
||||
현재 가장 부담스러운 세금은 무엇입니까?
|
||||
과거 신고에서 찜찜한 부분이 있습니까?
|
||||
앞으로 1년 안에 매도, 증여, 사업 확장 계획이 있습니까?
|
||||
13-3. 상담 마무리 멘트
|
||||
|
||||
오늘 상담 기준으로 보면 가장 먼저 정리해야 할 부분은 세 가지입니다. 첫째는 자료 정리, 둘째는 예상세액 확인, 셋째는 앞으로 같은 문제가 반복되지 않도록 월별 관리 구조를 만드는 것입니다. 원하시면 신고만 처리하는 방식과 매월 관리하는 방식 두 가지로 제안드리겠습니다.
|
||||
|
||||
14. 가격 전략: 싸게 시작하지 마십시오
|
||||
|
||||
초기 개업 또는 재활성화 단계에서 가장 흔한 실수는 “일단 싸게라도 받자”입니다. 그러면 고객층이 그렇게 굳어집니다.
|
||||
|
||||
14-1. 권장 가격 구조 예시
|
||||
상품 권장 방향
|
||||
단순 전화문의 무료 범위 최소화
|
||||
1회 세무상담 유료
|
||||
종소세 신고대리 난이도별 차등
|
||||
양도세·증여세 상담 일반 상담보다 높게
|
||||
월 기장 업종·자료량·인건비 여부별 차등
|
||||
분기 자문 고소득자·부동산 보유자 대상
|
||||
|
||||
정확한 금액은 지역과 업무량에 맞춰 조정해야 하지만, 원칙은 분명합니다.
|
||||
|
||||
기장료는 낮추지 말고, 관리의 깊이를 올려야 합니다.
|
||||
|
||||
14-2. 패키지 이름으로 가격 저항을 낮추기
|
||||
|
||||
“월 기장료 20만 원입니다”보다 아래처럼 말하는 게 낫습니다.
|
||||
|
||||
“월 세무관리에는 장부 작성, 부가세 자료 검토, 원천세 일정 관리, 증빙 점검, 예상세액 안내가 포함됩니다.”
|
||||
|
||||
고객은 기장료를 사는 게 아니라 불안 해소와 가산세 예방을 삽니다.
|
||||
|
||||
15. 광고 전략: 처음부터 큰돈 쓰지 말고 키워드 검증부터
|
||||
15-1. 1단계: 브랜드 검색광고
|
||||
|
||||
처음에는 본인 이름과 사무소명을 검색했을 때 신뢰가 쌓이도록 해야 합니다.
|
||||
|
||||
키워드
|
||||
|
||||
키워드
|
||||
백원숙 세무사
|
||||
백원숙 세무회계
|
||||
성북구 세무사 백원숙
|
||||
하월곡동 세무사
|
||||
15-2. 2단계: 지역 + 업무 키워드
|
||||
키워드
|
||||
성북구 세무사
|
||||
월곡동 세무사
|
||||
하월곡동 세무사
|
||||
성북구 기장 세무사
|
||||
성북구 양도세 상담
|
||||
강북구 종합소득세 세무사
|
||||
15-3. 3단계: 틈새 키워드
|
||||
키워드
|
||||
보험설계사 종합소득세
|
||||
부동산중개사 종합소득세
|
||||
프리랜서 종합소득세 상담
|
||||
임대사업자 종합소득세
|
||||
부동산 양도세 사전상담
|
||||
부모님 집 증여세 상담
|
||||
|
||||
광고비는 처음부터 많이 쓰지 말고, 상담 전환 키워드를 찾는 데 써야 합니다. 조회수 많은 키워드보다 실제 문의가 들어오는 키워드가 중요합니다.
|
||||
|
||||
16. 90일 실행 로드맵
|
||||
1개월 차: 신뢰 기반 구축
|
||||
목표
|
||||
|
||||
온라인에서 검색했을 때 “이 사람은 실제로 활동하는 세무사다”라는 인상을 만드는 단계입니다.
|
||||
|
||||
실행
|
||||
주차 할 일
|
||||
1주차 네이버 플레이스 개설·정비, 프로필 사진 촬영
|
||||
1주차 카카오채널 개설, 자동응답 세팅
|
||||
2주차 블로그 카테고리 5개 구성
|
||||
2주차 대표 소개글 작성
|
||||
3주차 핵심 글 10개 발행
|
||||
4주차 상담 신청 폼 제작
|
||||
4주차 지인·기존 네트워크에 오픈 안내
|
||||
1개월 차 필수 콘텐츠 10개
|
||||
백원숙 세무사 소개
|
||||
사업자 기장 상담 안내
|
||||
종합소득세 상담 안내
|
||||
부가가치세 상담 안내
|
||||
양도세 사전상담 안내
|
||||
증여·상속 세무상담 안내
|
||||
보험설계사 종소세 상담 안내
|
||||
부동산중개사 종소세 상담 안내
|
||||
상담 전 준비자료
|
||||
자주 묻는 질문
|
||||
2개월 차: 상담 전환 만들기
|
||||
목표
|
||||
|
||||
블로그 방문자를 상담 신청자로 바꾸는 단계입니다.
|
||||
|
||||
실행
|
||||
주차 할 일
|
||||
5주차 네이버 검색광고 소액 테스트
|
||||
6주차 부동산 세무 콘텐츠 집중 발행
|
||||
7주차 보험설계사·중개사 콘텐츠 집중 발행
|
||||
8주차 상담 후기·사례형 콘텐츠 발행
|
||||
2개월 차 KPI
|
||||
지표 목표
|
||||
블로그 글 누적 25개 이상
|
||||
카카오채널 친구 30명 이상
|
||||
상담 문의 월 10건 이상
|
||||
유료 상담 월 5건 이상
|
||||
기장 전환 1~3건
|
||||
3개월 차: 상품화와 반복 시스템
|
||||
목표
|
||||
|
||||
문의가 들어올 때마다 즉흥 대응하지 않고, 상품과 프로세스로 처리하는 단계입니다.
|
||||
|
||||
실행
|
||||
주차 할 일
|
||||
9주차 유료상담 상품 페이지 제작
|
||||
10주차 기장 패키지 3단계 구성
|
||||
11주차 부동산 세무상담 체크리스트 PDF 제작
|
||||
12주차 기존 상담자 리마케팅 메시지 발송
|
||||
3개월 차 KPI
|
||||
지표 목표
|
||||
블로그 글 누적 40개 이상
|
||||
상담 문의 월 20건 이상
|
||||
유료 상담 월 10건 이상
|
||||
기장 전환 월 3~5건
|
||||
부동산 세무 상담 월 3건 이상
|
||||
17. 콘텐츠 발행 캘린더
|
||||
매주 고정 루틴
|
||||
요일 콘텐츠
|
||||
월요일 사업자 세무 팁
|
||||
화요일 부동산 세금 사례
|
||||
수요일 보험설계사·프리랜서 세무
|
||||
목요일 자주 묻는 질문
|
||||
금요일 상담 사례형 콘텐츠
|
||||
토요일 짧은 영상 또는 카드뉴스
|
||||
일요일 쉬거나 예약 발행
|
||||
세무 시즌별 집중 주제
|
||||
시기 집중 주제
|
||||
1월 부가세 확정신고
|
||||
2월 면세사업자·사업장현황신고
|
||||
3월 법인세
|
||||
4월 부가세 예정신고
|
||||
5월 종합소득세
|
||||
7월 부가세 확정신고
|
||||
8월 법인세 중간예납
|
||||
10월 부가세 예정신고
|
||||
11월 종소세 중간예납
|
||||
12월 절세 마감 점검
|
||||
18. 부동산·보험 자격증 활용법
|
||||
18-1. 부동산중개사 자격 활용
|
||||
|
||||
전면 문구는 이렇게 쓰면 좋습니다.
|
||||
|
||||
“부동산 거래 구조를 이해하는 세무사로서, 매도·증여·임대 단계에서 발생할 수 있는 세금 리스크를 사전에 검토합니다.”
|
||||
|
||||
하지 말아야 할 것은 “중개도 하고 세금도 다 해준다”는 식의 혼합 이미지입니다. 고객은 헷갈립니다. 주업은 세무입니다.
|
||||
|
||||
18-2. 보험설계사 자격 활용
|
||||
|
||||
보험은 조심스럽게 다뤄야 합니다. 세무상담 고객에게 보험 판매 의도가 강하게 느껴지면 신뢰가 떨어질 수 있습니다.
|
||||
|
||||
좋은 방향은 이겁니다.
|
||||
|
||||
“상속세 납부재원, 대표자 유고 리스크, 가족 현금흐름 관점에서 보험 구조의 세무상 의미를 설명할 수 있습니다.”
|
||||
|
||||
즉, 보험은 판매 상품이 아니라 자산 리스크 설명 도구로 먼저 써야 합니다.
|
||||
|
||||
19. 고객 유입별 응대 전략
|
||||
19-1. “기장료 얼마예요?” 고객
|
||||
|
||||
바로 가격을 말하지 말고 이렇게 답하십시오.
|
||||
|
||||
업종, 매출 규모, 직원 여부, 세금계산서 발행량, 부가세 신고 난이도에 따라 달라집니다. 단순 장부 작성만 필요한지, 예상세액과 증빙관리까지 필요한지 먼저 확인한 뒤 안내드리겠습니다.
|
||||
|
||||
19-2. “양도세 얼마 나와요?” 고객
|
||||
|
||||
양도세는 취득가액, 보유기간, 거주기간, 주택 수, 필요경비, 조정대상지역 여부 등에 따라 달라집니다. 계약 전이면 선택지가 더 많기 때문에 자료를 보고 사전 검토하는 방식으로 진행하는 것이 안전합니다.
|
||||
|
||||
19-3. “무료로 간단히 봐주세요” 고객
|
||||
|
||||
간단한 방향 안내는 가능하지만, 세액 판단이나 신고 리스크 검토는 사실관계 확인이 필요해 유료상담으로 진행됩니다. 잘못된 간단 답변이 오히려 고객님께 손해가 될 수 있습니다.
|
||||
|
||||
19-4. “다른 데는 더 싸던데요?” 고객
|
||||
|
||||
신고만 처리하는 방식과 세무 리스크를 함께 관리하는 방식은 범위가 다릅니다. 저는 자료 확인, 증빙 점검, 예상세액 안내, 신고 후 관리까지 포함해 안내드립니다.
|
||||
|
||||
20. 리뷰·소개 시스템
|
||||
|
||||
세무업은 신뢰업입니다. 광고보다 강한 것이 후기와 소개입니다.
|
||||
|
||||
20-1. 리뷰 요청 타이밍
|
||||
상황 요청 가능성
|
||||
상담 직후 고객이 고맙다고 할 때 높음
|
||||
신고 완료 후 세액 설명까지 끝났을 때 높음
|
||||
가산세 리스크를 줄였을 때 매우 높음
|
||||
기장 3개월 이상 유지 고객 높음
|
||||
20-2. 소개 요청 문구
|
||||
|
||||
주변에 부동산 매도, 증여, 사업자 세금 문제로 고민하는 분이 계시면 제 연락처를 편하게 전달해 주세요. 처음 상담하시는 분들도 이해하기 쉽게 정리해 드리겠습니다.
|
||||
|
||||
21. 월간 운영 대시보드
|
||||
|
||||
매월 말 아래 숫자를 기록하십시오.
|
||||
|
||||
지표 목표
|
||||
블로그 신규 글 월 12개 이상
|
||||
검색 유입 전월 대비 증가
|
||||
카카오채널 신규 친구 월 20명 이상
|
||||
상담 문의 월 20건 이상
|
||||
유료상담 전환율 30% 이상
|
||||
기장 전환율 유료상담의 20% 이상
|
||||
부동산 세무 상담 월 3건 이상
|
||||
리뷰 수 월 3개 이상
|
||||
월 반복매출 증가 매월 측정
|
||||
|
||||
이 표를 매월 보면 마케팅이 감이 아니라 숫자가 됩니다.
|
||||
|
||||
22. 백원숙 세무사님의 차별화 메시지
|
||||
|
||||
가장 강한 소개문은 아래 형태입니다.
|
||||
|
||||
안녕하세요. 백원숙 세무사입니다.
|
||||
저는 세무사 자격과 함께 부동산중개사, 보험설계사 자격을 보유하고 있습니다.
|
||||
사업자 세무, 종합소득세, 부가가치세, 양도세, 증여·상속 상담을 중심으로, 단순 신고를 넘어 사업과 가족자산의 돈 흐름을 함께 검토합니다.
|
||||
특히 부동산 거래를 앞둔 분, 보험설계사·부동산중개사·프리랜서처럼 소득 변동이 큰 분, 처음 사업을 시작해 세금이 막막한 대표님께 현실적인 세무 방향을 안내드립니다.
|
||||
|
||||
23. 하지 말아야 할 것
|
||||
금지 이유
|
||||
“저렴한 기장” 강조 저가 고객만 모임
|
||||
보험 판매를 전면에 내세움 세무 신뢰 훼손
|
||||
모든 업종을 다 잡으려 함 기억되지 않음
|
||||
블로그에 세법 복붙 검색·전환 모두 약함
|
||||
무료상담 남발 시간 소모 큼
|
||||
광고부터 큰돈 집행 메시지 검증 전 낭비
|
||||
경력 부족을 숨기기만 함 오히려 불안감 증가
|
||||
세액 보장성 표현 광고·윤리 리스크
|
||||
24. 최종 실행 우선순위
|
||||
|
||||
가장 먼저 할 일은 이 순서입니다.
|
||||
|
||||
브랜드 문장 확정
|
||||
“사업과 부동산, 가족자산을 함께 보는 세무사”
|
||||
네이버 플레이스 정비
|
||||
사진, 소개문, 상담 분야, 예약 링크 세팅
|
||||
카카오채널 개설
|
||||
자동응답, 상담 접수 양식, 유료상담 안내
|
||||
블로그 핵심 글 10개 작성
|
||||
사업자 세무 3개, 부동산 세무 3개, 영업직 종소세 2개, 소개글 1개, 상담준비자료 1개
|
||||
상담 상품 만들기
|
||||
무료문의와 유료상담의 경계 설정
|
||||
소액 광고 테스트
|
||||
지역 키워드 + 부동산 세무 + 보험설계사 종소세
|
||||
리뷰 확보
|
||||
상담 후 후기 요청 시스템화
|
||||
25. 한 줄 전략
|
||||
|
||||
백원숙 세무사님은 “경력 많은 대형 세무사”처럼 보이려고 하면 불리합니다. 대신 이렇게 가야 합니다.
|
||||
|
||||
작게 사업을 시작해 본 현실감, 부동산과 보험을 이해하는 생활자산 감각, 세무사로서의 전문성을 결합한 ‘가족형 사업자·부동산 세무 파트너’가 되어야 합니다.
|
||||
|
||||
이 포지션은 충분히 경쟁력이 있습니다. 가격경쟁을 피하면서도, 기장·신고·상담·자문으로 수익 구조를 넓힐 수 있습니다.
|
||||
@@ -1 +0,0 @@
|
||||
프로필: 백원숙 세무사 80년생 여성, 2015년 세무사 자격 취득 부동산 중계사 자격 취득 보험설계사 자격 취득 보험일과 세무사일을 겸해서 하고 있음. 세무사 자격을 취득후 경력이 많지 않은 상태에서 육아로 인해 소규모로만 사업을 집을 사업장으로 등록하여 왔다. 이제 활동을 할수 있는 여럭이 생겨서 외부에 알리 위한 수단과 고객 컨택 수단등을 고민하고 있다. 백원수 세무사를 알리기 위한 방법 고객하고에 접접이 될만한 포인트 가능하면 오프라인보다는 온라인으로 펼칠수 있는 방법 자격 취득 라이센스를 최대한 활용할수 있는 방법. 세무사에 특성들과 최근 경향성과 소득적인 부분들을 포함해서 전혀 알지 못한다. 본업인 세무사가 주가 되어야 한다. 세무사 사업과 기타 취득 자격증을 시너지가 돼도록 남들과 다른 경쟁력 포인트를 가질수 있는 뭔가가 있었으면 한다. 결국은 잘해서 경제적으로 이득을 많이 얻고 싶은데 어떻게 해야할지를 모르겠다는거다. 시장에 경쟁이 너무 치열해서 통합적으로 분석해서 경쟁이 심하지 않고 현재 환경에서 적절한 마케팅 방법들 까지 포함해서 경쟁력을 가지고 경제적 이득을 극대화 할수있는 백원숙 세무사에 대한 컨설팅을 해죠. 사회 전반적인 통찰이 필요해보여. 영업 마케팅 전략에 대한 구체적인 플레이북이 필요하다.
|
||||
Reference in New Issue
Block a user