Documentation ¶
Overview ¶
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Copyright The Pharmer Authors.
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.
Index ¶
- Constants
- Variables
- func New(s *cloud.Scope) cloud.Interface
- type ClusterActuator
- type ClusterActuatorParams
- type ClusterManager
- func (cm *ClusterManager) AddToManager(m manager.Manager) error
- func (cm *ClusterManager) ApplyDelete() error
- func (cm *ClusterManager) ApplyScale() error
- func (cm *ClusterManager) CreateCredentials(kc kubernetes.Interface) error
- func (cm *ClusterManager) EnsureMaster(leaderMachine *v1alpha1.Machine) error
- func (cm *ClusterManager) GetClusterAPIComponents() (string, error)
- func (cm *ClusterManager) GetDefaultMachineProviderSpec(sku string, role api.MachineRole) (clusterapi.ProviderSpec, error)
- func (cm *ClusterManager) GetKubeConfig() (*api.KubeConfig, error)
- func (cm *ClusterManager) GetMasterSKU(totalNodes int32) string
- func (cm *ClusterManager) IsValid(cluster *api.Cluster) (bool, error)
- func (cm *ClusterManager) NewMasterTemplateData(machine *clusterapi.Machine, token string, td cloud.TemplateData) cloud.TemplateData
- func (cm *ClusterManager) NewNodeTemplateData(machine *clusterapi.Machine, token string, td cloud.TemplateData) cloud.TemplateData
- func (cm *ClusterManager) PrepareCloud() error
- func (cm *ClusterManager) SetCloudConnector() error
- func (cm *ClusterManager) SetDefaultCluster() error
- type DOClientKubeadm
- type MachineActuator
- func (do *MachineActuator) Create(_ context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) error
- func (do *MachineActuator) Delete(_ context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) error
- func (do *MachineActuator) Exists(ctx context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) (bool, error)
- func (do *MachineActuator) Update(_ context.Context, cluster *clusterapi.Cluster, ...) error
- type MachineActuatorParams
Constants ¶
const ( UID = "digitalocean" Recorder = "digitalocean-controller" )
const ControllerManager = `` /* 6188-byte string literal not displayed */
Variables ¶
var AddToManagerFuncs []func(*ClusterManager, manager.Manager) error
AddToManagerFuncs is a list of functions to add all Controllers to the Manager
Functions ¶
Types ¶
type ClusterActuator ¶
func NewClusterActuator ¶
func NewClusterActuator(m manager.Manager, params ClusterActuatorParams) *ClusterActuator
func (*ClusterActuator) Delete ¶
func (ca *ClusterActuator) Delete(cluster *clusterapi.Cluster) error
func (*ClusterActuator) Reconcile ¶
func (ca *ClusterActuator) Reconcile(cluster *clusterapi.Cluster) error
type ClusterActuatorParams ¶
type ClusterActuatorParams struct { EventRecorder record.EventRecorder // contains filtered or unexported fields }
type ClusterManager ¶
func (*ClusterManager) AddToManager ¶
func (cm *ClusterManager) AddToManager(m manager.Manager) error
AddToManager adds all Controllers to the Manager
func (*ClusterManager) ApplyDelete ¶
func (cm *ClusterManager) ApplyDelete() error
Deletes master(s) and releases other cloud resources
func (*ClusterManager) ApplyScale ¶
func (cm *ClusterManager) ApplyScale() error
func (*ClusterManager) CreateCredentials ¶
func (cm *ClusterManager) CreateCredentials(kc kubernetes.Interface) error
func (*ClusterManager) EnsureMaster ¶
func (cm *ClusterManager) EnsureMaster(leaderMachine *v1alpha1.Machine) error
func (*ClusterManager) GetClusterAPIComponents ¶
func (cm *ClusterManager) GetClusterAPIComponents() (string, error)
func (*ClusterManager) GetDefaultMachineProviderSpec ¶
func (cm *ClusterManager) GetDefaultMachineProviderSpec(sku string, role api.MachineRole) (clusterapi.ProviderSpec, error)
func (*ClusterManager) GetKubeConfig ¶
func (cm *ClusterManager) GetKubeConfig() (*api.KubeConfig, error)
func (*ClusterManager) GetMasterSKU ¶
func (cm *ClusterManager) GetMasterSKU(totalNodes int32) string
func (*ClusterManager) IsValid ¶
func (cm *ClusterManager) IsValid(cluster *api.Cluster) (bool, error)
IsValid TODO: Add Description
func (*ClusterManager) NewMasterTemplateData ¶
func (cm *ClusterManager) NewMasterTemplateData(machine *clusterapi.Machine, token string, td cloud.TemplateData) cloud.TemplateData
func (*ClusterManager) NewNodeTemplateData ¶
func (cm *ClusterManager) NewNodeTemplateData(machine *clusterapi.Machine, token string, td cloud.TemplateData) cloud.TemplateData
func (*ClusterManager) PrepareCloud ¶
func (cm *ClusterManager) PrepareCloud() error
func (*ClusterManager) SetCloudConnector ¶
func (cm *ClusterManager) SetCloudConnector() error
func (*ClusterManager) SetDefaultCluster ¶
func (cm *ClusterManager) SetDefaultCluster() error
type DOClientKubeadm ¶
type DOClientKubeadm interface {
TokenCreate(params kubeadm.TokenCreateParams) (string, error)
}
type MachineActuator ¶
func NewMachineActuator ¶
func NewMachineActuator(params MachineActuatorParams) *MachineActuator
func (*MachineActuator) Create ¶
func (do *MachineActuator) Create(_ context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) error
func (*MachineActuator) Delete ¶
func (do *MachineActuator) Delete(_ context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) error
func (*MachineActuator) Exists ¶
func (do *MachineActuator) Exists(ctx context.Context, cluster *clusterapi.Cluster, machine *clusterapi.Machine) (bool, error)
func (*MachineActuator) Update ¶
func (do *MachineActuator) Update(_ context.Context, cluster *clusterapi.Cluster, goalMachine *clusterapi.Machine) error
type MachineActuatorParams ¶
type MachineActuatorParams struct { Kubeadm DOClientKubeadm Client client.Client EventRecorder record.EventRecorder // contains filtered or unexported fields }