[英]Bitbucket CI/CD pipeline - Deploy to AWS with Elastic Beanstalk
[英]Deploy PHP application from Azure DevOps to AWS using CI/CD pipeline
我能夠使用 CI/CD 管道 YAML 文件將 ASP.net 應用程序從 Azure DevOps 部署到 AWS 環境。 我稍微修改了 ASP.net YAML 文件並嘗試部署 PHP 應用程序。 但它沒有成功。 下面是我用來部署 PHP 應用程序的修改后的 YAML。 有人可以幫助解決這個問題嗎? 我是否缺少任何步驟/設置?
# PHP
# Test and package your PHP project.
# Add steps that run tests, save build artifacts, deploy, and more:
# https://docs.microsoft.com/azure/devops/pipelines/languages/php
trigger:
- master
pool:
vmImage: ubuntu-latest
variables:
phpVersion: 7.2
steps:
- script: |
sudo update-alternatives --set php /usr/bin/php$(phpVersion)
sudo update-alternatives --set phar /usr/bin/phar$(phpVersion)
sudo update-alternatives --set phpdbg /usr/bin/phpdbg$(phpVersion)
sudo update-alternatives --set php-cgi /usr/bin/php-cgi$(phpVersion)
sudo update-alternatives --set phar.phar /usr/bin/phar.phar$(phpVersion)
php -version
displayName: 'Use PHP version $(phpVersion)'
- script: composer install --no-interaction --prefer-dist
displayName: 'composer install'
- task: PublishBuildArtifacts@1
inputs:
PathtoPublish: '$(Build.ArtifactStagingDirectory)'
ArtifactName: 'drop'
publishLocation: 'Container'
- task: BeanstalkDeployApplication@1
inputs:
awsCredentials: 'AWS_Creds'
regionName: 'us-north-1'
applicationName: 'app_name'
environmentName: 'env_name'
description: 'New Build from Azure DevOps'
applicationType: 'version'
webDeploymentArchive: '$(build.artifactStagingDirectory)/WebApp.zip'
運行上述管道腳本時出現以下錯誤。
Starting: composer install
==============================================================================
Task : Command line
Description : Run a command line script using Bash on Linux and macOS and cmd.exe on Windows
Version : 2.182.0
Author : Microsoft Corporation
Help : https://docs.microsoft.com/azure/devops/pipelines/tasks/utility/command-line
==============================================================================
Generating script.
Script contents:
composer install --no-interaction --prefer-dist
========================== Starting Command Output ===========================
/usr/bin/bash --noprofile --norc /home/vsts/work/_temp/f5188f9d-a102-4093-ad5d-0acaaa110763.sh
Composer could not find a composer.json file in /home/vsts/work/1/s
To initialize a project, please create a composer.json file as described in the https://getcomposer.org/ "Getting Started" section
##[error]Bash exited with code '1'.
Finishing: composer install
Composer 在 /home/vsts/work/1/s 中找不到 composer.json 文件
/home/vsts/work/1/s是您的存儲庫將被檢出的工作目錄。 如果您的 composer.json 文件在存儲庫的根目錄下,即其路徑為repsotiory_name/composer.json
,則命令行任務將成功運行該命令composer install --no-interaction --prefer-dist
。
如果composer.json文件在repository的子目錄下,則需要將當前目錄切換到其文件路徑。 例如,它的路徑是repsotiory_name/subfolder/composer.json
,下面的腳本應該按預期工作。
- script: |
cd subfolder
composer install --no-interaction --prefer-dist
displayName: 'composer install'
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.