Create a repository to create, lookup, and list host plugins.

This commit is contained in:
Todd Knight committed 2021-09-08 16:41:41 -07:00
1 parent db9e1106a9
commit 1237d05232
10 files changed
+957 -74

No files matched your search

@@ -20,4 +20,44 @@ message Plugin {
// name is optional. If set, it must be unique within scope_id.
// @inject_tag: `gorm:"default:null"`
string name = 30;
}
message PluginVersion {
// public_id is a surrogate key suitable for use in a public API.
// @inject_tag: `gorm:"primary_key"`
string public_id = 10;
// plugin_id is a foreign key to the plugin table.
// @inject_tag: `gorm:"default:null"`
string plugin_id = 20;
// The create_time is set by the database.
// @inject_tag: `gorm:"default:current_timestamp"`
timestamp.v1.Timestamp create_time = 30;
// semantic_version is required and is the symantic version for the above plugin.
// @inject_tag: `gorm:"default:null"`
string semantic_version = 4;
}
message PluginExecutable {
// version_id is a foreign key to the plugin version table.
// @inject_tag: `gorm:"primary_key"`
string version_id = 10;
// operating_system to the operating system this executable is built to run on.
// @inject_tag: `gorm:"primary_key"`
string operating_system = 20;
// architecture to the architecture this executable is built to run on.
// @inject_tag: `gorm:"primary_key"`
string architecture = 30;
// The create_time is set by the database.
// @inject_tag: `gorm:"default:current_timestamp"`
timestamp.v1.Timestamp create_time = 40;
// executable is required and is the compressed executable for this plugin.
// @inject_tag: `gorm:"default:null"`
bytes executable = 50;
}