datawire / envoy-steps

Envoy Step by Step
Apache License 2.0
74 stars 36 forks source link

"error: the path "usersvc/deployment.yaml" does not exist" #4

Open medyagh opened 6 years ago

medyagh commented 6 years ago

For this step of the blog post

bash up.sh usersvc

I get this error:

error: the path "usersvc/deployment.yaml" does not exist

Could I suggest to use Makefile instead of Bash to build and deploy to minikube ? something like this ? could send you a PR if you agree.

richarddli commented 6 years ago

Hi, thanks for the bug report! I'm not sure switching to a Makefile versus bash would really simplify things -- my preference would be to fix the root cause. But interested in hearing your thoughts?

medyagh commented 6 years ago

Thanks for the response, I found the root cause was the environment variables being overridden in recursive bash scripts. re-running the prep bash script fixes the problem.

In K8Guard we used Makefiles and we have a parent project that deploys other projects in other repos, and using Makefiles simplified depending on Bash variables specially when you include another bash file.

I find Make a good fit, since it is installed by default on most systems (including linux and mac)

plus with make you can have autocmpelete and document the details. in make help

you could have something like this

make init
make step1
make step2
make step3
make clean

you coud have sub makes like make _build_docker

that would be called in other steps but not visible to user, still they can go and study it in the Makefile if they wanna see what u are doing, no need to go in every folder and open up all the bashscripts.