项目构建工具Syncd、spring-boot-assembly、doit、SmartCode介绍

以下为你介绍的项目构建工具都可用在Linux系统上:Syncd(自动化部署工具)、spring-boot-assembly(Spring Boot 项目打包工具)、doit(自动化任务管理工具)、SmartCode(功能强大的代码生成器)。

1、Syncd(自动化部署工具)

项目构建工具Syncd、spring-boot-assembly、doit、SmartCode介绍

Syncd - 自动化部署工具:

Syncd是一款开源的代码部署工具,它具有简单、高效、易用等特点,可以提高团队的工作效率。

特性:

基于Go语言的Gin框架,简洁高效、可扩展性强。

Web界面基于ElementUI,交互友好。

重新设计的接口-功能权限模型,更加灵活自由。

新增一键回滚功能。

支持自定义构建脚本,动态编译功能。

构建、部署Hook支持,可无限扩展。

构建、部署日志实时显示。

完善并优化上线工作流。

审核、部署邮件通知提醒。

权限模型灵活自由。

Git仓库支持。

邮件通知机制。

环境:

提供有Linux/macOS + Bash,需要注意的是Syncd不支持Win系统。

Syncd依赖Go1.11+编译环境。

MySQL 5.6+及Git。

安装:

$ curl https://syncd.cc/install.sh | bash

$ cd ./syncd-deploy

$ mysql --default-character-set=utf8mb4 < ./resource/sql/syncd_{版本号}.sql

$ GIN_MODE=release ./bin/syncd -c ./etc/syncd.ini

下载地址:https://syncd.cc/

2、spring-boot-assembly(Spring Boot 项目打包工具)

解决Spring Boot项目打包成jar包后,不方便修改配置文件,减少默认的第三方依赖等问题。

该项目演示了使用maven-assembly-plugin等插件打包后,分离配置文件和第三方依赖jar包。

spring-boot-assembly项目打包后,就像操作tomcat一样,可使用脚本启动停止服务,在logs文件夹中会记录启动和运行日志。

spring-boot-assembly:

在spring boot项目中使用maven profiles和maven assembly插件根据不同环境打包成tar.gz或者zip。

将spring boot项目中的配置文件提取到外部config目录中。

将spring boot项目中的启动jar包移动到boot目录中。

将spring boot项目中的第三方依赖jar包移动到外部lib目录中。

bin目录中是启动,停止,重启服务命令。

打包后的目录结构类似于tomcat/maven目录结构。

主要插件:

maven-assembly-plugin

maven-jar-plugin

spring-boot-maven-plugin

maven-dependency-plugin

maven-resources-plugin

下载地址:https://gitee.com/geekidea/spring-boot-assembly

3、doit(自动化任务管理工具)

doit来自于使用构建工具的强大功能来执行任何类型的任务。

注:人们经常将doit与make、grunt、rake、scons、snakemake等工具进行比较。他们欣赏doit的强大功能、灵活性、编写简单性和易用性。

下面是一个例子:

定义返回带有任务的元数据的python dict的函数。

def task_imports():

"""find imports from a python module"""

for name, module in PKG_MODULES.by_name.items():

yield {

'name': name,

'file_dep': [module.path],

'actions': [(get_imports, (PKG_MODULES, module.path))],

}

def task_dot():

"""generate a graphviz's dot graph from module imports"""

return {

'targets': ['requests.dot'],

'actions': [module_to_dot],

'getargs': {'imports': ('imports', 'modules')},

'clean': True,

}

def task_draw():

"""generate image from a dot file"""

return {

'file_dep': ['requests.dot'],

'targets': ['requests.png'],

'actions': ['dot -Tpng %(dependencies)s -o %(targets)s'],

'clean': True,

}

运行:

$ doit list

dot       generate a graphviz's dot graph from module imports

draw      generate image from a dot file

imports   find imports from a python module

$ doit

.  imports:requests.models

.  imports:requests.__init__

.  imports:requests.help

(...)

.  dot

.  draw

安装:

pip install doit

下载地址:https://pydoit.org/

4、SmartCode(功能强大的代码生成器)

项目构建工具Syncd、spring-boot-assembly、doit、SmartCode介绍

SmartCode是一个代码生成器,但又不仅仅是代码生成器这么简单,功能相当的强大。

SmartCode = IDataSource -> IBuildTask -> IOutput => Build Everything

入门:

从.NET Core全局工具安装:

dotnet tool install --global SmartCode.CLI

1]、编辑构建配置文件(默认:SmartCode.yml)。

2]、命令行执行SmartCode命令:

SmartCode

等待提示输入配置文件路径(可选:默认程序根目录下SmartCode.yml文件)。

回车执行命令。

3]、等待任务执行结束。

4]、查看输出目录结果。

5]、运行API项目,进行Swagger调试。

贡献模板:

为了让更多人参与到SmartCode模板建设中来,故有以下模板规范:

1]、模板作者在 src/SmartCode.Generator/RazorTemplates/Contributions 中新建目录,并以作者英文名为目录名称。

2]、把模板放置到作者目录。

3]、作者目录下必须包括 README.md 文件,以说明模板的用途场景以及使用方式。

4]、提交PR。

下载地址:https://gitee.com/mirrors/SmartCode

注明

以上就是项目构建工具Syncd、spring-boot-assembly、doit、SmartCode的介绍内容,这些项目构建工具都能使用在Linux操作系统中。

栏目相关文章