Kubernetes 开发环境

    打开另外一个终端,配置 kubectl 之后就可以开始使用了:

    1. cluster/kubectl.sh

    单元测试

    单元测试是 Kubernetes 开发中不可缺少的,一般在代码修改的同时还要更新或添加对应的单元测试。这些单元测试大都支持在不同的系统上直接运行,比如 OSX、Linux 等。

    端到端(e2e)测试需要启动一个 Kubernetes 集群,仅支持在 Linux 系统上运行。

    本地运行方法示例:

    1. make WHAT='test/e2e/e2e.test'
    2. export KUBERNETES_PROVIDER=local
    3. go run hack/e2e.go -v -test --test_args='--ginkgo.focus=Port\sforwarding'
    4. go run hack/e2e.go -v -test --test_args='--ginkgo.focus=Feature:SecurityContext'

    Node e2e 测试

    Node e2e 测试需要启动 Kubelet,目前仅支持在 Linux 系统上运行。

    注:Kubernetes 的每个 PR 都会自动运行 node e2e 测试。

    1. git checkout branch-fix-1

    当然,也可以配置 .git/config 并运行 git fetch 拉取所有的 Pull Requests(注意 Kubernetes 的 Pull Requests 非常多,这个过程可能会很慢):

    其他参考