CONTRIBUTING.md 4.88 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68
# Contributing to Backbone Message Formats
_Last updated: 01 Dec 2022_
<br/>

Guidelines for our Squad of Adaptive Robots (SoAR) project partners to collaborate in this workspace specifically for message formats that interact with each partner's software components and the Communications Backbone.
<br/><br/>

## Where To Find A Brief on Message Formats
Please refer to the [**README.md**](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/blob/master/README.md) file that summarises the `message types` and `message flows`.
> _Info: [Quick Links](#quick-links) might be helpful too!_

<br/>

## Commenting
A great way to collaborate and refine the message formats is by commenting on the schema definitions/examples (within the code itself) or on an `issue` card.
### **Commenting on Code**
Go to [`Merge Requests`](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/merge_requests), add your comment and click `Add comment now`.  Be sure to tag partners who should response. Use `@` followed by the partner's username or tag a partner's organisation by adding a label.

P.S. The initial working branch is [`create-initial-message-formats`](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/merge_requests/2/diffs). 

 **But  _HOW_  Do I Add A Comment?**
>  A.   To **comment directly on the** [**`master` branch**](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/tree/master) directly, hover over the left column that shows the line numbers, and click on the **paperclip icon**. This copies the specific line of code. You can then proceed to pasting this link into a new issue as per [Raising New Ideas or Questions](#raising-new-ideas-or-questions).

> B.    To **comment on a Merge Request**, hover over the left column that shows the line numbers, and click on the _paperclip_ or _comment bubble_ icon. This copies the line of code. You can then proceed to pasting this link into a new issue as per [Raising New Ideas or Questions](#raising-new-ideas-or-questions).

<br/>

### **Commenting on Issue Cards**
Go to the [issue](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/issues), scroll to the bottom of the page and add your comment. Once done, click on `Comment`. 
<br/><br/>


## Raising New Ideas or Questions
If you have an idea or a question for our collaborators, it's simple! [`Create a new issue`](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/issues/new?issue), assign a person to respond/take action under `Assignee`, and add a partner under `Labels` .
<br/><br/>


## Labels Summary
To add/edit labels, go to [manage labels](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/labels).
| Category | Labels Available                                   | Description                                                             |
| -------- | -------------------------------------------------- | ----------------------------------------------------------------------- |
| Partner  | Planet Ocean, Hydrosurv, NOC, RHU                  | Associated partner                                                      |
| Vehicles | ah1             | Associated vehicle                                                      |
| Status   | In Sprint Backlog, In Progress, In Review, BLOCKED | Status of resolving issue                                               |
| Weight   | 0, 1, 2, 3, 5, 8                                   | Complexity of issue (0 - quick task and 8 - full 2 weeks worth of work) |
| -         | bug, feature                               | Type of issue i.e. new feature, bug                                                           |
<br/>


## Getting Started
> Notes for this section is in PROGRESS
1. Clone this gitlab repository:
```
git clone https://git.noc.ac.uk/communications-backbone-system/backbone-message-format.git
```
2. Install the dependencies from `requirements.txt`.

<br/>

## Quick Links
1. [Schema Fields Definitions](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/tree/7-message-formats-initial/formats)
2. [JSON Schema Examples](https://git.noc.ac.uk/communications-backbone-system/backbone-message-format/-/tree/7-message-formats-initial/examples)
3. To view schema docs via Swagger UI, run the command below and go to `http://127.0.0.1:5000/soardocs`
    ```
    python3 docs/generate_swagger.py
    ```
    *Disclaimer: These are *not* endpoints. Purely for schema representation purposes.
    > TEMPORARY: Pregenerated Swagger docs can be [viewed here](https://planetocean15.sharepoint.com/sites/IUKSoAR/Shared%20Documents/Forms/AllItems.aspx?id=%2Fsites%2FIUKSoAR%2FShared%20Documents%2FTechnical%2FTechnical%20meetings%2Finitial%2Dswagger%2Ddocs%2Ddraft%2Epdf&viewid=1d649f5f%2Dd30e%2D482f%2Dbd77%2D9316a0023bf9&parent=%2Fsites%2FIUKSoAR%2FShared%20Documents%2FTechnical%2FTechnical%20meetings).