OpenID Connect
OAuth是关于授权(给予第三方应用访问你存放在某处的资料,例如让Gmem访问你的Github头像)的开放标准,目前版本是2.0。
只有得到用户的授权,Github才会允许Gmem访问你的头像。那么Github怎么样才能确认Gmem获得授权…
阅读全文Kubernetes故障检测和自愈
在Kubernetes日常运维过程中,会出现各种各样的问题,例如:
- 节点CNI不可用,其它节点无法连接到故障节点的Pod
- Subpath方式挂载的Configmap,特定条件下出现Pod无限重启的问题
- 集群DNS服务器无法通过上游DNS解析外部名称
- 节点假死,…
Kustomize学习笔记
Kustomize是一个定制化K8S资源定义(YAML)的工具,它不使用Helm那样的模板,比较简单。定制化之后,原始的资源定义保持不变。
从1.14版本开始Kustomize作为Kubectl的一部分进行分发。
术语 | 说明 |
Base |
指会被其它定制(kus… |
Jenkins插件开发
通常我们基于Maven来开发Jenkins插件。
修改Maven配置文件,添加:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 |
<profile> <id>jenkins</id> <repositories> <repository> <id>repo.jenkins-ci.org</id> <url>http://repo.jenkins-ci.org/public/</url> </repository> </repositories> <pluginRepositories> <pluginRepository> <id>repo.jenkins-ci.org</id> <url>http://repo.jenkins-ci.org/public/</url> </pluginRepository> </pluginRepositories> </profile> |
插件项目的父POM通常设置为:
1 2 3 4 5 6 |
<parent> <groupId>org.jenkins-ci.plugins</groupId> <artifactId>plugin</artifactId> <version>3.43</version> <relativePath /> </parent> |
此POM为构件插件提供了合理的缺省配置, 修改属性以定制配置项:
这是一个Maven插件,用于构建Jenkins插件。
此目标用于创建一个新的插件项目骨架。目前已经废弃,应…
阅读全文OpenAPI学习笔记
OpenAPI是一套API规范( OpenAPI Specification ,OAS),用于定义RESTful API的接口。OpenAPI最初来自SmartBear的Swagger规范。
OpenAPI 目前的版本是3.0,当前Swagger和Ope…
阅读全文Maven插件开发
Maven本身只是一套框架,它的功能基于全部依赖于插件来实现。因此,掌握插件开发深度定制Maven的必修课。
插件本身也是Maven构件,构件标识的命名约定是 <yourplugin>-maven-plugin。不要命名为 maven-<yourplugin>-plugin,这种命名模式由官方插件(组标识 org.apache.maven.plugins)保留。
每个Maven插件包含一或多个Mojo,每个Mojo实现了一个插件目标(goal),Mojo通常编写为Java类。插件就是一系列Mojo的集合。
插件必须在自己的JAR包的 META-INF/maven/plugin.xml中提供描述符信息,你不需要手工编写描述符,使用Maven插件工具注解即可自动生成。
本章我们编写一个最简单的插件,它不需要参数,仅仅简单的打印一段消息。
可以将mojo理解为插件的一个目标(goal)的实现类。你需要使用…
阅读全文