我目前正在 Azure Devops 中设置 CI/CD 管道,以在 Linux 托管应用程序服务(而不是 VM)上部署 NodeJS 应用程序。
我的构建和部署都很顺利,但我需要确保在部署应用程序后在环境中安装一些软件包。
问题是:无论如何apt-get
我在部署后创建的脚本,我必须手动运行它们才能真正生效。不过,在管道日志中,它们似乎已被执行。
这是我的 yaml 代码中负责部署的部分,我错过了什么吗?
- stage: Deploy
displayName: Deploy stage
dependsOn: Build
condition: succeeded()
jobs:
- deployment: Deploy
displayName: Deploy
environment: $(environmentName)
pool:
vmImage: $(vmImageName)
workspace:
clean: all
strategy:
runOnce:
deploy:
steps:
- task: AzureWebApp@1
displayName: 'Azure Web App Deploy:'
inputs:
azureSubscription: $(azureSubscription)
appType: webAppLinux
appName: $(webAppName)
runtimeStack: 'NODE|16-lts'
package: $(Pipeline.Workspace)/drop/drop$(Build.BuildNumber).zip
startUpCommand: 'pm2 start index.js --no-daemon'
on:
success:
steps:
- script: sudo apt-get update
displayName: apt update
- script: sudo apt-get -y [SOME LIBS]
displayName: try install dependencies
Thanks !
目前,使用“startup.sh”文件,我在每次部署后手动运行该文件。不过稍后会通过docker
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)