jobilla/protoc-gen-appevents

protobuf 的 Appevents 插件

v0.1.5 2023-02-06 08:38 UTC

This package is auto-updated.

Last update: 2024-09-06 12:14:39 UTC


README

protoc 插件旨在与 https://github.com/jobilla/go-app-events 一起使用。

它允许在消息中使用 jobilla.appevents.event_name 选项,这将为您生成的 Go 结构体消息生成一个 StringType 方法,使其符合库中的 Message 接口。

这个库之所以存在,是因为原始库设计上的不足,并且主要在 Jobilla 内部使用。随着我们迁移到 CloudEvents,我们可能在 2023 年弃用并存档这个工具。

安装

我们建议使用 Buf 生成您的 protobuf 代码。要使用此工具,您需要从该库中的 jobilla/appevents/options.proto。它在 Buf 上发布,您可以从您的 buf.yaml 中导入它。

version: v1
deps:
  - buf.build/jobilla/appevents

如果您不使用 buf,您必须将 proto 文件复制到您的代码库中。

您还需要 protoc-gen-go-appevents 二进制文件。它随每个发布在此存储库中发布,并在 jobilla/protoc-gen-go-appevents Docker 映像中发布。我们鼓励您构建自己的 Buf 映像并导入二进制文件。

FROM bufbuild/buf

COPY --from=jobilla/protoc-gen-go-appevents /protoc-gen-go-appevents /usr/local/bin/protoc-gen-go-appevents

用法

您可以使用 jobilla.appevents.event_name 选项声明消息的兼容名称。

syntax="proto3";

import "jobilla/appevents/options.proto";

message User {
  option (jobilla.appevents.event_name) = "user";

  string email = 1;
  string name = 2;
}