借力华为云CodeArts,使用软件开发生产线快速搭建项目

前言

项目的实际开发,研发接到需求并不是立马进入开发的,实际的开发生成流程是一个完整的迭代流程。

流程的节点和每个节点的内容如下:

开发生产的流程很标准很规范,看似研发只需要按照流程执行每一步的操作即可。但实际开发中,不同阶段,都会有各式各样问题,困扰研发,直接或间接的导致效率迟缓:

  • 每次有新项目,都要走一遍配置流程;
  • 为了区分不同环境,构建时,要反复修改配置项;
  • 构建失败,问题排查起来比较麻烦,不好定位问题;
  • 高频率的需求开发,交付频率高,流程长,导致的效率问题。

......

如果有一站式的开发工具,想自动流水线一样,实现流程的自动流程,减少人工维护。岂不是能省略很多繁琐的重复的步骤。开箱即用,高质又高效。

于是,我找到了华为云CodeArts,一个梦寐以求的一站式软件开发生产线平台。

三分钟了解华为云CodeArts

什么是CodeArts?

它说,

CodeArts,即软件开发生产线,是面向开发者提供的一站式云端DevSecOps平台,即开即用,随时随地在云端交付软件全生命周期,覆盖需求下发、代码提交、代码检查、代码编译、验证、部署、发布,打通软件交付的完整路径,提供软件研发流程的端到端支持。

操作是可视化的吗?

它说,

全流程规范可视。一键式部署服务,支持并行部署和流水线无缝集成。可视化、可编排的CI/CD持续交付软件生产线,支持代码提交自动触发流水线执行。

提供代码检查服务吗?

它说,

提供可协作的一站式代码检查服务。不但覆盖主流编程语言、主流编码标准、SDLC集成等。且支持定时执行检查和支持多分支检查,还提供问题责任人自动归属、提供问题修改建议、可聚焦处理新问题等功能支持。

传统企业改造成本高吗?

它说,

传统企业改造成本不高,且CodeArts可以为传统企业进行互联网+转型提供助力,解决核心竞争产品研发效率低下的问题,实现项目管理可视化,软件开发过程准确度量,上下游合作伙伴能够高效协作。

使用软件开发生产线快速搭建项目

华为云CodeArts提供了快速入门的搭建流程,因为我的开发需要是搭建一个开发生产线,所以我体验了

使用软件开发生产线快速搭建项目(ECS篇)的实验。

前置工作

  • 首先确保已经完成了华为云账号的开通与认证。
  • 已购买软件开发生产线。
  • 已购买弹性云服务器

进入实验

步骤1:新建项目

1、登录CodeArts控制台,在右侧的项目模板列表中选择“Scrum”,单击“选用”。进入项目创建页面。

2、在项目创建页面配置项目信息:

  • “项目名称”:本实验名称为“ScrumNew”。

其他选择默认值即可,确认无误后单击下方的“确定”。

项目创建成功之后,自动进入项目的工作台。

步骤2:新建代码仓库

1、单击导航栏“代码 > 代码托管”,进入代码托管服务。

2、单击页面“普通新建”旁边的下拉按钮,选择“按模板新建”。

3、选择模板“Java Web Demo”,单击“下一步”。

4、配置模板信息

  • “代码仓库名称”:本实验名称为“Web-Demo”。

其他选择默认值即可,确认无误后单击下方的“确定”。

步骤3:代码检查

1、单击导航栏“代码 > 代码检查”,进入代码检查服务。页面中显示自动创建的任务“Web-Demo-codecheck”。

注:如果任务存在问题,先解决问题再进行下一步。

2、单击任务所在行的“立即执行”启动任务。

3、当页面中显示绿色的对号时,表示任务执行成功。单击任务名称,进入任务的“概览”页面查看检查结果。

步骤4:构建并归档软件包

1、单击导航栏“持续交付 > 编译构建”,进入编译构建服务。页面中显示自动创建的任务“Web-Demo-cloudbuild”。

2、单击任务所在行的运行按钮启动任务。若出现弹窗,请确认参数设置准确后,单击“确定”。

3、当页面中显示绿色的对号时,表示任务执行成功。

4、单击导航栏“制品仓库 > 软件发布库”,进入软件发布库。在与项目名称同名的仓库中,依次进入与构建任务同名的文件夹、与构建编号同名的文件夹,即可找到生成的软件包“demoapp.jar”。

步骤5:部署构建包

1、配置目标主机。

2、单击导航栏“持续交付 > 部署”,进入部署服务。页面中显示自动创建的应用“Web-Demo-deploy”。

3、选择“环境管理”页签,配置主机环境。

4、选择“部署步骤”页签,配置部署步骤。

5、单击“保存并部署”。若出现弹窗,请确认参数设置准确后,单击“确定”。

6、待页面显示“部署成功”,表述部署成功。

7、查看部署结果。

