You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/CONTRIBUTING.md
+19-19Lines changed: 19 additions & 19 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -29,11 +29,11 @@ The Argo Rollouts Gateway API plugin needs the main Argo Rollouts controller to
29
29
30
30
When the Argo Rollouts controller starts, it reads the ConfigMap named `argo-rollouts-config` (from the namespace in which controller is located) from the API server of the k8s cluster it is running on.
31
31
32
-
If this configmap is present, the Argol Rollouts controller validates its content and then loads the plugin that is defined there. It is important to understand that this process happens only at the beginning and **only once** during the controller startup. ,
32
+
If this configmap is present, the Argo Rollouts controller validates its content and then loads the plugin that is defined there. It is important to understand that this process happens only at the beginning and **only once** during the controller startup.
33
33
34
-
This means that if you change the `argo-rollouts-config` configmap or if you create it after the Argo Rollouts controller is already up you will need to restart the controller for the changes to take effect.
34
+
This means that if you change the `argo-rollouts-config` configmap or if you create it after the Argo Rollouts controller is already up, you will need to restart the controller for the changes to take effect.
35
35
36
-
The Argo Rollouts Controller uses this config map to understand where to load its plugins from. When Argo Rollouts learns their locations it downloads and executes them as separate RPC servers in the same pod. When the controller detects [specific Rollout events](https://argo-rollouts.readthedocs.io/en/stable/features/specification/), for example events corresponding to the `SetWeight` action, it makes specific remote procedure calls to the respective RPC server and waits for a response.
36
+
The Argo Rollouts Controller uses this config map to understand where to load its plugins from. When Argo Rollouts learns their locations, it downloads and executes them as separate RPC servers in the same pod. When the controller detects [specific Rollout events](https://argo-rollouts.readthedocs.io/en/stable/features/specification/), for example events corresponding to the `SetWeight` action, it makes specific remote procedure calls to the respective RPC server and waits for a response.
37
37
38
38
Here is a diagram illustrating the main aspects of architecture:
39
39
@@ -64,17 +64,17 @@ To start developing the plugin do the following
64
64
65
65
66
66
1. Start your local Kubernetes cluster
67
-
1. Create a ConfigMap named `argo-rollouts-config` in the namespace of Argo Rollouts controller. We will run it locally so its namespace will be `default`
67
+
1. Create a ConfigMap named `argo-rollouts-config` in the namespace of the Argo Rollouts controller. We will run it locally so its namespace will be `default`
68
68
2. Run `make local-build` to create a local build of the plugin binary. In the `argo-rollouts-config` manifest specify the path to this local build by using a file directive
69
69
```
70
70
file://<path to the local build>
71
71
```
72
-
3. Install required CRDs for Argo Rollouts deploy the controller. For that you can run
72
+
3. Install required CRDs for Argo Rollouts and deploy the controller. For that you can run
After that delete the incluster Argo Rollouts controller deployment as we will run controller locally (We only needed the CRDs).
77
+
After that, delete the in-cluster Argo Rollouts controller deployment as we will run controller locally (We only needed the CRDs).
78
78
4. Run locally the Argo Rollouts controller
79
79
```bash
80
80
cd~/go/src/github.com/argoproj/argo-rollouts
@@ -84,7 +84,7 @@ go run ./cmd/rollouts-controller/main.go
84
84
85
85
## Making releases
86
86
87
-
1. Write in **/RELEASE_NOTES.md**the description of the future release
87
+
1. Write the description of the future release in **/RELEASE_NOTES.md**
88
88
2. Create a tag in the `main` branch
89
89
```bash
90
90
git tag release-v[0-9]+.[0-9]+.[0-9]+
@@ -94,7 +94,7 @@ If you prefer to make pre-release run
94
94
git tag release-v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+
95
95
```
96
96
3. Push the tag to the remote repository
97
-
4. The pushed tag will trigger [a GitHub actions workflow](https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-gatewayapi/blob/main/.github/workflows/release.yaml) that will create a corresponding tag `v[0-9]+.[0-9]+.[0-9]+` or `v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+` and will then delete your tag. Therefore after pushing the tag to the remote repository you also need to delete it locally. When the workflow has finished its work you can run **git pull** and you will see new tag.
97
+
4. The pushed tag will trigger [a GitHub Actions workflow](https://github.com/argoproj-labs/rollouts-plugin-trafficrouter-gatewayapi/blob/main/.github/workflows/release.yaml) that will create a corresponding tag `v[0-9]+.[0-9]+.[0-9]+` or `v[0-9]+.[0-9]+.[0-9]+-rc[0-9]+` and will then delete your tag. Therefore, after pushing the tag to the remote repository, you also need to delete it locally. When the workflow has finished its work, you can run **git pull** and you will see the new tag.
98
98
99
99
## Running Unit Tests
100
100
@@ -113,34 +113,34 @@ make e2e-tests
113
113
114
114
This command will
115
115
116
-
1. Create local cluster **gatewayapi-plugin-e2e** using tools [kind](https://kind.sigs.k8s.io/) and [docker](https://www.docker.com/). You need to install them.
117
-
2.Setup cluster using instruments[helm](https://helm.sh/) and [kubectl](https://kubernetes.io/docs/reference/kubectl/). You need to install them.
118
-
3.Runs tests in **/test/e2e** folder.
119
-
4. Delete all resources from created cluster.
120
-
5. Delete created cluster.
116
+
1. Create a local cluster **gatewayapi-plugin-e2e** using tools [kind](https://kind.sigs.k8s.io/) and [docker](https://www.docker.com/). You need to install them.
117
+
2.Set up the cluster using tools[helm](https://helm.sh/) and [kubectl](https://kubernetes.io/docs/reference/kubectl/). You need to install them.
118
+
3.Run tests in the**/test/e2e** folder.
119
+
4. Delete all resources from the created cluster.
120
+
5. Delete the created cluster.
121
121
122
-
**Note:**It is used Traefik in e2e tests.
122
+
**Note:**Traefik is used in e2e tests.
123
123
124
-
If you want to leave working cluster with needing setup at the end you should run the following command
124
+
If you want to leave the working cluster with the needed setup at the end, you should run the following command
125
125
```
126
126
make CLUSTER_DELETE=false e2e-tests
127
127
```
128
128
129
-
After this command you can want to run again all tests. Although you can run again**make CLUSTER_DELETE=false e2e-tests** command, it is recommended to use this command
129
+
After this command, you may want to run all tests again. Although you can run the**make CLUSTER_DELETE=false e2e-tests** command again, it is recommended to use this command
130
130
```
131
131
make run-e2e-tests
132
132
```
133
-
as you have already had cluster setup.
133
+
as you already have the cluster set up.
134
134
135
-
If you want to run specific e2e tests then you can these commands
135
+
If you want to run specific e2e tests, then you can use these commands
136
136
```
137
137
make RUN=<reg-exp> e2e-tests
138
138
```
139
139
or
140
140
```
141
141
make RUN=<reg-exp> run-e2e-tests
142
142
```
143
-
reg-exp - the value you would set for the **-run** flag of **go test** command
143
+
reg-exp - the value you would set for the **-run** flag of the **go test** command
0 commit comments