4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

ElixirAdvent Calendar 2021

Day 6

podのIDを調べてログインするスクリプトを作ってみる

Posted at

GCPで動くpodってデプロイすると毎回ID変わってアクセスするのが面倒くさいです
なので、思いつきでログインするスクリプトを作りました。

まずは、pod idを取得した結果をelixirで加工するスクリプトを作ります。
※きっと良いやり方はあるはずだが、知識がない範囲で即席で作りました。

いざとなったら、elixirで文字加工をしてしまえばいいという荒業です。

podex.exs

#! /usr/bin/env elixir
defmodule Main do
  def main do
    [_, ret] = cmd("kubectl", ["get", "pod"])

    [ret | _]= ret |> String.split(" ")

    ret
    |> IO.puts

  end

  defp cmd(command, params) do
    list =
      System.cmd(command, params)
      |> Tuple.to_list()
      |> List.first()
      |> String.split("\n")

    list -- [""]
  end
end

Main.main()

実行するスクリプト

execpod.sh
#!/bin/sh
POD=`./podex.exs`
kubectl exec -it $POD -- sh

execpod.sh を実行すると、podにログインできます。
ただし、ヒットした1件目のpodにしか対応してません。

4
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?