打开一个新的浏览器页面,输入访问地址“http://IP:8080/test”,其中“IP”为准备工作中购买的ECS的IP。

步骤6:释放资源

体验完成之后,可释放以下资源。

1、删除项目。

2、删除ECS。等录弹性云服务器控制台。在列表中找到待删除的ECS并删除。

体验及建议

首先来说体验感受,ModelArts的预测速度还是很快的,工作流的过程也很快,没有等太长时间。

发现了一些使用不便的地方:

1、控制台展示有些问题,电脑是 13.寸mac,Chrome浏览器

2、产品文档中,“新增项目”的步骤中,“配置项目”步骤中,实际选择项目步骤需要从不同模版中选择,这里的步骤描述和实际有出入,所以操作的时候有些困惑,建议按照目前实际步骤更新文档。

3、产品文档中,“配置流水线”的步骤中,选择“任务编排”的操作中,单击任务“deploy”后面没有内容。这步不知道具体操什么,建议如果有具体操作,建议补全;如果没有具体操作,建议去掉这步,避免不必要的困惑。

4、产品文档中,“配置流水线”的步骤中,编辑代码仓库文件的操作中,这里的描述和实际控制台内容不一致,控制台中编辑代码的流程是,点击代码窗口右侧的'...',在展开的列表中选择编辑,建议按照目前实际步骤更新文档。

总结

完成使用软件开发生产线快速搭建项目(ECS篇)的实验之后,对华为云CodeArts提供的一站式软件运维托管功能有了更深一些的了解。

使用华为云CodeArts搭建项目,实现软件开发生产线,流程还是相对简单易懂的。

除了研发软件开发全流程覆盖,还支持代码检查、构建、测试、部署任务自定义和全面自动化并提供可视化编排的持续交付流水线,一键应用部署,上线发布零等待。

接下来,我将借助华为云CodeArts可视化编排功能,探索如何实现构建、测试、部署的自动化。

未来,也期待与华为云CodeArts一起实现更多的可能。


作者:非职业「传道授业解惑」的开发者叶一一
简介:「趣学前端」、「CSS畅想」系列作者,华夏美食、国漫、古风重度爱好者,刑侦、无限流小说初级玩家。
如果看完文章有所收获,欢迎点赞👍 | 收藏⭐️ | 留言📝。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/364986.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

2024美赛数学建模E题思路分析 - 财产保险的可持续性

