Skip to content

Commit 07486b6

Browse files
[ONPREM-2094] Add contribution guidelines (#42)
* Add table of contents to README * Add contribution guidelines
1 parent a479041 commit 07486b6

File tree

4 files changed

+77
-7
lines changed

4 files changed

+77
-7
lines changed

.circleci/config.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,7 @@ jobs:
7373
name: Dashboards failed linting or validation
7474
command: |
7575
echo "Please refer to the documentation here:"
76-
echo "https://github.com/circleci-public/circleci-server-monitoring-reference?tab=readme-ov-file#8-modifying-or-adding-grafana-dashboards"
76+
echo "https://github.com/circleci-public/circleci-server-monitoring-reference?tab=readme-ov-file#modifying-or-adding-grafana-dashboards"
7777
exit 1
7878
when: on_fail
7979
- notify_failing_main

CONTRIBUTING.md

Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
# Contributing Guidelines
2+
3+
Contributions are always welcome; however, please read this document in its entirety before submitting a pull request or reporting a bug.
4+
5+
## Table of Contents
6+
7+
- [Reporting a bug](#reporting-a-bug)
8+
- [Security disclosure](#security-disclosure)
9+
- [Creating an issue](#creating-an-issue)
10+
- [Opening a pull request](#opening-a-pull-request)
11+
- [License](#license)
12+
13+
---
14+
15+
## Reporting a Bug
16+
17+
Think you've found a bug? Let us know by following the instructions in our [bug reporting guide](https://support.circleci.com/hc/en-us/articles/360054033532-How-can-I-report-a-bug).
18+
19+
### Security Disclosure
20+
21+
Security is a top priority for us. If you have encountered a security issue, please responsibly disclose it by following our [security disclosure](https://circleci.com/docs/2.0/security/) document.
22+
23+
## Creating an Issue
24+
25+
Your issue must follow these guidelines for it to be considered:
26+
27+
### Before Submitting
28+
29+
- Check you’re on the latest version, we may have already fixed your bug!
30+
- [Search our issue tracker](https://github.com/circleci-public/circleci-server-monitoring-reference/issues/search&type=issues) for your problem, someone may have already reported it.
31+
32+
## Opening a Pull Request
33+
34+
To contribute, [fork](https://help.github.com/articles/fork-a-repo/) `circleci-server-monitoring-reference`, commit your changes, and [open a pull request](https://help.github.com/articles/using-pull-requests/).
35+
36+
Your request will be reviewed as soon as possible. You may be asked to make changes to your submission during the review process.
37+
38+
### Before Submitting
39+
40+
- Test your change thoroughly. Deploy it to your own CircleCI server environment to ensure it works as expected. You can find instructions on how to deploy in the [Installing the Monitoring Stack](https://github.com/CircleCI-Public/circleci-server-monitoring-reference?tab=readme-ov-file#installing-the-monitoring-stack) section of our README.
41+
- Utilize the `./do` script to assist in your testing workflow. Here are some examples of how you can use it:
42+
```bash
43+
# Run the Helm unit tests
44+
./do unit-tests
45+
46+
# Lint the dashboards
47+
./do lint-dashboards
48+
49+
# See a full list of available options
50+
./do help
51+
```
52+
- If updating or modifying a Grafana dashboard, ensure to follow the instructions in the [README](https://github.com/circleci-public/circleci-server-monitoring-reference?tab=readme-ov-file#modifying-or-adding-grafana-dashboards).
53+
54+
## License
55+
56+
CircleCI's `circleci-server-monitoring-reference` is released under the [Apache 2.0 License](./LICENSE).

README.md

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ A reference for tools, configurations, and documentation used to monitor CircleC
55

66
This repository is currently under active development and is not yet a supported resource. Please refer to it at your own discretion until further notice.
77

8+
## Table of Contents
9+
10+
- [Installing the Monitoring Stack](#installing-the-monitoring-stack)
11+
- [Modifying or Adding Grafana Dashboards](#modifying-or-adding-grafana-dashboards)
12+
- [Helm Values](#values)
13+
- [Helm Releases](#releases)
14+
815
# server-monitoring-stack
916

1017
A reference Helm chart for setting up a monitoring stack for CircleCI server
@@ -122,7 +129,7 @@ grafana:
122129
```
123130
> **_NOTE:_** Use a custom storage class with a 'Retain' policy to allow for data retention even after uninstalling the chart.
124131
125-
### 8. Modifying or Adding Grafana Dashboards
132+
## Modifying or Adding Grafana Dashboards
126133
127134
The default dashboards are located in the `dashboards` directory of the reference chart. To add new dashboards or modify existing ones, follow these steps.
128135

@@ -137,7 +144,7 @@ Dashboards are provisioned directly from CRDs, which means any manual edits will
137144
3. **Export as JSON**:
138145
- Select **Export** in the upper right corner and then **Export as JSON**.
139146
- **Ensure that `Export the dashboard to use in another instance` is toggled on.**
140-
4. **Run Validation Command**:
147+
4. **Update the JSON File**:
141148
- Download the file and replace the `./dashboards/server-slis.json` file with the updated copy.
142149
- Run the following command to automatically validate the JSON and apply necessary updates:
143150
```bash
@@ -205,6 +212,6 @@ Dashboards are provisioned directly from CRDs, which means any manual edits will
205212
| prometheusOperator.prometheusConfigReloader.image.tag | string | `"v0.80.1"` | Tag for the Prometheus Config Reloader image. |
206213
| prometheusOperator.replicas | int | `1` | Number of Prometheus Operator replicas to deploy. |
207214

208-
## Releasing
215+
## Releases
209216

210217
Releases are managed by the CI/CD pipeline on the main branch, with an approval job gate called `approve-deploy-chart`. Before releasing, increment the Helm chart version in `Chart.yaml` and regenerate the documentation using `./do helm-docs`. Once approved, the release will be available in the [package repository](https://packagecloud.io/circleci/server-monitoring-stack).

README.md.gotmpl

Lines changed: 10 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,13 @@ A reference for tools, configurations, and documentation used to monitor CircleC
55

66
This repository is currently under active development and is not yet a supported resource. Please refer to it at your own discretion until further notice.
77

8+
## Table of Contents
9+
10+
- [Installing the Monitoring Stack](#installing-the-monitoring-stack)
11+
- [Modifying or Adding Grafana Dashboards](#modifying-or-adding-grafana-dashboards)
12+
- [Helm Values](#values)
13+
- [Helm Releases](#releases)
14+
815
{{ template "chart.header" . }}
916
{{ template "chart.description" . }}
1017

@@ -116,7 +123,7 @@ grafana:
116123
```
117124
> **_NOTE:_** Use a custom storage class with a 'Retain' policy to allow for data retention even after uninstalling the chart.
118125

119-
### 8. Modifying or Adding Grafana Dashboards
126+
## Modifying or Adding Grafana Dashboards
120127

121128
The default dashboards are located in the `dashboards` directory of the reference chart. To add new dashboards or modify existing ones, follow these steps.
122129

@@ -131,7 +138,7 @@ Dashboards are provisioned directly from CRDs, which means any manual edits will
131138
3. **Export as JSON**:
132139
- Select **Export** in the upper right corner and then **Export as JSON**.
133140
- **Ensure that `Export the dashboard to use in another instance` is toggled on.**
134-
4. **Run Validation Command**:
141+
4. **Update the JSON File**:
135142
- Download the file and replace the `./dashboards/server-slis.json` file with the updated copy.
136143
- Run the following command to automatically validate the JSON and apply necessary updates:
137144
```bash
@@ -143,6 +150,6 @@ Dashboards are provisioned directly from CRDs, which means any manual edits will
143150

144151
{{ template "chart.valuesSection" . }}
145152

146-
## Releasing
153+
## Releases
147154

148155
Releases are managed by the CI/CD pipeline on the main branch, with an approval job gate called `approve-deploy-chart`. Before releasing, increment the Helm chart version in `Chart.yaml` and regenerate the documentation using `./do helm-docs`. Once approved, the release will be available in the [package repository](https://packagecloud.io/circleci/server-monitoring-stack).

0 commit comments

Comments
 (0)