This is an automated email from the ASF dual-hosted git repository.
zhangjintao pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/apisix-ingress-controller.git
The following commit(s) were added to refs/heads/master by this push:
new f31f520 docs: merge contribute.md and development.md (#909)
f31f520 is described below
commit f31f5201100169a61cd6b8220683453f2f81379d
Author: bin-ya <[email protected]>
AuthorDate: Wed Mar 16 09:04:57 2022 +0800
docs: merge contribute.md and development.md (#909)
---
README.md | 15 ++++-
docs/en/latest/contribute.md | 108 +++++++++++++++++++++++++++++----
docs/en/latest/development.md | 124 --------------------------------------
docs/en/latest/getting-started.md | 2 +-
4 files changed, 111 insertions(+), 138 deletions(-)
diff --git a/README.md b/README.md
index 781e777..25189f7 100644
--- a/README.md
+++ b/README.md
@@ -89,7 +89,6 @@ From the version 1.0.0, APISIX-ingress-controller need to
work with Apache APISI
## Documents
* [Get Started](./docs/en/latest/getting-started.md)
-* [SDK doc](./docs/en/latest/development.md)
* [Design introduction](./docs/en/latest/design.md)
## FAQ
@@ -123,6 +122,20 @@ We welcome all kinds of contributions from the open-source
community, individual
* Ingress APISIX: the whole service that contains the proxy ([Apache
APISIX](https://apisix.apache.org)) and ingress controller (apisix ingress
controller).
* apisix-ingress-controller: the ingress controller component.
+## How to contribute
+
+Most of the contributions that we receive are code contributions, but you can
+also contribute to the documentation or simply report solid bugs
+for us to fix.
+
+ For new contributors, please take a look at issues with a tag called [Good
first
issue](https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
or [Help
wanted](https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22).
+
+## How to report a bug
+
+* **Ensure the bug was not already reported** by searching on GitHub under
[Issues](https://github.com/apache/apisix-ingress-controller/issues).
+
+* If you're unable to find an open issue addressing the problem, [open a new
one](https://github.com/apache/apisix-ingress-controller/issues/new). Be sure
to include a **title and clear description**, as much relevant information as
possible, and a **code sample** or an **executable test case** demonstrating
the expected behavior that is not occurring.
+
## License
[Apache License
2.0](https://github.com/apache/apisix-ingress-controller/blob/master/LICENSE)
diff --git a/docs/en/latest/contribute.md b/docs/en/latest/contribute.md
index fa861ee..c3dec73 100644
--- a/docs/en/latest/contribute.md
+++ b/docs/en/latest/contribute.md
@@ -1,5 +1,5 @@
---
-title: Contributing to apisix-ingress-controller
+title: Developing for Apache APISIX Ingress Controller
---
<!--
@@ -21,23 +21,27 @@ title: Contributing to apisix-ingress-controller
#
-->
-Firstly, thanks for your interest in contributing! I hope that this will be a
-pleasant first experience for you, and that you will return to continue
-contributing.
+This document explains how to get started with developing for Apache APISIX
Ingress controller.
-## How to contribute
+## Prerequisites
-Most of the contributions that we receive are code contributions, but you can
-also contribute to the documentation or simply report solid bugs
-for us to fix.
+* Install [Go 1.13](https://golang.org/dl/) or later, and we use go module to
manage the go package dependencies.
+* Prepare an available Kubernetes cluster in your workstation, we recommend
you to use [KIND](https://kind.sigs.k8s.io/).
+* Install Apache APISIX in Kubernetes by [Helm
Chart](https://github.com/apache/apisix-helm-chart).
- For new contributors, please take a look at issues with a tag called [Good
first
issue](https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22good+first+issue%22)
or [Help
wanted](https://github.com/apache/apisix-ingress-controller/issues?q=is%3Aissue+is%3Aopen+label%3A%22help+wanted%22).
+## Fork and Clone
-## How to report a bug
+* Fork the repository from
[apache/apisix-ingress-controller](https://github.com/apache/apisix-ingress-controller)
to your own GitHub account.
+* Clone the fork repository to your workstation.
+* Run `go mod download` to download modules to local cache. By the way, if you
are a developer in China, we suggest you setting `GOPROXY` to
`https://goproxy.cn` to speed up the downloading.
-* **Ensure the bug was not already reported** by searching on GitHub under
[Issues](https://github.com/apache/apisix-ingress-controller/issues).
+## Build
-* If you're unable to find an open issue addressing the problem, [open a new
one](https://github.com/apache/apisix-ingress-controller/issues/new). Be sure
to include a **title and clear description**, as much relevant information as
possible, and a **code sample** or an **executable test case** demonstrating
the expected behavior that is not occurring.
+```shell
+cd /path/to/apisix-ingress-controller
+make build
+./apisix-ingress-controller version
+```
## How to add a new feature or change an existing one
@@ -49,3 +53,83 @@ Once we've discussed your changes and you've got your code
ready, make sure that
* Includes tests for new functionality.
* References the original issue in the description, e.g. "Resolves #123".
* Has a [good commit
message](http://tbaggery.com/2008/04/19/a-note-about-git-commit-messages.html).
+
+## Test
+
+### Run unit test cases
+
+```shell
+cd /path/to/apisix-ingress-controller
+make unit-test
+```
+
+### Run e2e test cases
+
+We using [KIND](https://kind.sigs.k8s.io/) for running e2e test cases. Please
ensure `kind` CLI has been installed.
+Currently we using KIND latest version v0.11.1 and using Kubernetes v1.21.1
for testing.
+
+```shell
+cd /path/to/apisix-ingress-controller
+make e2e-test
+```
+
+Note the running of e2e cases is somewhat slow, so please be patient.
+
+> See [here](https://onsi.github.io/ginkgo/#focused-specs) to learn
+how to just run partial e2e cases.
+
+### Build docker image
+
+```shell
+cd /path/to/apisix-ingress-controller
+make build-image IMAGE_TAG=a.b.c
+```
+
+> Note: The Dockerfile in this repository is only for development, not for
release.
+
+If you're coding for apisix-ingress-controller and adding some e2e test cases
to verify your changes,
+you should push the images to the image registry that your Kubernetes cluster
can access, if you're using Kind, just run the following command:
+
+```shell
+make push-images-to-kind
+```
+
+## Run apisix-ingress-controller locally
+
+We assume all prerequisites above mentioned are met, what's more, since we
want to run apisix-ingress-controller in bare-metal environment, please make
sure both the proxy service and admin api service of Apache APISIX are exposed
outside of the Kubernetes cluster, e.g. configuring them as
[NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)
services.
+
+Let's assume the Admin API service address of Apache APISIX is
`http://192.168.65.2:31156`. Next launch the ingress-apisix-controller by the
following command.
+
+```shell
+cd /path/to/apisix-ingress-controller
+./apisix-ingress-controller ingress \
+ --kubeconfig /path/to/kubeconfig \
+ --http-listen :8080 \
+ --log-output stderr \
+ --default-apisix-cluster-base-url http://192.168.65.2:31156/apisix/admin
+ --default-apisix-cluster-admin-key edd1c9f034335f136f87ad84b625c8f1
+```
+
+Something you need to pay attention to:
+
+* configuring of `--kubeconfig`, if you are using Minikube, the file path
should be `~/.kube/config`.
+* configuring of `--default-apisix-cluster-admin-key`, if you have changed the
admin key in Apache APISIX, also changing it here. If you have disabled the
authentication in Apache APISIX, just removing this option.
+
+## Pre-commit todo
+
+When everything is ready, before submitting the code, please make sure that
the license, code style, and document format are consistent with the project
specification.
+
+We provide commands to implement it, just run the following commands:
+
+```shell
+make update-codegen
+make update-license
+make update-gofmt
+make update-mdlint
+```
+
+or just run one command:
+
+```shell
+make update-all
+```
diff --git a/docs/en/latest/development.md b/docs/en/latest/development.md
deleted file mode 100644
index f31d514..0000000
--- a/docs/en/latest/development.md
+++ /dev/null
@@ -1,124 +0,0 @@
----
-title: Developing for Apache APISIX Ingress Controller
----
-
-<!--
-#
-# 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.
-#
--->
-
-This document explains how to get started with developing for Apache APISIX
Ingress controller.
-
-## Prerequisites
-
-* Install [Go 1.13](https://golang.org/dl/) or later, and we use go module to
manage the go package dependencies.
-* Prepare an available Kubernetes cluster in your workstation, we recommend
you to use [KIND](https://kind.sigs.k8s.io/).
-* Install Apache APISIX in Kubernetes by [Helm
Chart](https://github.com/apache/apisix-helm-chart).
-
-## Fork and Clone
-
-* Fork the repository from
[apache/apisix-ingress-controller](https://github.com/apache/apisix-ingress-controller)
to your own GitHub account.
-* Clone the fork repository to your workstation.
-* Run `go mod download` to download modules to local cache. By the way, if you
are a developer in China, we suggest you setting `GOPROXY` to
`https://goproxy.cn` to speed up the downloading.
-
-## Build
-
-```shell
-cd /path/to/apisix-ingress-controller
-make build
-./apisix-ingress-controller version
-```
-
-## Test
-
-### Run unit test cases
-
-```shell
-cd /path/to/apisix-ingress-controller
-make unit-test
-```
-
-### Run e2e test cases
-
-We using [KIND](https://kind.sigs.k8s.io/) for running e2e test cases. Please
ensure `kind` CLI has been installed.
-Currently we using KIND latest version v0.11.1 and using Kubernetes v1.21.1
for testing.
-
-```shell
-cd /path/to/apisix-ingress-controller
-make e2e-test
-```
-
-Note the running of e2e cases is somewhat slow, so please be patient.
-
-> See [here](https://onsi.github.io/ginkgo/#focused-specs) to learn
-how to just run partial e2e cases.
-
-### Build docker image
-
-```shell
-cd /path/to/apisix-ingress-controller
-make build-image IMAGE_TAG=a.b.c
-```
-
-> Note: The Dockerfile in this repository is only for development, not for
release.
-
-If you're coding for apisix-ingress-controller and adding some e2e test cases
to verify your changes,
-you should push the images to the image registry that your Kubernetes cluster
can access, if you're using Kind, just run the following command:
-
-```shell
-make push-images-to-kind
-```
-
-## Run apisix-ingress-controller locally
-
-We assume all prerequisites above mentioned are met, what's more, since we
want to run apisix-ingress-controller in bare-metal environment, please make
sure both the proxy service and admin api service of Apache APISIX are exposed
outside of the Kubernetes cluster, e.g. configuring them as
[NodePort](https://kubernetes.io/docs/concepts/services-networking/service/#nodeport)
services.
-
-Let's assume the Admin API service address of Apache APISIX is
`http://192.168.65.2:31156`. Next launch the ingress-apisix-controller by the
following command.
-
-```shell
-cd /path/to/apisix-ingress-controller
-./apisix-ingress-controller ingress \
- --kubeconfig /path/to/kubeconfig \
- --http-listen :8080 \
- --log-output stderr \
- --default-apisix-cluster-base-url http://192.168.65.2:31156/apisix/admin
- --default-apisix-cluster-admin-key edd1c9f034335f136f87ad84b625c8f1
-```
-
-Something you need to pay attention to:
-
-* configuring of `--kubeconfig`, if you are using Minikube, the file path
should be `~/.kube/config`.
-* configuring of `--default-apisix-cluster-admin-key`, if you have changed the
admin key in Apache APISIX, also changing it here. If you have disabled the
authentication in Apache APISIX, just removing this option.
-
-## Pre-commit todo
-
-When everything is ready, before submitting the code, please make sure that
the license, code style, and document format are consistent with the project
specification.
-
-We provide commands to implement it, just run the following commands:
-
-```shell
-make update-codegen
-make update-license
-make update-gofmt
-make update-mdlint
-```
-
-or just run one command:
-
-```shell
-make update-all
-```
diff --git a/docs/en/latest/getting-started.md
b/docs/en/latest/getting-started.md
index 33bf6ed..c950c86 100644
--- a/docs/en/latest/getting-started.md
+++ b/docs/en/latest/getting-started.md
@@ -67,7 +67,7 @@ If you want to deploy apisix-ingress-controller on Prem, we
recommend you to use
## Get Involved to Contribute
First, your supports and cooperations to make this project better are
appreciated.
-But before you start, please read [How to Contribute](./contribute.md) and
[How to Develop](./development.md).
+But before you start, please read [How to Contribute](./contribute.md)
## Compatibility with Apache APISIX