From a997ed4c34fd74760a64a4dcdba3b2eaf5ae8db1 Mon Sep 17 00:00:00 2001 From: Nick Lotz <142037330+nicholaslotz@users.noreply.github.com> Date: Wed, 24 Jan 2024 13:57:35 -0600 Subject: [PATCH] Add contributor's guide (#67) * Add contributors guide (#1) * Update README.md * Update README.md * Create CONTRIBUTING.md * Update CONTRIBUTING.md * Update CONTRIBUTING.md * Update CONTRIBUTING.md * Update CONTRIBUTING.md * Update CONTRIBUTING.md * Fix tiny typo in README * Update CONTRIBUTING.md * Update CONTRIBUTING.md --- CONTRIBUTING.md | 33 +++++++++++++++++++++++++++++++++ README.md | 6 +++++- 2 files changed, 38 insertions(+), 1 deletion(-) create mode 100644 CONTRIBUTING.md diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md new file mode 100644 index 0000000..3a6663b --- /dev/null +++ b/CONTRIBUTING.md @@ -0,0 +1,33 @@ +# Contributing to the Harness CLI + +Thank you for considering contributing to the Harness CLI! Contributions fall into a couple of categories: + +### Bugs and feature requests + +To report a bug or request a feature enhancement, create a [GitHub issue](https://github.com/harness/harness-cli/issues). + +### Code contributions + +To propose a change to the codebase, open a [pull request](https://github.com/harness/harness-cli/pulls). A maintainer will be happy to triage and ask clarifying questions as needed. We also ask that you build and test proposed changes yourself, and include any relevant output and/or screenshots in the PR. + +## Development + +The Harness CLI is a Go module that interacts heavily with the [Harness API](https://apidocs.harness.io/). Most functionality requires authentication to a Harness account (SaaS or self-managed). You can sign up for a free account [here](https://app.harness.io/auth/#/signup?utm_source=harness_io&utm_medium=cta&utm_campaign=platform&utm_content=main_nav). + +### Build and test locally +1. Ensure you have Go version 1.19 or later [installed](https://go.dev/doc/install). +2. [Fork](https://github.com/harness/harness-cli/fork) this repository, then [clone](https://docs.github.com/en/repositories/creating-and-managing-repositories/cloning-a-repository) locally. +3. Navigate into the project directory. + ```shell + cd harness-cli/ + ``` +4. Make your desired changes to the source code. +5. From the `harness-cli/` directory, compile a new executable with your changes. + ```shell + go build -o harness + ``` +6. Run and test your changes. + ```shell + ./harness [global options] command [command options] [arguments...] + ``` +7. If contributing, push to your fork and [submit a pull request](https://github.com/harness/harness-cli/pulls). Include relevant output and/or screenshots from local tests. diff --git a/README.md b/README.md index 728c23f..ef06ad9 100644 --- a/README.md +++ b/README.md @@ -43,7 +43,11 @@ We ask all of our users and contributors to adhere to the [Harness Code of Condu ## Get Involved -We welcome your feedback and ideas. Here's how to reach us with feedback and questions: Join [Harness Community](https://join.slack.com/t/harnesscommunity/shared_invite/zt-1h2cy1up2-Bf3MQQvKTf~YkVcsnkJ5pw) Slack space. Refer to [Harness Community Communications Guide](https://github.com/harness-community/overview/blob/main/community_communication_guide.rst) to interact with the wider community users/contributors. +We welcome contributions. Please see the [Contributors Guide](CONTRIBUTING.md) for details on how to contribute. + +To reach us with feedback and questions: +- Join the [Harness Community](https://join.slack.com/t/harnesscommunity/shared_invite/zt-1h2cy1up2-Bf3MQQvKTf~YkVcsnkJ5pw) Slack space +- Refer to the [Harness Community Communications Guide](https://github.com/harness-community/overview/blob/main/community_communication_guide.md) to interact with the wider community users/contributors. ## License