Module: Renuo::Cli::Services::Hetzner

Defined in:
lib/renuo/cli/services/hetzner.rb

Defined Under Namespace

Classes: Client

Constant Summary collapse

LIST_TOKENS_CMD =
"op item list --tags renuo-cli-debug-hetzner-token --format=json"
EXTRACT_CREDENTIALS_CMD =
"op item get --reveal --field credential,project_id"

Class Method Summary collapse

Class Method Details

.fetch_vmsObject



9
10
11
12
13
14
15
16
# File 'lib/renuo/cli/services/hetzner.rb', line 9

def fetch_vms
  tokens = read_tokens
  tokens.flat_map do |token_and_project|
    token, project_id = token_and_project.split(",")
    client = Client.new(token)
    client.list_servers.map { |s| s.merge(project_id: project_id.to_i) }
  end
end