通过patch 方式解决cube.js 集成cratedb 的问题
  TEZNKK3IfmPf 2023年11月12日 31 0

今天有写过一个简单的cube.js 集成cratedb 的说明,主要是在driver 上的兼容问题,处理方法是删除不兼容的代码
实际上我们也可以通过类似linux c 开发中的patch 方式解决,简化手工干预

生成patch 文件

  • 安装npm 依赖
yarn
  • 生成patch
    重命名原有的文件(进入npm 包目录)
    cp PostgresDriver.js PostgresDriver-origin.js
    修改PostgresDriver.js ,删除不兼容的部分:
    通过patch 方式解决cube.js 集成cratedb 的问题

生成patch

diff -Nur node_modules/@cubejs-backend/postgres-driver/driver/PostgresDriver-origin.js node_modules/@cubejs-backend/post
gres-driver/driver/PostgresDriver.js > cratedb-driver-patch.patch

恢复原有文件内容

新项目应用patch

需要先安装依赖,同时copy patch 文件

patch < cratedb-driver-patch.patch

效果

patch < cratedb-driver-patch.patch 
can't find file to patch at input line 3
Perhaps you should have used the -p or --strip option?
The text leading up to this was:
--------------------------
|--- node_modules/@cubejs-backend/postgres-driver/driver/PostgresDriver-origin.js 2019-08-19 13:03:59.000000000 +0800
|+++ node_modules/@cubejs-backend/postgres-driver/driver/PostgresDriver.js 2019-08-19 13:04:05.000000000 +0800
--------------------------
File to patch: node_modules/@cubejs-backend/postgres-driver/driver/PostgresDriver.js
patching file node_modules/@cubejs-backend/postgres-driver/driver/PostgresDriver.js

说明

以上是一个简单的借鉴linux c patch 处理的方式解决cube.js 兼容cratedb 的问题,就是一个简单的学习

【版权声明】本文内容来自摩杜云社区用户原创、第三方投稿、转载,内容版权归原作者所有。本网站的目的在于传递更多信息,不拥有版权,亦不承担相应法律责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@moduyun.com

  1. 分享:
最后一次编辑于 2023年11月12日 0

暂无评论

TEZNKK3IfmPf