【原创】k8s源码分析-----kubectl(2)Factory

本文QQ空间的链接:http://user.qzone.qq.com/29185807/blog/1461036130

本文csdn博文的链接:http://blog.csdn.net/screscent/article/details/51188790

 

源码为k8s v1.1.1

 

1、原因

首先讲讲为啥,我们要讲解Factory

代码在k8s.io\kubernetes\cmd\kubectl

先从main函数入口来说

main函数很简单,进来就直接构建了一个cmd,然后调用了Execute

而cmd里面的参数除了几个标准的输入输出之外,就只有一个NewFactory

 

下面我们继续看看NewKubectlCommand,在函数中,构建了很多cmd的,每个cmd传入进去的参数也是Factory

代码在k8s.io\kubernetes\pkg\kubectl\cmd

 我们简单的看一个NewCmdCreate

很明显在Run中最重要的函数是RunCreate

而在RunCreate中,所有的重要参数都是有Factory产出

 

所以在分析kubectl命令之前,我们先分析下Factory。

 

2、构建

 

代码在k8s.io\kubernetes\pkg\kubectl\cmd\util

下面是源码中的注释

Factory provides abstractions that allow the Kubectl command to be extended across multiple types of resources and different API sets.

主要的含义就是Factory提供了一些抽象动作,目的就是用于kubectl command可以扩展很多不同的类型和不同的api(英文翻译的不好,大致就是这个意思)

 


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部