DevOps 找不到 APPSETTINGS.JSON 文件 - 但项目按预期部署和运行
DevOps can't find the APPSETTINGS.JSON file - but the project deploys and runs as expected
我们在 ASP .NET Core Web 应用程序中嵌入了一个 React 应用程序 - 我相信 react.js 模板用于创建项目。
在 clientapp
文件夹中,我们维护一个 appsettings.json
文件来保存 API 的 URL。
我们使用 Git 进行版本控制,Azure DevOps 包含存储库。 CD/CI 已实施,管道已就位以构建并 deploy/release 到部署槽。
部署后,应用程序在 DEV 部署槽中运行良好 - React 应用程序可以正确读取 API URL - 目前 DEV API URL在 appsettings.json
文件中硬编码。
我们希望使用转换来管理文件 appsettings.json
中 API URL 的状态。但是一旦部署,DevOps 找不到文件 appsettings.json
,因此他们无法应用转换。
开发人员几乎无法访问 PipeLine,因此很难确定 Build Pipeline 中的步骤或进程是否操纵了 appsettings.json
文件。此外,我们了解到未使用 webpack。
我们无权访问 Azure 门户控制台 - 我们无法查找该文件。
在 Build PipeLine 的发布部分,我看到以下内容:react-scripts --max_old_space_size=4096 build
下面是以下输出:
Creating an optimized production build...
Compiled successfully.
File sizes after gzip:
1.47 MB build\static\js.ef7d60da.chunk.js
268.58 KB build\static\css.24993e46.chunk.css
19.18 KB build\static\js\main.878c95b4.chunk.js
5.63 KB build\static\css\main.0044b53f.chunk.css
775 B build\static\js\runtime~main.ff579d2d.js
我怀疑 appsettings.json
文件被存储到其中一个 JS 文件中,但我不太确定。
如果文件正在迁移到上述文件之一,我们如何从优化过程中排除 appsettings.json
?
如果优化过程不是 appsettings.json
"disappears" 的原因,我还能从哪里找出为什么它没有 deployed/released 作为独立文件?
我在我的机器上运行执行npm run --max_old_space_size=4096 build
命令,发现创建了一组类似的文件:
我发现其中一个嵌入了 appsettings.json
元素:
我还从上图中看到,是的,我们正在使用某种风格的 WEBPACK,这为我解释了为什么 appsettings.json
没有部署为独立文件。
知道如何从构建优化过程中排除 appsettings.json
或知道这是否可能对我来说仍然很有价值。
我们在 ASP .NET Core Web 应用程序中嵌入了一个 React 应用程序 - 我相信 react.js 模板用于创建项目。
在 clientapp
文件夹中,我们维护一个 appsettings.json
文件来保存 API 的 URL。
我们使用 Git 进行版本控制,Azure DevOps 包含存储库。 CD/CI 已实施,管道已就位以构建并 deploy/release 到部署槽。
部署后,应用程序在 DEV 部署槽中运行良好 - React 应用程序可以正确读取 API URL - 目前 DEV API URL在 appsettings.json
文件中硬编码。
我们希望使用转换来管理文件 appsettings.json
中 API URL 的状态。但是一旦部署,DevOps 找不到文件 appsettings.json
,因此他们无法应用转换。
开发人员几乎无法访问 PipeLine,因此很难确定 Build Pipeline 中的步骤或进程是否操纵了 appsettings.json
文件。此外,我们了解到未使用 webpack。
我们无权访问 Azure 门户控制台 - 我们无法查找该文件。
在 Build PipeLine 的发布部分,我看到以下内容:react-scripts --max_old_space_size=4096 build
下面是以下输出:
Creating an optimized production build...
Compiled successfully.
File sizes after gzip:
1.47 MB build\static\js.ef7d60da.chunk.js
268.58 KB build\static\css.24993e46.chunk.css
19.18 KB build\static\js\main.878c95b4.chunk.js
5.63 KB build\static\css\main.0044b53f.chunk.css
775 B build\static\js\runtime~main.ff579d2d.js
我怀疑 appsettings.json
文件被存储到其中一个 JS 文件中,但我不太确定。
如果文件正在迁移到上述文件之一,我们如何从优化过程中排除 appsettings.json
?
如果优化过程不是 appsettings.json
"disappears" 的原因,我还能从哪里找出为什么它没有 deployed/released 作为独立文件?
我在我的机器上运行执行npm run --max_old_space_size=4096 build
命令,发现创建了一组类似的文件:
我发现其中一个嵌入了 appsettings.json
元素:
我还从上图中看到,是的,我们正在使用某种风格的 WEBPACK,这为我解释了为什么 appsettings.json
没有部署为独立文件。
知道如何从构建优化过程中排除 appsettings.json
或知道这是否可能对我来说仍然很有价值。