• 架构
  • 功能

关于悟空

为了满足日益增长的信创化需求,以及对不同系统不同架构应用的友好支持,北京腾达泰源科技有限公司推出了面向开发者的一站式云端编译构建平台——悟空应用信创化迁移平台,以下简称平台,致力于为用户提供简单、快速、高效的应用迁移部署测试交付等服务.

悟空应用信创化迁移平台的功能架构包括持续集成、持续交付和持续部署等,平台采用最新的技术,通过可控可靠的方式将信创化应用快速自动化编译部署到信创硬件平台,并管理信创化应用程序,减少人为错误的风险,提高代码的质量,大大提高了开发编译效率和部署速度.此外,悟空平台还提供了完善的安全机制,可以保护用户的数据和隐私. 除了软件开发过程部署中的自动化,悟空软件信创平台还可以用于软件交付后的管理.例如,在软件发布后,仍需要对其进行维护和更新,以保证其功能的持续性和稳定性.使用悟空软件信创平台管理,可以将软件交付后的维护和更新自动化,实现软件的信创平台应用的持续交付.

在实际应用中,该平台可以帮助开发者快速实现信创化应用的开发、测试和部署,大大提高开发效率和应用交付速度.此外,该平台还可以用于软件交付后的管理,提高软件的可维护性和可靠性.

架构

悟空应用信创化平台包括两大模块,分别为悟空管理模块与悟空构建模块.

  • 悟空管理模块:负责用户的代码与软件或镜像的管理,如对代码状态的监控,代码有变化,则自动触发悟空自动化构建部署测试模块,并对悟空构建后的软件或者镜像进行管理.
  • 悟空构建模块:构建模块负责将代码进行构建,如对源码编译、部署、测试等.当平台接收到管理模块代码变化信息,可自动触发构建流程,从而完成代码的自动构建并自动部署 至Arm64、Amd64平台,并将编译后的镜像自动推送至悟空管理模块进行管理.

功能

一站式管理

平台提供了完整的项目管理与代码托管功能.

  • 项目管理:平台提供了完整的项目管理功能,能够帮助开发者对项目进行全局把控,提高协作效率,实时跟踪项目进度,并在线协作编辑、版本控制等.
  • 代码托管:平台为开发者提供了代码托管服务,能够帮助开发者实现代码托管、协作开发等功能,用户可以对任何源码进行任意编译,打造自己的信息化平台.
  • 代码在线查看和编辑:平台提供了直观的界面,让用户可以方便地查看和编辑代码.
  • 历史版本管理:平台可以保存项目的历史版本,允许用户查看和恢复旧版本的文件和代码.
  • Fork和Pull Request:平台支持用户Fork项目,从而可以轻松地创建和维护自己的项目分支,并且可以方便地向原始项目提交Pull Request.
  • 打包下载任意版本:平台允许用户打包下载项目的任意版本,方便在不同的开发环境中使用.
  • issue和Wiki:平台提供了issue和Wiki模块,允许用户跟踪问题、创建知识库,从而方便地管理项目和协作开发.
  • 分支保护:平台允许用户设置保护分支,只有经过批准的用户才能修改和提交保护分支的代码.
  • 代码质量检测:平台提供了代码质量检测功能,可以帮助用户发现和解决潜在的问题.
  • PaaS项目演示:平台支持将项目设置为PaaS演示模式,方便用户快速搭建和演示Web应用程序.

软件包管理

  • 镜像管理:包含应用镜像的构建、推送和拉取,用于构建、测试和部署应用程序.镜像管理通常涉及使用容器化平台来存储和分发镜像,以及使用自动化工具来触发构建和部署.
  • 自动化部署:通过平台,用户可以将代码打包成可执行软件或镜像,并快速地进行部署,从而简化了开发人员的操作流程.
  • 版本控制:平台可以为每个版本软件/镜像打上标签,方便用户对代码的版本进行管理和回溯.
  • 安全性:平台会对代码进行检测,避免安全漏洞的出现,保障代码的安全性

跨平台自动化编译

平台自动化编译系统可以自动执行代码的编译、测试、打包等任务,节省开发人员的时间和精力. 平台自动化编译系统可以监控代码仓库的变更,及时触发构建流程,包括编译、测试、部署等任务,保证软件的持续交付质量. 平台自动化编译系统可以集成多种开发工具,如Eclipse、IntelliJ IDEA等,也可以集成第三方服务,如云存储、消息队列等,使开发过程更加高效. 平台集成了 Git版本控制系统,能够方便地与代码仓库进行交互,支持 WebHook、Git Hook 等方式触发 CI/CD 任务. 平台提供分布式编译技术,突破单台机器的性能瓶颈,通过云的大规模弹性资源实现多语言的编译加速.同时通过共享的分布式缓存和精准的依赖识别,实现编译命令的按需分发,在节约成本的基础上成倍提升构建效率.

自动化部署

平台自动化构建系统可以将编译好的代码自动部署到服务器上,减少部署的错误和人力成本. 平台支持云端部署,可以将应用程序部署到云环境中.用户可以在平台上选择不同的云服务商和服务器类型,方便地进行应用程序的部署和管理.

自动化测试

平台支持集成测试,可以将测试用例集成到平台上进行自动化测试.用户可以在平台上编写和运行测试用例,方便地进行应用程序的测试和调试. 平台自动化构建系统支持多种测试框架,如JUnit、TestNG等,可以自动运行测试用例,生成测试报告,帮助开发人员及时发现和解决问题. 平台能够分析代码质量,提供代码规范检查、重复代码检查、安全漏洞检查等功能,帮助开发人员提高代码质量.

GitOps

GitOps通过集中式管理和监控,实现更好的应用程序部署一致性和可追溯性,以及更简单的部署流程.

GitOps是一种基于Git的自动化发布流程管理解决方案,通过将配置信息保存在Git仓库中,实现版本控制、自动化发布、集中式管理、可视化监控和安全保障等功能,从而提高团队协作和可靠性,降低时间和误差成本.

  • 版本控制:GitOps通过将应用程序的配置信息保存在Git仓库中,实现了配置信息的版本控制和历史记录管理,可以方便地回滚和查看配置信息的变化历程.
  • 自动化发布:GitOps使用Git的钩子机制来实现自动化发布流程,可以自动触发发布流程并执行相应的操作,减少了手动操作的误差和时间成本.
  • 集中式管理:GitOps可以将所有应用程序的配置信息保存在同一个Git仓库中,实现了集中式的管理,方便团队成员之间的协作和维护.
  • 可视化监控:GitOps可以集成监控工具,实现对应用程序的实时监控和告警,并且可以将监控数据保存在Git仓库中,方便查看和排查问题.
  • 安全性:GitOps可以通过签署commits等方式来保证配置信息的安全性和来源可靠性,同时还可以使用SSH密钥等安全机制来确保操作的安全性.
  • 审核机制:GitOps的审核机制可以帮助团队提高生产力、安全性和合规性,因为它能够自动执行测试、阻止未经批准的变更并保留所有变更的历史记录.

信创构建

平台集成信创工具,可满足对国产CPU架构如ARM64、ADM64、loongarch64等架构应用的构建,平台支持多种主流构建语言和构建标准,可与第三方工具集成,实现更加丰富的功能和应用场景.构建后的软件默认以容器方式运行,包括桌面应用且同时支持amd64、arm64、loongarch等多架构平台使用.注:基于Windows类软件若有特殊依赖不可直接构建.