如今有了越来越多的持续集成工具,给的个人开发者的福利也是很足了,如无必要,自建工具有时只是作为练手了。

众多持续集成工具

现在可用的持续集成工具繁多,各大云服务商都推出了持续集成,甚至是一定条件内都是免费使用。

  • Azure DevOps 提供每个月1800 分钟的免费时长,支持单项目并行构建,5人以下。
  • GitHub推出的GitHub Action 每月2000分钟的构建时长。
  • 华为云的 DevCloud 提供的编译构建5并发,每月600分钟,5人以下。
  • Gitee 推出了Gitee Go 单个代码仓库均可直接获得200分钟免费构建时长,永久有效! 企业/组织/个人每月1000分钟免费构建时长自动到账。
  • 腾讯云与 Coding 合作的Coding DevOps,初期Coding提供5人以下免费,每周200次持续集成次数,每次限时30分钟,并行任务数1个,中间变更到每月1000分钟持续集成时长,再如今七月份后变更到每月300分钟
  • 阿里云的云效DevOps 最大并发任务数 6,运行时长 5400 分钟/月。人数不限!

云效的功能

云效DevOps中提供了如下功能可以使用,其中可根据实际开发中所用到的工具去比对选择。

此处,我只想白嫖流水线用于持续集成构建Docker镜像。对于Docker镜像的存储,阿里云提供了容器镜像服务(其本身也具备镜像构建功能,但受限)。对于个人开发者练手或是小微企业存储镜像应该算满足了。

对于代码的存储,可以选择云效 DevOps的代码管理(CodeUp)或是其他平台,这不影响流水线功能。

如此,简单的持续集成流程需要的功能算是齐全了。

项目设置

账号注册、申请这类就不提了,具体就是如何来快速完成一个持续集成流程的配置。

1、首先在代码仓库中新建项目,对于代码仓库的选择随意,我更倾向于使用 Gitee,当然也可直接使用云效提供的代码仓库。此处新建了一个仓库方便对照: https://gitee.com/530521314/Partner.TreasureChest/tree/master/Flow.Standard

2、新建 AspNetCore WebApi项目并增加 Dockerfile、gitignore文件,整理成常用的目录形式。

容器镜像服务设置

1、创建命名空间(3个命名空间共存300个镜像仓库)

2、创建镜像仓库,选择对应的命名空间,填写仓库信息。(镜像仓库下存放具体的镜像)

3、下一步中选择本地仓库后创建即可。

4、创建完毕会引导到该仓库下,当流水线跑完后选择镜像版本查看构建完的镜像。

云效流水线配置

开始使用流水线

新建流水线,可以按照语言类别选择,此处我使用空模板。

设置流水线源步骤

页面跳转后会提示选择代码源,此处我使用Gitee中的仓库,选择分支,添加即可。

增加镜像构建步骤

1、点击空任务更改其为镜像构建(或是其他名字)

2、添加任务步骤,此处可供选择的步骤很多,当前使用构建并推送到镜像仓库个人版

3、选择完毕会提示填写镜像仓库地址,该地址为上一步中的容器镜像服务地址,选择地域,镜像仓库。

4、配置目标镜像版本,默认是用日期作为镜像的标签。

5、设置Dockerfile所在位置,此处Dockerfile是代码仓库中存储位置,如果是纯一个项目一个仓库,那就把"Flow.Standard/"这节删掉。

6、直接保存运行即可,便会开始构建

查看构建完毕的镜像

可在容器镜像仓库中查看构建好的镜像,至于镜像的部署,则不再叙述。

不止于此

流水线的用法上很简单,还提供了很多的功能,各种通知、测试构建、直接部署等都打通了,集成度很高,很是强大。云效本身提供了很多的集成产品,我们可以使用其中几项,又可以整个基于云效去开展项目建设。对于个人开发者或是小微企业来说,感觉是相当大的福利了(当下而言)。

2022-06-25,望技术有成后能回来看见自己的脚步

