美文网首页
CI/CD with azure DevOps

CI/CD with azure DevOps

作者: 芒鞋儿 | 来源:发表于2021-01-03 18:25 被阅读0次

试了一下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/

相关文章

网友评论

      本文标题:CI/CD with azure DevOps

      本文链接:https://www.haomeiwen.com/subject/etfpoktx.html