Создайте под с помощью kubernetes SDK для python - PullRequest
1 голос
/ 29 мая 2020

Я хочу создать модуль с python клиентским SDK (аналогично запуску kubectl), который дает мне такие результаты, как показано ниже:

kubectl run --rm --image $IMAGE --overrides="$OVERRIDES" --generator=run-pod/v1 -ti "$POD"

Есть хорошие примеры? Я вижу несколько примеров, в которых используется exe c https://github.com/kubernetes-client/python/blob/master/examples/pod_exec.py, но для этого необходимо сначала создать модуль и запустить exe c, но не запускает «Интерактивный терминал» как флаги -ti в kubectl run.

Приведенный ниже код работает только с отправкой удаленной команды, но не с интерактивным терминалом, даже если мы запустим command = ['/ bin / bash'], который показывает вывод, как показано ниже .

    try:    
        #resp = stream(api_instance.connect_post_namespaced_pod_exec, podname, namespace='default', stderr=True, stdin=True, stdout=True, tty=True)
        stream(api_instance.connect_get_namespaced_pod_exec, podname, namespace='default', stderr=True, stdin=False, stdout=True, tty=False)
    except ApiException as e:
        print("Exception when calling CoreV1Api->connect_get_namespaced_pod_exec: %s\n" % e)
    print(f"Pod created - cannot exec")

enter image description here

1 Ответ

0 голосов
/ 06 июня 2020

Я заставил это работать здесь, используя псевдотерминал. по-прежнему возникают проблемы после выхода из терминала.

Я заставил его работать здесь. По-прежнему возникают проблемы после выхода из терминала. https://github.com/mohatb/python/blob/master/examples/exec_tty

...