AspNetCore&云效Flow持续集成的更多相关文章

  1. 如何通过云效Flow完成自动化部署—主机部署

    如何通过云效Flow完成自动化部署-主机部署,云效流水线Flow是持续交付的载体,通过构建自动化.集成自动化.验证自动化.部署自动化,完成从开发到上线过程的持续交付.通过持续向团队提供及时反馈,让交付 ...

  2. 如何使用云效Flow做质量检测,保障高质量的交付速度

    使用云效Flow做质量检测,保障高质量的交付速度,云效「Flow」 提供代码扫描. 安全扫描和各种自动化测试能力,支持人工测试卡点.自动化验证卡点等多种质量红线,确保业务质量.云效流水线 Flow 流 ...

  3. 如何通过云效Flow完成自动化构建—构建集群

    如何通过云效Flow完成自动化构建-构建集群,云效流水线Flow是持续交付的载体,通过构建自动化.集成自动化.验证自动化.部署自动化,完成从开发到上线过程的持续交付.通过持续向团队提供及时反馈,让交付 ...

  4. 视频云SDK iOS持续集成项目实践

    1. 前言 2016年, 我们维护的 iOS推流播放融合SDK KSYLive_iOS 在github上发布了40多个版本, 平均两周发布一个新版本, 经历了最初痛苦的全手动版本构建和维护, 到后来慢 ...

  5. 云效Flow如何实现阿里云ECS多环境发布

    一.背景 云效Flow基于标签功能实现阿里云ECS多环境发布,在软件开发和部署过程中,我们的软件往往需要在不同的运行环境中运行,例如:开发人员本地开发环境.测试团队的测试环境.还有类生产环境和生产环境 ...

  6. 拥抱自动化,CODING 2.0 持续集成全新上线

    在文章开始前,做一个小调查,在您的软件项目中集成一行新代码平均需要花多长时间? 15 分钟 一小时 半天 一天及以上 注意这里的集成是指将源码放在一起,并验证源码可以作为一个一致.运行可靠的软件的过程 ...

  7. 云效x钉钉:让研发工作更简单

    云效x钉钉:让研发工作更简单,奔走相告,云效&钉钉集成实现组织架构.成员同步以及消息通知啦! 我们知道云效致力于智能化.安全可追溯.高效.简单.灵活,「云效新一代企业级DevOps平台」阿里云 ...

  8. 什么是云效持续集成?如何关联Jenkins进行持续集成?

    什么是云效持续集成?如何关联Jenkins进行持续集成?云效流水线 Flow是一款企业级.自动化的研发交付流水线, 提供灵活易用的持续集成.持续验证. 持续发布功能,帮助企业高质量.高效率的交付业务. ...

  9. AspNetCore&Coding持续集成

    对于现有很多持续集成工具来讲,功能越来越高级,使用了 Coding 有大半年时间,越发觉好用,特别是没钱续费服务器时,找到了新的羊毛. 一.众多持续集成工具 现在可用的持续集成工具繁多,各大云服务商都 ...

随机推荐

  1. java实现MD5文件加密

    package me.zhengjie.modules.logdump.util; import java.io.FileInputStream; import java.io.IOException ...

  2. mount挂载命令

    了解命令mount,这是一个挂载命令,挂载的意思是指的就是将设备文件中的顶级目录连接到 Linux 根目录下的某一目录(最好是空目录),访问此目录就等同于访问设备文件.当在 Linux 系统中使用硬件 ...

  3. SpringMVC 解析(五)URI链接处理

    URI在网络请求中必不可少,Spring提供了一些工具类用于解析或者生成URL,比如根据参数生成GET的URL等.本文会对Spring MVC中的URI工具进行介绍,本文主要参考Spring官方文档. ...

  4. 从实例学习 Go 语言、"基础与进阶" 学习笔记及心得体会、Go指南

    第一轮学习 golang "基础与进阶"学习笔记,Go指南练习题目解析.使用学习资料 <Go-zh/tour tour>.记录我认为会比较容易忘记的知识点,进行补充,整 ...

  5. 论文解读(AutoSSL)《Automated Self-Supervised Learning for Graphs》

    论文信息 论文标题:Automated Self-Supervised Learning for Graphs论文作者:Wei Jin, Xiaorui Liu, Xiangyu Zhao, Yao ...

  6. 在 K8s 上运行 GraphScope

    本文将详细介绍:1) 如何基于 Kubernetes 集群部署 GraphScope ; 2) 背后的工作细节; 3) 如何在分布式环境中使用自己构建的 GraphScope 开发镜像. 上篇文章介绍 ...

  7. XCTF练习题---WEB---weak_auth

    XCTF练习题---WEB---weak_auth flag:cyberpeace{a9aa5a05f5957a19643640028dbb6946} 解题步骤: 1.观察题目,打开场景 2.观察场景 ...

  8. ASP.NET视图视图表单验证

    视图表单验证 初始化项目 新建一个ASP.NET MVC的项目 新建游戏用户类: public class StemUsers { public int id { get; set; } public ...

  9. [题解] [LOJ2743]「JOI Open 2016」摩天大楼

    题目大意 将 \(N\) 个互不相同的整数 \(A_1 , A_2 , ⋯ , A_N\) 任意排列成 \(B_1 , B_2 , ⋯ , B_N\) . 要求 \(∑^{N−1}_{i=1} |B_ ...

  10. 批量安装Windows系统

    今天我们利用Windows server 2019自带的Windows部署服务通过网络批量安装Win 10 一.Windows服务 1)WDS WDS(Windows Deployment Servi ...