Skip to content

Commit

Permalink
Merge pull request #288 from Tauffer-Consulting/feature/pr-and-issues…
Browse files Browse the repository at this point in the history
…-templates

Chore/Add PR and Issues template
  • Loading branch information
nathan-vm authored Apr 25, 2024
2 parents 9545dad + a4c9d84 commit 61c0443
Show file tree
Hide file tree
Showing 5 changed files with 282 additions and 0 deletions.
72 changes: 72 additions & 0 deletions .github/ISSUE_TEMPLATE/1-bug-report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
name: 🐛 Bug report
description: Create a report to help us improve
labels: [bug]
body:
- type: markdown
attributes:
value: |
Thank you for reporting an issue.
This issue tracker is for bugs and issues found within Domino Workflows.
If you require more general support please ask on discussions session. https://github.com/Tauffer-Consulting/domino/discussions/categories/q-a
Please fill in as much of the following form as you're able.
- type: input
attributes:
label: Version
description: Output of `domino --version`
validations:
required: true

- type: input
attributes:
label: Platform
description: |
UNIX: output of `uname -a`
Windows: output of `"$([Environment]::OSVersion.VersionString) $(('x86', 'x64')[[Environment]::Is64BitOperatingSystem])"` in PowerShell console
validations:
required: true

- type: input
attributes:
label: Docker version
description: Output of `docker --version` if applied.

- type: input
attributes:
label: Kubernetes version
description: Output of `kubectl version` if applied.

- type: textarea
attributes:
label: Describe the bug.
description: >
A clear and concise description of what the bug is.
validations:
required: true

- type: textarea
attributes:
label: What steps will reproduce the bug?
description: >
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error
- type: textarea
attributes:
label: What is the expected behavior? Why is that the expected behavior?
description: If applicable, add screenshots to help explain your problem.

- type: textarea
attributes:
label: What do you see instead?
description: If applicable, add screenshots to help explain your problem.

- type: textarea
attributes:
label: Additional information
description: Tell us anything else you think we should know.
24 changes: 24 additions & 0 deletions .github/ISSUE_TEMPLATE/2-feature-request.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
name: 🚀 Feature request
description: Suggest an idea for this project
labels: [proposal]
body:
- type: markdown
attributes:
value: |
Thank you for suggesting an idea to make Domino better.
Please fill in as much of the following form as you're able.
- type: textarea
attributes:
label: What is the problem this feature will solve?
validations:
required: true
- type: textarea
attributes:
label: What is the feature you are proposing to solve the problem?
validations:
required: true
- type: textarea
attributes:
label: What alternatives have you considered?
9 changes: 9 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
blank_issues_enabled: true
contact_links:
- name: 🤔 Questions and Help
url: https://github.com/Tauffer-Consulting/domino/discussions
about: Please ask and answer questions here.
- name: 📗 Open an issue regarding the Domino docs
url: https://github.com/Tauffer-Consulting/domino-docs/issues/new/choose
about: Let us know about any problematic API reference documents.

