大卫·惠勒:使用pgxn-tools测试和发布pgrx扩展

大卫·惠勒:使用pgxn-tools测试和发布pgrx扩展

💡 原文英文,约600词,阅读约需2分钟。
📝

内容提要

昨天发布了pgxn/pgxn-tools Docker镜像的v1.6.0版本,新增了pgrx-build-test命令,类似于现有的PGXS扩展的pg-build-test实用程序,但适用于pgrx扩展。该命令用于安装、构建和测试pgrx扩展。发布pgrx扩展的模式与以前相同,可以从模板生成META.json文件。希望在PGXN上看到更多的pgrx项目。

🎯

关键要点

  • 发布了pgxn/pgxn-tools Docker镜像的v1.6.0版本,新增了pgrx-build-test命令。

  • pgrx-build-test命令用于安装、构建和测试pgrx扩展,类似于pg-build-test。

  • 该命令支持从Postgres Apt仓库安装特定版本的Postgres,并加速Rust构建。

  • pgrx-build-test提取Cargo.toml文件中的pgrx版本并进行安装,要求版本为v0.11.4或更高。

  • 构建扩展使用cargo pgrx package,测试扩展使用cargo pgrx test。

  • 如果存在Makefile并配置了installcheck,则运行make installcheck以包含PGXS风格的pg_regress测试。

  • 发布pgrx扩展的模式与以前相同,可以从模板生成META.json文件。

  • 发布工作流包括生成META.json并使用pgxn-bundle进行打包和发布。

  • 期待在PGXN上看到更多的pgrx项目。

延伸问答

pgrx-build-test命令的主要功能是什么?

pgrx-build-test命令用于安装、构建和测试pgrx扩展,类似于pg-build-test。

如何使用pgrx-build-test命令加速Rust构建?

pgrx-build-test命令通过添加Swatinem/rust-cache动作来缓存依赖,从而加速Rust构建。

发布pgrx扩展的工作流程是怎样的?

发布pgrx扩展的工作流程包括生成META.json文件并使用pgxn-bundle进行打包和发布。

pgrx-build-test命令需要什么版本的pgrx?

pgrx-build-test命令要求pgrx版本为v0.11.4或更高。

如何从模板生成META.json文件?

可以通过读取Cargo.toml中的版本信息并替换模板中的占位符来生成META.json文件。

pgrx扩展的测试是如何进行的?

pgrx扩展的测试使用cargo pgrx test命令进行,并可通过Makefile配置运行PGXS风格的pg_regress测试。

➡️

继续阅读