diff --git a/Contributing/How-to-Contribute-Code.md b/Contributing/How-to-Contribute-Code.md new file mode 100644 index 0000000..53d1e57 --- /dev/null +++ b/Contributing/How-to-Contribute-Code.md @@ -0,0 +1,35 @@ +## Code Contributions + +We would like to thank you for your interest in contributing. You can find below how you can get started with knowing and contributing to keploy. The first few steps are always crucial but signify how you wish to involve with the community. + +1. Get to know keploy: + + - Read the [Contributing guidelines](https://github.com/keploy/template/blob/main/CONTRIBUTING.md) + - Read the [Code of Conduct](../CODE_OF_CONDUCT.md) + - Review the [Coding Guidelines]() and the [Contribution Criteria](../CONTRIBUTING.md). + - Review the bug-list, open issues, Project Board (if you want to code a new feature) or the [Plan](). To start a new Project follow these [guidelines](How-to-Start-a-New-Project.md).) + - Contact the Maintainers, if available in the README document, or the Repository Maintainer by submitting an [Issue]() with an @mention. + +2. [Join the keploy organisation]() + +3. [Fork the repository](https://help.github.com/en/articles/fork-a-repo) if you do not want to join keploy or want to start working before your request to join has been approved. + +4. Make your contribution + + - Make changes or additions to the code. + - Ensure that your code meets the [coding style guidelines](). + - Perform relevant tests, which includes unit-testing or end-to-end testing as found fit for the repository that you will be submitting the pull-request for. + - Follow the [documentation guidelines](). + +5. Submit your contribution + + - [Submit a Pull-Request](https://docs.github.com/en/github/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/creating-a-pull-request) to the Branch you want to contribute. + - Use a clear and descriptive title. + - Ensure maintainers can understand your proposed changes from the description. + - Ensure your Pull-Request passes all checks and has no conflicts. + - Click `Create Pull Request`. + - Include in the comments section the tests that you have completed and if they were a pass or fail. + +6. Get credit for your work + + - [Claim credit]() if you are not listed yet. \ No newline at end of file diff --git a/Contributing/How-to-Join-keploy.md b/Contributing/How-to-Join-keploy.md new file mode 100644 index 0000000..c00d60b --- /dev/null +++ b/Contributing/How-to-Join-keploy.md @@ -0,0 +1,12 @@ +## Join keploy + +Keploy is increasingly looking for new developers to join us and help improve our processes. We can collaborate on developing new projects, improve existing pipelines or maintaining the existing projects. Please follow these steps to join keploy: + +1. You can simply Join Keploy Slack Workspace from here and introduce yourself in genral channel [Slack Workspace](https://keploy.slack.com). + +There are other options as well! + +2. There's a Discord channel. +3. Github Discussions + +If you're looking to contribute to anything specific then please feel free to reach out to any of the collaborators of that project directly on Slack/LinkedIn etc. \ No newline at end of file diff --git a/Contributing/How-to-Report-Bugs.md b/Contributing/How-to-Report-Bugs.md new file mode 100644 index 0000000..7272993 --- /dev/null +++ b/Contributing/How-to-Report-Bugs.md @@ -0,0 +1,17 @@ +## Report a bug: + +Keploy is increasingly looking for new developers to join us and help improve our processes. We are also looking for constructive bug triage process is carried out to help us improve our software, workflows and processes. Please have a look at the below steps to get started with reporting a new bug as a user: + +1. Navigate to the main page of the repository where you found the bug. +2. Under the repository name, click **Issues**. +3. Click the green **New Issue** button +4. Click the green button **Get Started** in the Bug Report box. +5. Use a clear and descriptive title. +6. Follow the template and provide as much information as possible +7. Attach files, screenshots and/or animated GIFs +8. Click the green button **Submit New Issue** at the bottom right corner + +We would also like the users to review the following if they are not familiar with GitHub and standard bug-reporting processes: + +- [Opening an issue from code](https://help.github.com/en/articles/opening-an-issue-from-code/) +- [Creating a permanent link to a code snippet](https://help.github.com/en/articles/creating-a-permanent-link-to-a-code-snippet/) \ No newline at end of file diff --git a/Contributing/How-to-Start-a-New-Project.md b/Contributing/How-to-Start-a-New-Project.md new file mode 100644 index 0000000..4e5a0e7 --- /dev/null +++ b/Contributing/How-to-Start-a-New-Project.md @@ -0,0 +1,28 @@ +## Start a new Project + +Keploy is increasingly looking for new developers to join us and help improve our processes. We are also looking to collaborate on the development of new projects that serve our plan and mission. Please have a look at the following steps to start a new project: + +1. Avoid Duplication: + + - Before starting a new project, review whether a project based on your idea already exists: + - All projects are listed in the **Project** tab of the keploy root directory. + - Please also review the existing repositories, as not all may be listed under the "Project" tab. + - If your project idea already exists, please join forces with those already active. Else (if your project does not exist) proceed with the next step. + +2. Build on what already exists: + + - If you can build on code that is already available, coordinate your project with the maintainers of the relevant repository by [requesting a new feature](). + - If there is no existing code base to start from, [create a repository](How-To-Create-a-Repository.md) even if you are not part of the keploy organisation (yet). + +3. Create a project board to track and update your work: + + - If you are a part of the keploy organisation use the project list under `.github`. + - If you are not (yet) part of the keploy organisation, use the projects list in your repository. You can notify the wider keploy community by opening an issue under `.github` informing that you have started a new project. + +4. Invite your team: + + - [Invite your team](https://help.github.com/en/articles/adding-organization-members-to-a-team) to join the project even [if they are not part of the keploy organisation](https://help.github.com/en/articles/adding-outside-collaborators-to-repositories-in-your-organization) + - [Nest your team](https://help.github.com/en/articles/moving-a-team-in-your-organizations-hierarchy) into the right parent team, which means the repository team for new projects or the keploy team for new repositories + - Assign roles for Developers, Engineers, Editors, Maintainers (for code). Try to have at least 2 persons for each role to avoid overloading your team. + +5. Follow the [regular project implementation cycle]() \ No newline at end of file diff --git a/docs/DeveloperWorkflow/automated_checks.md b/docs/DeveloperWorkflow/automated_checks.md new file mode 100644 index 0000000..b51c480 --- /dev/null +++ b/docs/DeveloperWorkflow/automated_checks.md @@ -0,0 +1,38 @@ +# DeveloperWorkflow: + +Automated Checks for pull requests +================================== + +In order to maintain the code quality and coverage of our repositories, +keploy deploys a series of tools. These tools include our +Continuous Integration Setup that runs a complete test suite, Automated +Code quality checks as well as Coverage tracking tools. + +This section focuses on how these automated tests are set up and how they can +be configured on our GitHub repositories. Currently only the +following checks are available in our `keploy` +repository. + +Continuous Integration +---------------------- + +Keploy uses `GitHub Actions` for Continuous Integration. GitHub +Actions creates an environment based on the Operating System of your +choice and runs our test suite. This Continuous +Integration script is triggered by every pull request and only passes +when all the tests run successfully. + +

+ + +

+ +- GitHub pull request Checks + +- In the case where tests fail, we can debug the problem from going + through the console output as displayed here. + +

+ + +

diff --git a/docs/images/all checks.png b/docs/images/all checks.png new file mode 100644 index 0000000..74f5438 Binary files /dev/null and b/docs/images/all checks.png differ diff --git a/docs/images/check fails.png b/docs/images/check fails.png new file mode 100644 index 0000000..c38ac3b Binary files /dev/null and b/docs/images/check fails.png differ