release guide (#9)

diff --git a/Makefile b/Makefile
new file mode 100644
index 0000000..98b2a8e
--- /dev/null
+++ b/Makefile
@@ -0,0 +1,54 @@
+# Licensed to the Apache Software Foundation (ASF) under one or more
+# contributor license agreements.  See the NOTICE file distributed with
+# this work for additional information regarding copyright ownership.
+# The ASF licenses this file to You under the Apache License, Version 2.0
+# (the "License"); you may not use this file except in compliance with
+# the License.  You may obtain a copy of the License at
+#
+#     http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing, software
+# distributed under the License is distributed on an "AS IS" BASIS,
+# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+# See the License for the specific language governing permissions and
+# limitations under the License.
+
+SHELL := /bin/bash -o pipefail
+
+VERSION ?= latest
+RELEASE_SRC = skywalking-kong-${VERSION}-src
+
+.PHONY: default
+default: release-src
+
+### test:         Run test suite. Use test=... for specific tests
+.PHONY: test
+test:
+	prove -I. -r -s t
+
+### help:         Show Makefile rules
+.PHONY: help
+help:
+	@echo Makefile rules:
+	@echo
+	@grep -E '^### [-A-Za-z0-9_]+:' Makefile | sed 's/###/   /'
+
+### release-src:  Release source code
+.PHONY: release-src
+release-src:
+	tar -zcvf $(RELEASE_SRC).tgz \
+		./kong \
+		./rockspec \
+		./Makefile \
+		./NOTICE \
+		./LICENSE \
+		./*.md 
+
+	gpg --batch --yes --armor --detach-sig $(RELEASE_SRC).tgz
+	shasum -a 512 $(RELEASE_SRC).tgz > $(RELEASE_SRC).tgz.sha512
+
+	mkdir -p release
+	mv $(RELEASE_SRC).tgz release/$(RELEASE_SRC).tgz
+	mv $(RELEASE_SRC).tgz.asc release/$(RELEASE_SRC).tgz.asc
+	mv $(RELEASE_SRC).tgz.sha512 release/$(RELEASE_SRC).tgz.sha512
+
diff --git a/README.md b/README.md
index 2ea8293..6d1d993 100644
--- a/README.md
+++ b/README.md
@@ -51,5 +51,8 @@
 * Join `skywalking` channel at [Apache Slack](https://join.slack.com/t/the-asf/shared_invite/enQtNzc2ODE3MjI1MDk1LTAyZGJmNTg1NWZhNmVmOWZjMjA2MGUyOGY4MjE5ZGUwOTQxY2Q3MDBmNTM5YTllNGU4M2QyMzQ4M2U4ZjQ5YmY). If the link is not working, find the latest one at [Apache INFRA WIKI](https://cwiki.apache.org/confluence/display/INFRA/Slack+Guest+Invites).
 * QQ Group: 392443393(2000/2000, not available), 901167865(available)
 
+# Release Guide
+All committers should follow [Release Guide](release.md) to publish the official release.
+
 # License
 Apache 2.0
diff --git a/release.md b/release.md
new file mode 100644
index 0000000..0a5cf86
--- /dev/null
+++ b/release.md
@@ -0,0 +1,151 @@
+# Release Guide
+All committer should follow these steps to do release for this repo.
+
+1. Prepare the official release.
+
+- Update the [CHANGES.md](CHANGES.md).
+- Create a new `skywalking-kong-x.y-z.rockspec` file under [rockspec](/rockspec).
+
+2. Package the source release.
+
+```shell
+> export VERSION=x.y.z
+> make release-src
+```
+
+Use SVN to upload the files(tgz, asc and sha512) in the `release` folder to `https://dist.apache.org/repos/dist/dev/skywalking/kong/x.y.z`.
+
+3. Make the internal announcements. Send an announcement mail in dev mail list.
+
+```
+[ANNOUNCE] SkyWalking Kong x.y.z test build available
+
+The test build of x.y.z is available.
+
+We welcome any comments you may have, and will take all feedback into
+account if a quality vote is called for this build.
+
+Release notes:
+
+ * https://github.com/apache/skywalking-kong/blob/vx.y.z/CHANGES.md
+
+Release Candidate:
+
+ * https://dist.apache.org/repos/dist/dev/skywalking/kong/x.y.z/
+ * sha512 checksums
+   - xxxxxxx  skywalking-kong-x.y.z-src.tgz
+
+Release Tag :
+
+ * vx.y.z
+
+Release CommitID :
+
+ * https://github.com/apache/skywalking-kong/tree/xxxxxxxxxx
+
+Keys to verify the Release Candidate :
+
+ * https://dist.apache.org/repos/dist/release/skywalking/KEYS
+
+
+A vote regarding the quality of this test build will be initiated
+within the next couple of days.
+```
+
+4. Wait at least 48 hours for test responses. If there is a critical issue found and confirmed by the PMC, this release should be cancelled.
+
+5. Call for a vote. Call a vote in dev@skywalking.apache.org
+
+```
+[VOTE] Release SkyWalking Kong x.y.z
+
+This is a call for vote to release Apache SkyWalking Kong version x.y.z.
+
+Release notes:
+
+ * https://github.com/apache/skywalking-kong/blob/vx.y.z/CHANGES.md
+
+Release Candidate:
+
+ * https://dist.apache.org/repos/dist/dev/skywalking/kong/x.y.z/
+ * sha512 checksums
+   - xxxxxxx  skywalking-kong-x.y.z-src.tgz
+
+Release Tag :
+
+ * vx.y.z
+
+Release CommitID :
+
+ * https://github.com/apache/skywalking-kong/tree/xxxxxxxxxx
+
+Keys to verify the Release Candidate :
+
+ * https://dist.apache.org/repos/dist/release/skywalking/KEYS
+
+
+Voting will start now (xxxx date) and will remain open for at least 72 hours, Request all PMC members to give their vote.
+[ ] +1 Release this package.
+[ ] +0 No opinion.
+[ ] -1 Do not release this package because....
+
+```
+
+5. Publish release, if vote passed.
+
+Move the release from RC folder to the dist folder. This will begin the file sync across the global Apache mirrors.
+```
+> export SVN_EDITOR=vim
+> svn mv https://dist.apache.org/repos/dist/dev/skywalking/kong/x.y.z https://dist.apache.org/repos/dist/release/skywalking/kong
+....
+enter your apache password
+....
+```
+
+Send ANNOUNCE email to `dev@skywalking.apache.org`, `announce@apache.org`, the sender should use Apache email account.
+```
+Mail title: [ANNOUNCE] Release Apache SkyWalking Kong version x.y.z
+
+Mail content:
+Hi all,
+
+Apache SkyWalking Team is glad to announce to release Apache SkyWalking Kong version x.y.z.
+
+SkyWalking: APM (application performance monitor) tool for distributed systems,
+especially designed for microservices, cloud native and container-based (Docker, Kubernetes, Mesos) architectures.
+
+SkyWalking Kong Agent provides the native tracing capability for Kong.
+
+This release contains a number of new features, bug fixes and improvements compared to
+version a.b.c(last release). The notable changes since x.y.z include:
+
+(Highlight key changes)
+1. ...
+2. ...
+3. ...
+
+Please refer to the change log for the complete list of changes:
+https://github.com/apache/skywalking-kong/blob/vx.y.z/CHANGES.md
+
+Apache SkyWalking website:
+http://skywalking.apache.org/
+
+Downloads:
+http://skywalking.apache.org/downloads/
+
+Twitter:
+https://twitter.com/ASFSkyWalking
+
+SkyWalking Resources:
+- GitHub: https://github.com/apache/skywalking
+- Issue: https://github.com/apache/skywalking/issues
+- Mailing list: dev@skywalkiing.apache.org
+
+
+- Apache SkyWalking Team
+```
+
+6. upload rockspec file to luarocks.org
+login to [luarocks.org](https://luarocks.org/), the user name is `apache-skywalking` and the password has been sent to `private@skwalking.apache.org`.
+
+Then upload the rockspec file and you can use the `luarocks` command line to install the new version.