Skip to content

protofiles with types for predictkube services interaction

License

Notifications You must be signed in to change notification settings

dysnix/predictkube-proto

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

PredictKube Proto

This repository contains the Protocol Buffer (protobuf) definitions for the PredictKube project.

Overview

PredictKube Proto defines the data structures and service interfaces used for communication between different components of the PredictKube system. It uses Protocol Buffers for efficient serialization and gRPC for service definitions.

Project Structure

The project is organized as follows:

  • proto/: Contains all the .proto files defining messages and services

    • commonproto/: Common message definitions
    • enums/: Enumeration definitions
    • events/: Event-related message definitions
    • health/: Health check protocol definitions
    • services/: Service interface definitions
  • external/: Generated Go code from the protobuf definitions

Key Components

  1. Auth Service: Handles client management, cluster operations, and authentication
  2. Provider Service: Manages metrics retrieval and raw query operations
  3. ML Engine Service: Provides machine learning predictions
  4. Gateway Saver Service: Handles metric storage and retrieval

Development

Prerequisites

We use .tool-versions file to specify the versions of tools to use. You can use either mise-en-place or asdf to install the correct versions of tools.

Generating Go Code

To generate Go code from the protobuf definitions, use the following command:

make gen-proto

This will generate the Go files in the external/ directory.

Adding Custom Tags

To add custom tags to the generated Go files, run:

make add-tags

This uses protoc-go-inject-tag to add custom tags to the generated structs.

License

This project is licensed under the Apache License 2.0. See the LICENSE file for details.

Contributing

Contributions to PredictKube Proto are welcome. Please ensure that you update the protobuf definitions and regenerate the Go code before submitting a pull request.

Contact

For any questions or concerns, please open an issue in this repository.

About

protofiles with types for predictkube services interaction

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 3

  •  
  •  
  •