代码构建工件未正确打包
Code build artifacts are not packed correctly
我正在使用 AWS Pipeline 部署 .NET Framework 应用程序,但在尝试为 Code Deploy 创建 zip 文件时卡住了。
源代码和构建步骤正在通过,但是在尝试为代码部署创建包时,发生了一些奇怪的事情。
这是我的文件夹结构:
Project
-Source
-Base
-CoreAPI
-Api
- bin
- scripts
- appspec.yml
- ...
-Database
- ...
-Nuget
- ...
构建后,我想创建一个 zip 文件,其中包含 "Project\Source\Base\CoreAPI\Api"
中的所有文件和文件夹
这是 buildspec.yml 中与工件相关的部分:
artifacts:
files:
- '**/*'
name: "api-build-artifact"
base-directory: .\Source\Api\CoreAPI\Api
因此代码构建创建了一个 zip 文件,其中包含 "Source" 中的所有文件和文件夹,基本上它丢弃了 "base-directory".
我尝试了一些像这样的变体:
artifacts:
files:
- '.\Source\Base\CoreAPI\Api\**\*'
但随后我得到一个文件夹结构为 Source\Base\CoreAPI\Api + 所有文件和文件夹的 zip,显然,代码部署失败,因为 "appspec.yml" 文件不在根文件夹中。
知道这里可能出了什么问题吗?
您在工件下的缩进是错误的。试试这个:
artifacts:
files:
- '**/*'
name: "api-build-artifact"
base-directory: .\Source\Api\CoreAPI\Api
discard-paths: yes
参考:
https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html
我正在使用 AWS Pipeline 部署 .NET Framework 应用程序,但在尝试为 Code Deploy 创建 zip 文件时卡住了。 源代码和构建步骤正在通过,但是在尝试为代码部署创建包时,发生了一些奇怪的事情。
这是我的文件夹结构:
Project
-Source
-Base
-CoreAPI
-Api
- bin
- scripts
- appspec.yml
- ...
-Database
- ...
-Nuget
- ...
构建后,我想创建一个 zip 文件,其中包含 "Project\Source\Base\CoreAPI\Api"
中的所有文件和文件夹这是 buildspec.yml 中与工件相关的部分:
artifacts:
files:
- '**/*'
name: "api-build-artifact"
base-directory: .\Source\Api\CoreAPI\Api
因此代码构建创建了一个 zip 文件,其中包含 "Source" 中的所有文件和文件夹,基本上它丢弃了 "base-directory".
我尝试了一些像这样的变体:
artifacts:
files:
- '.\Source\Base\CoreAPI\Api\**\*'
但随后我得到一个文件夹结构为 Source\Base\CoreAPI\Api + 所有文件和文件夹的 zip,显然,代码部署失败,因为 "appspec.yml" 文件不在根文件夹中。
知道这里可能出了什么问题吗?
您在工件下的缩进是错误的。试试这个:
artifacts:
files:
- '**/*'
name: "api-build-artifact"
base-directory: .\Source\Api\CoreAPI\Api
discard-paths: yes
参考: https://docs.aws.amazon.com/codebuild/latest/userguide/build-spec-ref.html