如何在华为云软件开发云上运行Python
一. 华为云软件开发云与Python
1. [华为云](https://l.gushuji.site/huawei)软件开发云简介
华为云软件开发云(DevCloud)是集华为近30年研发实践,前沿研发理念,先进研发工具为一体的一站式云端DevOps平台,面向开发者提供包括项目管理,代码托管,流水线,代码检查,编译构建,测试管理,移动应用测试,部署,发布,CloudIDE,研发协同等基础功能的研发工具服务。覆盖软件开发全生命周期,支持多种主流研发场景,让软件开发更高效。
官网入口:https://www.huaweicloud.com/devcloud/
2.Python特点
Python 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。Python 的设计具有很强的可读性,相比其他语言经常使用英文关键字,其他语言的一些标点符号,它具有比其他语言更有特色语法结构。
·Python 是一种解释型语言:这意味着开发过程中没有了编译这个环节。类似于PHP和Perl语言。
·Python 是交互式语言:这意味着,您可以在一个Python提示符,直接互动执行写你的程序。
·Python 是面向对象语言:这意味着Python支持面向对象的风格或代码封装在对象的编程技术。
·Python 是初学者的语言:Python 对初级程序员而言,是一种伟大的语言,它支持广泛的应用程序开发,从简单的文字处理到 WWW 浏览器再到游戏。
3.Python在软件开发云的应用
应用华为云软件开发云的流水线功能可以帮助Python开发者实现一键自动化开发部署,其中需要应用到代码仓库,编译构建,发布,部署等功能。
因为Python没有编译构建的过程,所以在实际开发过程中他是可以不用编译直接发布的,但是在华为云软件开发云中云端部署需要可识别的软件包,所以在华为云软件开发云中需要对Python的程序进行打包。打包的好处是不仅可以打通编译到部署的自动化流程,避免二次手动传包影响开发效率,还可以在编译构建后自动归档到发布仓库中,对软件包进行归档管理,帮助企业完善产品构建的发布管理。下面,就让我们看看如何在华为云软件开发云中跑通一个Python项目。
二.Python流程搭建示例
1.代码仓库
华为云软件开发云提供基于Git的代码托管仓库,仓库提供可视化的管理界面,支持文件在线编辑,仓库提交记录,代码贡献度统计等多种功能,满足各类开发者的需求。Python开发者可将自己的Python代码上传到此仓库中进行代码托管。
本demo中采用华为云软件开发云的代码仓库,建立空仓后,通过Git命令,与本地仓库进行关联,完成代码同步
2.编译构建
因为Python没有编译构建的过程,所以在实际开发过程中Python工程是可以不用编译直接发布的,但是在软开云中云端部署需要可识别的软件包,所以在软开云中需要对Python的程序进行打包。
华为云软件开发云编译构建服务支持多种开发环境的构建,也支持Python类型构建egg格式软件包,本demo中为了打通部署,形成自动化研发流程,采用Other构建类型,通过shell脚本将demo程序打成.tar格式的软件包。并在打包后自动上传到发布仓库进行版本归档管理。
在构建类型中输入要执行的shell脚本命令。本样例中执行命令为将demo输出为.tar格式的软件包。
在构建执行配置中设置构建成功后将软件包上传归档到发布仓库的具体信息。
3.发布
华为云软件开发云提供4中类型的发布仓库,前两种是远程Maven私仓,用于Maven类型构建过程中第三方依赖包的的管理。第三个仓库是mirror镜像仓,镜像了一些构建过程中经常以来的中央仓到后台,提升构建速度,体现云端构建的优势。我们本次demo中应用最后一个编译构建仓库,作为生成的软件包的版本归档管理仓库。
4.部署
当代码构建打包成功并归档到发布仓库后,可以进行部署工作。部署任务一共氛围四部分,分别是主机授权,编辑模版,编写脚本和执行部署。
先将主机添加到授信机器列表中。
因为python程序在发布的时候需要执行setup.py文件,不同工程有其特殊性,故通过自定义模版和执行shell脚本两种方法相结合的方式完成自动化部署。
本demo中部署模版和shell脚本任务分配样例:
部署模版:执行目录创建,软件包拷贝,解压
Shell脚本:提取占用端口进程号,解除端口占用,定位目标文件夹,执行setup.py,运行程序文件
完成任务后执行部署任务即可。
5.流水线
当所有流程打通之后,设置对应的流水线,将所有流程添加进去,实现自动化的构建发布部署一键执行。
将需要的任务添加进流水线中,并运行流水线。
转载于:https://my.oschina.net/u/3434281/blog/1594414
如何在华为云软件开发云上运行Python相关推荐
- 华为云设计语言_让开发者相见恨晚?!华为云软件开发云实现云上敏捷开发
[51CTO.com原创稿件]弗吉尼亚鹿是现存最古老的一种鹿.这并不是偶然的,而是因为350万年来,这门优雅的物种延续了一种有效的生存办法--它们保存了灵活的本性和迅速适应环境的能力.这恰恰佐证了达尔 ...
- 如何在华为云软件开发云上搭建JavaWeb,Maven项目
本文将使用华为云软件开发云向大家演示如何搭建JavaWeb,Maven项目. 一.相关信息 1.华为云软件开发云简介 华为云软件开发云(DevCloud)是集华为近30年研发实践,前沿研发理念,先进研 ...
- 华为上线软件开发云,一站式云端 DevOps 平台
在12月22日举办的"2016华为大连软件开发云上线大会"上,华为正式上线发布了集其自身研发实践.前沿研发理念.先进研发工具为一体的软件开发云平台,面向软件企业.高校和开发者提供云 ...
- 上线一周年 华为云软件开发云为何如此受欢迎?
软件开发云之于软件工程,就如同机床之于制造业.华为云软件开发云正在努力成为软件业的"工作母机". 去年12月,华为云在大连正式上线发布了软件开发云平台(DevCloud),平台刚一 ...
- 重塑软件产业,华为云软件开发云能做些什么?
每隔几年,变革这个词就会被推至每个人.每个企业.每个行业.每个领域的面前,而保持基业常青只有一个办法,那就是积极响应变化. 眼下就是一个正在经历巨变的时期,然而就像移动互联网时代到来之前,没人会想到微 ...
- 华为云软件开发云VS开发痛点=?
在软件开发的过程中,是不是总会遇到这些问题: 搭建一个开发环境,用了九牛二虎之力,悲催的是竟然用不了-- 团队同事突然出差,他写的代码出现问题,我却不会改-- 提升软件件质量靠代码,交叉看.找大拿,简 ...
- 华为大连软件开发云上线,打造软件云生态,加速软件产业升级
2016年12月22日,2016华为大连软件开发云上线大会在大连市成功举办,吸引了近千余名政府和软件企业高层.教育行业精英.开发人员.媒体.意见领袖等出席.在本次大会上,华为发布了集华为研发实践.前沿 ...
- 华为软件开发云如何为数字经济时代赋能?
在很多人的潜意识里,华为是一家以网络.服务器等硬件为主的世界顶尖级基础设施服务提供商.但是,华为软件开发云在昆明的成功落地,让我们看到华为在软件领域也大放异彩. 在2018云南-华为软件产业峰会上,华 ...
- 华为软件开发云(DevCloud):免费可商用的项目管理工具
在软件开发技术和理念层出不穷的今天,如何更快的适应变化的环境,更好的满足客户的需求,已经成为决定从小到大各种规模企业能否活下去的关键. 天下武功唯快不破,在当今大环境中更是如此,微服务,敏捷开发,新的 ...
最新文章
- oracle valueerror,Oracle VALUE_ERROR异常(挑战题编号000005)
- 数学知识--Levenberg-Marquardt算法浅谈
- Jmeter + Grafana + InfluxDB 性能测试监控
- Oracle数据库管理系统:大数据的备份
- 语音跟踪:信号分解、锁相、鸡尾酒会效应、基于PR的信号分离
- #3771. Triple 生成函数 + FFT + 容斥
- java bytebuffer 大小_java – 为什么DirectByteBuffer.array()有额外的大小?
- 能力清单:2020年SAAS的思考框架
- 使用 vscode将本地项目上传到github、从github克隆项目以及删除github上的某个文件夹...
- linux解压覆盖命令
- linux目录跳转快捷方式——z武器
- Linux SSHD服务安装与维护详解(一)——SSHD安装、启动与密钥认证实现
- Vue 项目优化,持续更新...
- Python全局解释锁
- 智慧产业园区综合解决方案
- LabWindows/CVI与Matlab混合编程的一种实现方法
- RISC-V嵌入式开发入门篇2:RISC-V汇编语言程序设计(上)
- 一个草根前端人的焦虑
- 【反思】写在腾讯电话面试之后
- ApacheCN 编程/大数据/数据科学/人工智能学习资源 2019.11
热门文章
- keil的sct文件_keil .sct分散加载文件及其应用(重点必看)
- 人才招聘微信小程序开发制作功能介绍
- 南京邮电大学计算机专业录取分数线2019,南京邮电大学录取分数线
- android自学视频!2021年Android进阶者的新篇章,附面试题答案
- 乐嘉版 人物性格,红黄蓝绿
- 计算机二级(c语言)重难点归纳--公共基础部分--计算机系统
- 一节计算机课作文500,难忘的一堂课作文500字5篇
- NYOJ-弟弟的作业
- 走进掌榕:正和岛青年徽商正和塾小组2021年首聚
- item_get_app - 根据ID取商品详情原数据