Skip to content

Commit

Permalink
chore: Update Code of Conduct and Contributing guide (cloudquery#1993)
Browse files Browse the repository at this point in the history

#### Summary

Fixes a bunch of markdown structure issues in our guides

---
  • Loading branch information
erezrokah authored Sep 22, 2022
1 parent 4fa40da commit 4bbe32d
Show file tree
Hide file tree
Showing 3 changed files with 36 additions and 101 deletions.
5 changes: 3 additions & 2 deletions CODE_OF_CONDUCT.md
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
## Community Code of Conduct
cloudquery adopts the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).
# Community Code of Conduct

CloudQuery adopts the [CNCF Code of Conduct](https://github.com/cncf/foundation/blob/master/code-of-conduct.md).
88 changes: 33 additions & 55 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -5,92 +5,70 @@

The following is a set of guidelines for contributing to this repository.


#### Table of Contents

[Code of Conduct](#code-of-conduct)

[I don't want to read this whole thing, I just have a question](#i-dont-want-to-read-this-whole-thing-i-just-have-a-question)

[What should I know before I get started?](#what-to-know-before-getting-started)
* [Core](#cq-cli-directoryhttpsgithubcomcloudquerycloudquerytreemaincli)
* [SDK](#cq-provider-sdk-repohttpsgithubcomcloudquerycq-provider-sdk)
* [Plugins](#cq-plugins)

[How Can I Contribute?](#how-can-i-contribute)
* [Reporting Bugs and Suggesting Enhancements](#reporting-bugs-and-suggesting-enhancements)
* [Your First Code Contribution](#your-first-code-contribution)

## Code of Conduct

This project and everyone participating in it is governed by the [CloudQuery Code of Conduct](https://github.com/cloudquery/cloudquery/blob/main/CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. To report inappropriate behavior in violation of the code, please start by reaching out to us on our [Discord channel](https://cloudquery.io/discord).

This project and everyone participating in it is governed by the [CloudQuery Code of Conduct](./CODE_OF_CONDUCT.md). By participating, you are expected to uphold this code. To report inappropriate behavior in violation of the code, please start by reaching out to us on our [Discord channel](https://cloudquery.io/discord).

## I don't want to read this whole thing, I just have a question

> **Note:** Please don't file an issue to ask a question. You'll get faster results by reaching out to the community on our [Discord channel](https://cloudquery.io/discord)

## What To Know Before Getting Started

### CloudQuery Architecture

CloudQuery has a pluggable architecture and is using the go-plugin to load, run, and communicate between providers via gRPC. To develop a new provider for CloudQuery, you don’t need to understand the inner workings of go-plugin as those are abstracted away via the [provider-sdk](#cq-provider-sdk-repo).

![architecture overview](https://www.cloudquery.io/images/cloudquery-architecture.png)
CloudQuery has a pluggable architecture and is using [gRPC](https://grpc.io/) to communicate between source plugins, CLI and destination plugins. To develop a new plugin for CloudQuery, you don’t need to understand the inner workings of gRPC as those are abstracted away via the [plugin-sdk](#cloudquery-plugin-sdk-repository).

### Breakdown of Responsibilities and Repositories

#### CQ CLI [Directory](https://github.com/cloudquery/cloudquery/tree/main/cli):
- Main entry point and CLI for the user
- Reading CloudQuery configuration
- Downloading, verifying, and running plugins

#### CQ Provider SDK [Repository](https://github.com/cloudquery/cq-provider-sdk):
- Interacting with CQ CLI for initialization and configuration
- Helper functions for defining table schemas
- Methods for testing resources
- Framework for running and building a plugin locally
#### CloudQuery CLI [Directory](./cli)

#### CQ Plugins
- [Officially-supported Plugins](https://github.com/cloudquery/cloudquery/tree/main/plugins) and [Community plugins](https://github.com/search?p=1&q=cq-provider-&type=Repositories)
- Previously known as Providers
- Executed by CQ CLI via gRPC
- Interaction with remote data sources:
- Initialization of clients
- Authentication
- Fetching of configuration information
- More information about developing your own plugin can be found [here](https://docs.cloudquery.io/docs/developers/developing-new-provider)
* Main entry point and CLI for the user
* Reading CloudQuery configuration
* Downloading, verifying, and running plugins

#### CloudQuery Plugin SDK [Repository](https://github.com/cloudquery/plugin-sdk)

## How Can I Contribute?
* Interacting with CloudQuery CLI for initialization and configuration
* Helper functions for defining table schemas
* Methods for testing the resource
* Framework for running and building a plugin locally

### Reporting Bugs and Suggesting Enhancements
#### CloudQuery Plugins

See [issue_reporting.md](issue_reporting.md) for more details on how to do this.
* [Officially-supported Plugins](./plugins) and [Community plugins](https://github.com/search?p=1&q=cq-plugin-&type=Repositories)
* Previously known as Providers
* Executed by CloudQuery CLI via gRPC
* Interaction with remote data sources:
* Initialization of clients
* Authentication
* Fetching of configuration information
* More information about developing your own plugin can be found [here](https://cloudquery.io/docs/developers/developing-new-provider)

### Your First Code Contribution
## How Can I Contribute?

Unsure where to begin contributing to CloudQuery? You can start by looking through these `beginner` and `help-wanted` issues:
### Reporting Bugs and Requesting Feature Requests

* [Beginner issues][beginner] - issues which should only require a few lines of code, and a test or two
* [Help wanted issues][help-wanted] - issues which should be a bit more involved than `beginner` issues
Follow our [bug reporting template](https://github.com/cloudquery/cloudquery/issues/new?assignees=&labels=bug&template=bug_report.md) or [feature request template](https://github.com/cloudquery/cloudquery/issues/new?assignees=&labels=enhancement&template=feature_request.md) to ensure you provide all the necessary information for us to either reproduce and fix the bug or implement the feature.

### Your First Code Contribution

If you don't see any issues that you think you can help with reach out to the community on Discord. We would be happy to work with you!
Unsure where to begin contributing to CloudQuery? You can start by looking through these [`good first issue` issues](https://github.com/cloudquery/cloudquery/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22).
If you don't see any issues that you think you can help with reach out to the community on Discord and we would be happy to work with you!

#### Local Development

CloudQuery has the ability to be run locally with a corresponding local Postgres database. To get it up and running follow the following instructions:
* [Development Environment](contributing/development_environment.md)

* [Development Environment](./contributing/development_environment.md)
* [Connecting to a database](https://docs.cloudquery.io/docs/getting-started#spawn-or-connect-to-a-database)
* [Debugging a Provider](https://docs.cloudquery.io/docs/developers/debugging)
* [Developing a New Provider](https://docs.cloudquery.io/docs/developers/developing-new-provider)
* [Debugging a plugin](https://docs.cloudquery.io/docs/developers/debugging)
* [Developing a new plugin](https://docs.cloudquery.io/docs/developers/developing-new-provider)

#### Further guides

* [Creating a new plugin](contributing/creating_a_new_plugin.md)
* [Adding a new resource](contributing/adding_a_new_resource.md)
* [Creating a new plugin](./contributing/creating_a_new_plugin.md)
* [Adding a new resource](./contributing/adding_a_new_resource.md)

#### Commit Messages

Expand All @@ -104,4 +82,4 @@ We make use of the [Conventional Commits specification](https://www.conventional
| `refactor: <Message>` | `<String>` | patch release|
| `test: <Message>` | `<String>` | patch release|

Additional context can be provided in parentheses, e.g. `fix(docs): Fix typo`. Breaking changes should be suffixed with `!`, e.g. `feat!: Drop support for X`. This will always result in a minor release.
Additional context can be provided in parentheses, e.g. `fix(docs): Fix typo`. Breaking changes should be suffixed with `!`, e.g. `feat!: Drop support for X`. This will always result in a minor release.
44 changes: 0 additions & 44 deletions issue_reporting.md

This file was deleted.

0 comments on commit 4bbe32d

Please sign in to comment.