1 赛题 问题E:财产保险的可持续性 极端天气事件正成为财产所有者和保险公司面临的危机。“近年来,世界已经遭受了1000多起极端天气事件造成的超过1万亿美元的损失”。[1]2022年,保险业的自然灾害索赔人数“比30年的平均水平增加了115%”。[…

react 之 UseReducer

UseReducer作用: 让 React 管理多个相对关联的状态数据 import { useReducer } from react// 1. 定义reducer函数,根据不同的action返回不同的新状态 function reducer(state, action) {switch (action.type) {case INC:return state 1case DEC:return state - 1de…

实验二 DES密码算法的设计与实现

✅作者简介:CSDN内容合伙人、信息安全专业在校大学生🏆 🔥系列专栏 :简单外包单 📃新人博主 :欢迎点赞收藏关注,会回访! 💬舞台再大,你不上台,永远…

Git版本管理工具(实战进阶):零基础到起飞实战项目完整篇 →Git学习一篇就够 从基本指令、到本地仓库、远程仓库、实战项目开发演练介绍超详细!

heima 李师傅最新版 Git的讲解 文章目录 Git在实战项目开发使用功能学习01.Git 初识02.Git 仓库03.Git 的三个区域04.Git 文件状态05.Git 暂存区作用06.练习-登录页面07.Git-切换版本08.删除文件09.忽略文件10.分支的概念11.练习-登录 bug 修复12.分支-合并与删除13.分支-合并与…

LeetCode--189

189. 轮转数组 提示 给定一个整数数组 nums,将数组中的元素向右轮转 k 个位置,其中 k 是非负数。 示例 1: 输入: nums [1,2,3,4,5,6,7], k 3 输出: [5,6,7,1,2,3,4] 解释: 向右轮转 1 步: [7,1,2,3,4,5,6] 向右轮转 2 步: [6,7,1,2,3,4,5] 向右轮转…

Leetcode 热门百题斩(第一天)

介绍 针对leetcode的热门一百题,解决大多数实习生面试的基本算法题。通过我自己的思路和多种方法,供大家参考。 1.两数之和(题号:1) 方法一 最先想到的就是两个for去遍历匹配。 class Solution {public int[] twoSum(int[]…

C++模板:非类型模板参数、特化以及分离编译

一、非类型模板参数 模板参数分类类型形参与非类型形参。 类型形参即:出现在模板参数列表中,跟在class或者typename之类的参数类型名称。 非类型形参,就是用一个常量作为类(函数)模板的一个参数,在类(函数)模板中可将该参数当成…

案例精选 | 聚铭网络助力河北省故城县医院日志审计合规建设

河北省故城县医院位于河北省东南部京杭大运河西畔故城县郑口镇,是一所集医疗、急救、预防、康复、教学、科研于一体,科室齐全的综合性医院,曾先后荣获“全国百佳医院”、“全国百姓放心示范医院”、“中国医联体探路先锋”、“河北省文明单位…

一键部署FC超级马里奥web游戏

效果展示 安装 拉取镜像 #拉取镜像 docker pull stayhungrystayfoolish666/mario #创建并启动容器 docker run -d -p 10034:8080 --name maliao --restartalways stayhungrystayfoolish666/mario:latest 使用 浏览器打开 http://你的ip:10034/

【使用opencv、python、dlib实现人脸关键点检测、眨眼检测和嘴巴开闭检测,可简单用于疲劳检测】

使用opencv、python、dlib实现人脸关键点检测、眨眼检测和嘴巴开闭检测,可简单用于疲劳检测 环境准备opencvdlib 原理眨眼检测张嘴检测原理 代码示例人脸关键点检测眨眼检测张嘴检测 写在最后 环境准备 opencv 一、简单介绍 OpenCV (Open Source Computer Vision…

WordPress SMTP发信避坑指南

前言 Clip_2024-01-31_19-46-18803285 10.5 KB 目前不少主题已经内置了SMTP发信功能,这是因为WordPress自带的mail()函数发信时基本无法发送。 但是在之前(约2021年末)貌似可以通过WordPress自带的函数发信,并且收信方提示由xxx代…

同城上门预约软件开发:改变生活服务模式

随着互联网技术的飞速发展,人们的生活方式也在发生着深刻的变化。特别是在生活服务领域,新的需求和模式不断涌现。其中,同城上门预约服务正逐渐成为一种新的趋势。本文将探讨开发同城上门预约软件的意义、市场需求、功能设计以及面临的挑战。…

Linux网络编程 基础

OSI七层模型 物理层:主要定义物理设备标准,如网线的接口类型、光纤的接口类型、各种传输介质的传输速率等。它的主要作用是传输比特流(就是由1、0转化为电流强弱来进行传输,到达目的地后再转化为1、0,也就是我们常说的…

Iceberg从入门到精通系列之二十一:Spark集成Iceberg

Iceberg从入门到精通系列之二十一:Spark集成Iceberg 一、在 Spark 3 中使用 Iceberg二、添加目录三、创建表四、写五、读六、Catalogs七、目录配置八、使用目录九、替换会话目录十、使用目录特定的 Hadoop 配置值十一、加载自定义目录十二、SQL 扩展十三、运行时配置…

MySQL原理(一)架构组成之逻辑模块(2)缓存机制

前面提到了mysql的逻辑模块中包含Query Cache 。 一、查询缓存 1、作用 MySQL查询缓存即缓存查询数据的SQL文本及查询结果,用Key-Value的形式保存在服务器内存中。当查询命中缓存,MySQL会立刻返回结果,跳过了解析,优化和执行阶段。 2、查询缓存的命中条件 (1&a…

linux查看mysql状态重启

1.linux怎么看mysql数据库是不是宕机了? MySQL/MariaDB数据库的状态:使用systemctl status mysql或者service mysqld status命令。如果显示"active (running)"表示MySQL正常运行;如果显示"inactive (dead)"则表示MySQL已…

2024年电子数据取证“獬豸杯”比赛解析WP

2024年电子数据取证“獬豸杯”比赛解析WP 项目介绍:参赛对象:任务目标:第一部分:手机取证第二部分:计算机取证第二部分:APK分析 项目介绍: 简介: 竞赛为个人赛,工具自备&#xff0c…

Mysql篇----第一篇

系列文章目录 文章目录 系列文章目录前言一、数据库存储引擎二、InnoDB(B+树)三、TokuDB( Fractal Tree-节点带数据)前言 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到网站,这篇文章男女通用,看懂了就去分享给你的码…

云上自动部署丨使用 Terraform 在 AWS 上搭建 DolphinDB

HashiCorp Terraform 是一款基础架构即代码工具,旨在实现 "Write, Plan, and Create Infrastructure as Code"。它通过配置文件来描述云资源的拓扑结构,包括虚拟机、存储账户和网络接口。Terraform 几乎支持市面上所有的云服务,能够…

Sharding-JDBC之ComplexKeysShardingAlgorithm(复合分片算法)

目录 一、简介二、maven依赖三、数据库3.1、创建数据库3.2、创建表 四、配置(二选一)4.1、properties配置4.2、yml配置 五、复合分片算法六、实现6.1、实体层6.2、持久层6.3、服务层6.4、测试类6.4.2、根据时间范围查询订单 一、简介 实际工作中&#xf…