class Hetzner::Instance::Create

Included Modules

Defined in:

hetzner/instance/create.cr

Constant Summary

CLOUD_INIT_YAML = {{ read_file("/srv/crystaldoc.info/github-vitobotta-hetzner-k3s-v2.0.0/src/hetzner/instance/../../../templates/cloud_init.yaml") }}

Constructors

Class Method Summary

Instance Method Summary

Instance methods inherited from module Kubernetes::Util

api_server_ready?(kubeconfig_path) api_server_ready?, apply_kubectl_command(command, error_message = "") apply_kubectl_command, apply_manifest_from_url(url) apply_manifest_from_url, apply_manifest_from_yaml(yaml) apply_manifest_from_yaml, ensure_kubectl_is_installed! ensure_kubectl_is_installed!, fetch_manifest(url) fetch_manifest, kubernetes_component_args_list(settings_group, setting) kubernetes_component_args_list, port_open?(ip, port, timeout = 1.0) port_open?

Instance methods inherited from module Util::Shell

run_shell_command(command : String, kubeconfig_path : String, hetzner_token : String, error_message : String = "", abort_on_error = true, log_prefix = "", print_output : Bool = true) : CommandResult run_shell_command

Instance methods inherited from module Util

default_log_prefix default_log_prefix, log_line(line, log_prefix = "") log_line, which(command) which

Instance methods inherited from module Util::Shell

run_shell_command(command : String, kubeconfig_path : String, hetzner_token : String, error_message : String = "", abort_on_error = true, log_prefix = "", print_output : Bool = true) : CommandResult run_shell_command

Instance methods inherited from module Util

default_log_prefix default_log_prefix, log_line(line, log_prefix = "") log_line, which(command) which

Constructor Detail

def self.new(settings : Configuration::Main, hetzner_client : Hetzner::Client, mutex : Mutex, instance_name : String, instance_type : String, image : Int64 | String, ssh_key : Hetzner::SSHKey, network : Nil | Hetzner::Network, placement_group : Hetzner::PlacementGroup | Nil = nil, additional_packages : Array(String) = [] of String, additional_post_create_commands : Array(String) = [] of String, location : String = "") #

[View source]

Class Method Detail

def self.cloud_init(settings, ssh_port = 22, snapshot_os = "default", additional_packages = [] of String, additional_post_create_commands = [] of String, final_commands = [] of String) #

[View source]
def self.eth1(snapshot_os) #

[View source]
def self.generate_packages_str(snapshot_os, additional_packages) #

[View source]
def self.generate_post_create_commands_str(snapshot_os, additional_post_create_commands, final_commands) #

[View source]
def self.growpart(snapshot_os) #

[View source]
def self.mandatory_post_create_commands #

[View source]
def self.microos_commands #

[View source]

Instance Method Detail

def instance_name : String #

[View source]
def run #

[View source]