Я создал Makefile
для экспорта kubeconfig
из фиксированный путь, например:
myproj
- .kube //folder
config //file which contain the config
- Makefile. //same level as .kube folder
Теперь, когда я запускаю из терминала следующее работает, я имею в виду, если я запускаю kubectl get ns
Я получил результаты, что означает, что он настроил успешно !
export KUBECONFIG=/Users/i33333/projects/app-test/v-app/.kube/config
Я создал цель make-файла, как показано ниже
kube-cfg:
export KUBECONFIG=$(PWD)/.kube/config
При выполнении цели я вижу в терминале
export KUBECONFIG=/Users/i33333/projects/app-test/v-app/.kube/config
, что точно так же , что и при ручном выполнении, но когда я запускаю kubectl get ns
Я получил ошибку:
error: no configuration has been provided, try setting KUBERNETES_MASTER environment variable
Я не понимаю, почему не работает, когда я запускаю его из makefile , и работает, когда я запускаю его из терминала вручную? Любая идея, я пытаюсь изменить и использовать также $ (CURRDIR), который не помогает
обновление
Я пытался, как предложил, который не работает
KUBECONFIG=$(PWD)/.kube/config
kube-cfg:
export $(KUBECONFIG)
update2
Если я сделаю это так
KUBECONFIG := $(PWD)/kube/config.yaml
tgt1:
@export KUBECONFIG=$(KUBECONFIG) && kubectl get ns
Я смог увидеть ns при запуске make-файла tgt1:
но если теперь я хочу запустить его из терминала kubectl get ns
Я получаю ту же ошибку `ошибка: конфигурация не предоставлена, попробуйте установить переменную среды KUBERNETES_MASTER, Я хочу настроить ее из файла makefile