| // Copyright 2020 The Monogon Project Authors. |
| // |
| // SPDX-License-Identifier: Apache-2.0 |
| // |
| // Licensed under the Apache License, Version 2.0 (the "License"); |
| // you may not use this file except in compliance with the License. |
| // You may obtain a copy of the License at |
| // |
| // http://www.apache.org/licenses/LICENSE-2.0 |
| // |
| // Unless required by applicable law or agreed to in writing, software |
| // distributed under the License is distributed on an "AS IS" BASIS, |
| // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| // See the License for the specific language governing permissions and |
| // limitations under the License. |
| |
| syntax = "proto3"; |
| package metropolis.proto.api; |
| option go_package = "source.monogon.dev/metropolis/proto/api"; |
| |
| // NodeParameters is the data with which a Node is set booted. It contains the |
| // configuration required for a node to either bootstrap a new cluster, or |
| // register into an existing one. |
| // It is serialized into a proto message and supplied to Metropolis in an |
| // implementation-specific way (currently: either on ESP partition or via qemu |
| // fw_cfg). |
| message NodeParameters { |
| message ClusterBootstrap { |
| bytes owner_public_key = 1; |
| } |
| message ClusterRegister { |
| } |
| oneof cluster { |
| ClusterBootstrap cluster_bootstrap = 1; |
| ClusterRegister cluster_register = 2; |
| } |
| } |