35 changes: 35 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
<!--
Before submitting a pull request, please read:
- the CONTRIBUTING guide at https://github.com/Tauffer-Consulting/domino/blob/HEAD/CONTRIBUTING.md
For code changes include tests for any bug fixes or new features. This tests can be a way to reproduce before and after your changes.
If you believe this PR should be highlighted in the Domino CHANGELOG please add the `## notable change` subtitle at your PR with a short description.
Developer's Certificate of Origin
By making a contribution to this project, I certify that:
(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or
(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or
(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.
(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
-->
142 changes: 142 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,142 @@
# Contributing to Domino

- [Contributing to Domino](#contributing-to-domino)
- [Issues](#issues)
- [Issues guidance links](#issues-guidance-links)
- [Submitting an issue](#submitting-an-issue)
- [Pull Requests](#pull-requests)
- [Step 1 - Fork](#step-1---fork)
- [Step 2 - Branch](#step-2---branch)
- [Step 3 - Setting up](#step-3---setting-up)
- [Step 4 - Code](#step-4---code)
- [Step 5 - Commit and Push](#step-5---commit-and-push)
- [Step 6 - Opening the pull request](#step-6---opening-the-pull-request)
- [Developer's Certificate of Origin](#developers-certificate-of-origin)

## Issues

### Issues guidance links

* [Asking for General Help](https://github.com/Tauffer-Consulting/domino/discussions)
* [Discussing non-technical topics](https://github.com/Tauffer-Consulting/domino/discussions)
* [Submitting a Bug Report](https://github.com/Tauffer-Consulting/domino/issues/new/choose)

### Submitting an issue

When opening a new issue in the Tauffer-Consulting/domino issue tracker, users will be presented with a choice of issue templates. If you believe that you have uncovered a bug in Domino, please fill out the Bug Report template to the best of your ability. Do not worry if you cannot answer every detail; just fill in what you can.

The two most important pieces of information we need in order to properly evaluate the report is a description of the behavior you are seeing and a simple test case we can use to recreate the problem on our own. If we cannot recreate the issue, it becomes impossible for us to fix.

Once an issue has been opened, it is common for there to be discussion around it. Some contributors may have differing opinions about the issue, including whether the behavior being seen is a bug or a feature. This discussion is part of the process and should be kept focused, helpful, and professional.

## Pull Requests

A pull request is a proposal to merge a set of changes from one branch into another. In a pull request, collaborators can review and discuss the proposed set of changes before they integrate the changes into the main codebase.

Before opening a pull request, be sure you read and agree with our [Developer's Certificate of Origin](#developers-certificate-of-origin).

### Step 1 - Fork

Fork the project [on GitHub](https://github.com/Tauffer-Consulting/domino) and clone your fork
locally.

```bash
git clone git@github.com:username/domino.git
cd domino
git remote add upstream https://github.com/Tauffer-Consulting/domino
git fetch upstream
```

### Step 2 - Branch

As a best practice to keep your development environment as organized as possible, create local branches to work within. These should also be created directly off of the upstream developer branch.

```bash
git checkout -b my-branch -t upstream/dev
```

### Step 3 - Setting up

Setting up your [local environment](https://docs.domino-workflows.io/quickstart) properly. Be sure to run the application **before** making any changes.

### Step 4 - Code

Pull requests in Domino typically involve changes to
one or more of a few places in the repository.

* Python code code contained in the `rest` directory make changes in domino-rest service, who provides the communication between airflow and Domino UI.
* TypeScript code contained in the `frontend` directory make changes in Domino UI.
* Python code code contained in the `src` directory make changes in domino-py lib.

### Step 5 - Commit and Push

A good commit message should describe what changed and why.

Examples:

* `feature(frontend): add button to create workspace`
* `fix(rest): fix roles authorization on create workspace`

If your patch fixes an open issue, you can add a reference to it at the end of the log(for that, add a blank line after the first part of commit). Use the `Fixes:` prefix and the issue reference. For other references use `Refs:`.

Examples:
* ```feature(frontend): add button to create workspace
Refs: #53
```

* ```fix(rest): fix roles authorization on create workspace
Fixes: #32
```

As a best practice, once you have committed your changes, it is a good idea
to use `git rebase` (not `git merge`) to synchronize your work with the main
repository.

```bash
git fetch upstream dev
git rebase dev
```

This ensures that your working branch has the latest changes from `Tauffer-Consulting/domino` development branch.

### Step 6 - Opening the pull request

From within GitHub, opening a new pull request will present you with a [pull request template](https://github.com/Tauffer-Consulting/domino/compare). Please try to do your best at filling out the details, but feel free to skip parts if you're not sure what to put.

Once opened, pull requests are usually reviewed within a few days.

To get feedback on your proposed change even though it is not ready to land, use the `Convert to draft` option in the GitHub UI.
Do not use the `wip` label as it might not prevent the PR
from landing before you are ready.

<a id="developers-certificate-of-origin"></a>

## Developer's Certificate of Origin

<pre>
By making a contribution to this project, I certify that:

(a) The contribution was created in whole or in part by me and I
have the right to submit it under the open source license
indicated in the file; or

(b) The contribution is based upon previous work that, to the best
of my knowledge, is covered under an appropriate open source
license and I have the right under that license to submit that
work with modifications, whether created in whole or in part
by me, under the same open source license (unless I am
permitted to submit under a different license), as indicated
in the file; or

(c) The contribution was provided directly to me by some other
person who certified (a), (b) or (c) and I have not modified
it.

(d) I understand and agree that this project and the contribution
are public and that a record of the contribution (including all
personal information I submit with it, including my sign-off) is
maintained indefinitely and may be redistributed consistent with
this project or the open source license(s) involved.
</pre>

0 comments on commit 61c0443

Please sign in to comment.