我正在使用AWS Pipeline部署.NET Framework应用程序,但是在尝试为Code Deploy创建zip文件时遇到了麻烦。源和构建步骤正在传递,但是当尝试为Code Deploy创建程序包时,发生了一些奇怪的事情。
这是我的文件夹结构:
Project
-Source
-Base
-CoreAPI
-Api
- bin
- scripts
- appspec.yml
- ...
-Database
- ...
-Nuget
- ...
构建后,我想创建一个包含“ Project \ Source \ Base \ CoreAPI \ Api”中所有文件和文件夹的zip文件
这里是buildspec.yml的一部分,与工件有关:
artifacts:
files:
- '**/*'
name: "api-build-artifact"
base-directory: .\Source\Api\CoreAPI\Api
结果代码构建会在“源”中创建一个包含所有文件和文件夹的zip文件,基本上会丢弃“基本目录”。
我尝试了一些类似的变体:
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