diff --git a/content/zh/blog/trainey/imgs/oemaker_example.png b/content/zh/blog/trainey/imgs/oemaker_example.png
new file mode 100644
index 0000000000000000000000000000000000000000..cce56d1e808ed4fb16847972f3964e8db381d140
Binary files /dev/null and b/content/zh/blog/trainey/imgs/oemaker_example.png differ
diff --git a/content/zh/blog/trainey/yaml_compilation_guide.md b/content/zh/blog/trainey/yaml_compilation_guide.md
new file mode 100644
index 0000000000000000000000000000000000000000..f224205e9e73ecd2140b87fa6bba952936177ab8
--- /dev/null
+++ b/content/zh/blog/trainey/yaml_compilation_guide.md
@@ -0,0 +1,90 @@
++++
+title = "yaml文件编写指导"
+date = "2020-08-11"
+tags = ["参与贡献", "流程规范"]
+archives = "2020-08"
+author = "Trainey"
+summary = "介绍yaml文件用途及编写方法"
++++
+
+#### 一、背景介绍
+
+通过`yaml`文件承载`openEuler`制品仓软件包的上游社区信息,便于统一校验及管理。
+
+#### 二、yaml文件命名及位置要求
+
+`yaml`文件名称与仓库名称应该保持一致,并跟软件包的`spec`文件在同级目录,一般放置到根目录。例如,`oemaker`代码仓的`yaml`文件名称是`oemaker.yaml`,放置到根目录,如下所示:
+
+
+
+#### 三、yaml文件字段介绍
+
+`yaml`文件中需要人工填写的字段有 `version_control`、`src_repo`、`tag_prefix`、`separator`。
+
+
+
+字段名 |
+字段描述 |
+备注 |
+
+
+version_control |
+上游仓库使用的版本控制协议 |
+目前支持svn, git, hg, github, gnome, metacpan, pypi, gitee |
+
+
+src_repo |
+上游仓库的实际地址 |
+通过version_control和src_repo我们可以使用工具下载对应的代码 |
+
+
+tag_prefix |
+上游仓库的tag名version前缀 |
+例如,上游给的tag名是v1_0_1, 那么tag_prefix应该配置为"^v" |
+
+
+separator |
+tag中版本的间隔符 |
+例如,上游给的tag名是v1_0_1, 那么separator应该配置为"_" |
+
+
+#### 四、常见类型写法示例
+
+
\ No newline at end of file