Amazon web services 如何将正确的项目路径传递给bitbucket管道?

Amazon web services 如何将正确的项目路径传递给bitbucket管道?,amazon-web-services,aws-lambda,bitbucket,continuous-deployment,bitbucket-pipelines,Amazon Web Services,Aws Lambda,Bitbucket,Continuous Deployment,Bitbucket Pipelines,我想使用bit桶管道部署aws lamda.net核心项目 我已经创建了bitbucket-pipelines.yml,如下所示,但在构建运行后出现错误- MSBUILD:错误MSB1003:指定项目或解决方案文件。当前工作目录不包含项目或解决方案文件 文件代码- image: microsoft/dotnet:sdk pipelines: default: - step: caches: - dotnetcore script:

我想使用bit桶管道部署aws lamda.net核心项目

我已经创建了bitbucket-pipelines.yml,如下所示,但在构建运行后出现错误-

MSBUILD:错误MSB1003:指定项目或解决方案文件。当前工作目录不包含项目或解决方案文件

文件代码-

image: microsoft/dotnet:sdk

pipelines:
  default:
    - step:
        caches:
          - dotnetcore
        script: # Modify the commands below to build your repository.
          - export PROJECT_NAME=TestAWS/AWSLambda1/AWSLambda1.sln
          - dotnet restore
          - dotnet build $PROJECT_NAME
          - pipe: atlassian/aws-lambda-deploy:0.2.1
            variables:
              AWS_ACCESS_KEY_ID: ${AWS_ACCESS_KEY_ID}
              AWS_SECRET_ACCESS_KEY: ${AWS_SECRET_ACCESS_KEY}
              AWS_DEFAULT_REGION: 'us-east-1'
              FUNCTION_NAME: 'my-lambda-function'
              COMMAND: 'update'
              ZIP_FILE: 'code.zip'
项目结构是这样的-

问题在于:

项目名称=TestAWS/AWSLambda1/AWSLambda1.sln

这是错误的路径。Bitbucket管道将使用Docker映像中的一个特殊路径,如/opt/atlassian/Pipelines/agent/build/YOUR_PROJECT,对项目进行Git克隆

单击Pipelines web控制台中的Build Setup(生成设置)步骤时,您可以看到:

Cloning into '/opt/atlassian/pipelines/agent/build'...
您可以使用预定义的环境变量检索此路径:$BITBUCKET\u CLONE\u DIR,如下所述:

在您的yml构建脚本中考虑如下内容:

脚本: -echo$BITBUCKET\u CLONE\u DIR调试:打印$BITBUCKET\u CLONE\u DIR -pwd调试:打印当前工作目录 -find$pwd-P-name AWSLambda1.sln调试:显示AWSLambda1.sln的完整文件路径 -导出项目名称=$BITBUCKET\u克隆\u目录/AWSLambda1.sln -echo$PROJECT\u名称 -如果[-f$项目名称];然后回波文件存在;fi 如果文件路径不符合预期,请尝试此操作 -导出项目名称=$BITBUCKET\u克隆\u目录/AWSLambda1/AWSLambda1.sln -echo$PROJECT\u名称 -如果[-f$项目名称];然后回波文件存在;fi 问题在于:

项目名称=TestAWS/AWSLambda1/AWSLambda1.sln

这是错误的路径。Bitbucket管道将使用Docker映像中的一个特殊路径,如/opt/atlassian/Pipelines/agent/build/YOUR_PROJECT,对项目进行Git克隆

单击Pipelines web控制台中的Build Setup(生成设置)步骤时,您可以看到:

Cloning into '/opt/atlassian/pipelines/agent/build'...
您可以使用预定义的环境变量检索此路径:$BITBUCKET\u CLONE\u DIR,如下所述:

在您的yml构建脚本中考虑如下内容:

脚本: -echo$BITBUCKET\u CLONE\u DIR调试:打印$BITBUCKET\u CLONE\u DIR -pwd调试:打印当前工作目录 -find$pwd-P-name AWSLambda1.sln调试:显示AWSLambda1.sln的完整文件路径 -导出项目名称=$BITBUCKET\u克隆\u目录/AWSLambda1.sln -echo$PROJECT\u名称 -如果[-f$项目名称];然后回波文件存在;fi 如果文件路径不符合预期,请尝试此操作 -导出项目名称=$BITBUCKET\u克隆\u目录/AWSLambda1/AWSLambda1.sln -echo$PROJECT\u名称 -如果[-f$项目名称];然后回波文件存在;fi