试了一下azure DevOps, 这里把步骤记录一下
这种方式创建的managed source code, CI/CD default 都是自动执行。
直接创建web app (default)
All resource -> add new -> DevOps Starter-> Create-> 选择 php
这里的语言选择意味着你创建managed web app
如果选择自己的source code, 选择最下面的 bring your own code
->simple PHP->Linux Web App->
这里的org name 使用你的hotmail account
这里的org name 使用你的hotmail account,如果你的account name中有下划线等可以省略,系统可以识别。
以上创建之后DevOps Project 被创建出来,见下图
DevOps Proj 界面
这里包含了所有的项目信息
同时如果到all resources 可以找到已被创建的web app,打开后可以查看到第一次build, release, deployment 已经完成,右上角的URL边上"browser”可以确认网页。
这个是一个app的框架,可以下载加入自己的代码再上传,Azure会自动完成CI/CD
在项目界面,Repos->Files->Clone, copy https clone addr.
"Generate Git Credentials" 用以创建clone 时候需要的passwd
clone 界面
local环境下:
clone source code
clone之后在本地的VSC打开
做一些编辑
此处简单改了一下index.php 里面的word以及readme,然后push 回去
push
自动build 和 release,然后手动deploy deploy 完毕的界面如下
deployment结束
这个过程需要大概两三分钟
然后browser 确认一下index.php的修改信息。
整个过程非常流畅简单。
下图是default web app的界面,红框是修改加入信息:
スクリーンショット 2021-01-03 19.27.32.png
如何把既有的项目push到azure 上并自己配置CI/CD
local 创建项目准备好,git init, git add, git commit 完毕后等待
在DevOps创建项目, Repos->Files-> or push existing project ...
copy cmd, push项目到azure 上
スクリーンショット 2021-01-03 22.34.12.png
Pipelines->Create new pipeline, 选择azure repos git->选择repo 名
显示 pipeline yaml
打开vsc, 此时VSC编译器和azure的Repo自动连接,通过commit, push 可以直接push code
build -> pipeline
az cli 上Create 三个东西:
resource group,asp 和webapp
# Create a resource group
az group create --location westus --name myapp-rg
# Create an app service plan of type Linux
az appservice plan create -g myapp-rg -n myapp-service-plan --is-linux
# Create an App Service from the plan with PHP as the runtime
az webapp create -g myapp-rg -p myapp-service-plan -n myphpapp --runtime "PHP|7.2"
如果出现error以下:
Linux Runtime 'PHP|7.0' is not supported. Please invoke 'az webapp list-runtimes --linux' to cross check
run 'az webapp list-runtimes --linux' , 并找到合适的runtime
注意以上指定linux 以及PHP的环境很重要,如果没有指定,在deploy 设定的task 中则找不到对应web app name
确认build 的release是否成功,如果不成功要debug 一下
然后在pipeline->release->build new pipeline,相应设定完成后,保存,create release -> deploy, 等deploy 成功后
到刚才创建的web app overview下面找到URL确认一下deploy 结果即可。
注意,如果deploy显示成功了,但access 的时候说没有权限,可能是App本身有错。
参考:
https://www.youtube.com/watch?v=jRgLSMlp28U
https://docs.microsoft.com/en-us/azure/devops/pipelines/ecosystems/php-webapp?view=azure-devops
https://stackoverflow.com/questions/48853599/azure-website-message-you-do-not-have-permission-to-view-this-directory-or-page
最后,关于如何CICD with gitlab ,refer:
https://about.gitlab.com/blog/2020/07/09/integrating-azure-devops-scm-and-gitlab/












网友评论