Skip to content

Commit

Permalink
Added pylint, docs, gitignore
Browse files Browse the repository at this point in the history
  • Loading branch information
mehulgoel873 committed Oct 10, 2024
1 parent 018c11d commit 632f6c9
Show file tree
Hide file tree
Showing 6 changed files with 192 additions and 0 deletions.
65 changes: 65 additions & 0 deletions .github/pull_request_template
Original file line number Diff line number Diff line change
@@ -0,0 +1,65 @@
<!--
For Work In Progress Pull Requests, please use the Draft PR feature,
see https://github.blog/2019-02-14-introducing-draft-pull-requests/ for further details.

For a timely review/response, please avoid force-pushing additional
commits if your PR already received reviews or comments.

Before submitting a Pull Request, please ensure you've done the following:
- 📖 Read the Forem Contributing Guide: https://developers.forem.com/contributing-guide/forem#create-a-pull-request
- 📖 Read the Forem Code of Conduct: https://github.com/forem/forem/blob/main/CODE_OF_CONDUCT.md
- 👷‍♀️ Create small PRs. In most cases this will be possible.
- ✅ Provide tests for your changes.
- 📝 Use descriptive commit messages.
- 📗 Update any related documentation and include any relevant screenshots.

NOTE: Pull Requests from forked repositories will need to be reviewed by
a Forem Team member before any CI builds will run. Once your PR is approved
with a `/ci` reply to the PR, it will be allowed to run subsequent builds without
manual approval.
-->

## What type of PR is this? (check all applicable)

- [ ] Refactor
- [ ] Feature
- [ ] Bug Fix
- [ ] Optimization
- [ ] Documentation Update

## Description
_Describe the CHANGES, the REASONING, and BENEFITS of this PR._

## Related Tickets & Documents

<!--
For pull requests that relate or close an issue, please include them
below. We like to follow [Github's guidance on linking issues to pull requests](https://docs.github.com/en/issues/tracking-your-work-with-issues/linking-a-pull-request-to-an-issue).

For example having the text: "closes #1234" would connect the current pull
request to issue 1234. And when we merge the pull request, Github will
automatically close the issue.
-->

- Related Issue #
- Closes #

## QA Instructions, Screenshots, Recordings

_Please replace this line with instructions on how to test your changes, a note
on the devices and browsers this has been tested on, as well as any relevant
images for UI changes._

## Added/updated tests?
_We encourage you to keep the code coverage percentage at 80% and above._

- [ ] Yes
- [ ] No, and this is why: _please replace this line with details on why tests
have not been included_
- [ ] I need help with writing tests

## [optional] Are there any post deployment tasks we need to perform?

## [optional] What gif best describes this PR or how it makes you feel?

![alt_text](gif_link)
10 changes: 10 additions & 0 deletions .github/workflows/.pylintrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
[MESSAGES CONTROL]

disable=all

enable=
bad-indentation,
trailing-whitespace,
wrong-import-order,
unused-variable,
unused-import
35 changes: 35 additions & 0 deletions .github/workflows/pylint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Pylint

on: [push]

jobs:
build:
runs-on: ubuntu-latest
strategy:
matrix:
python-version: ["3.8", "3.9", "3.10"]
steps:
- uses: actions/checkout@v3
- name: Set up Python ${{ matrix.python-version }}
uses: actions/setup-python@v3
with:
python-version: ${{ matrix.python-version }}
- name: Install dependencies
run: |
python -m pip install --upgrade pip
pip install pylint
- name: Getting changed Python files and Analysing the code with pylint
run: |
git fetch origin ${CI_MERGE_REQUEST_TARGET_BRANCH_NAME}
echo CI_COMMIT_SHA=${GITHUB_SHA}
tmp_files=$(git diff --name-only origin/main ${CI_COMMIT_SHA})
echo "Changed files are $tmp_files"
if [ -z "$(echo "$tmp_files" | grep "\.py")" ]; then exit 0; else echo "Python files are found"; fi
tmp_pfiles=$(echo "$tmp_files" | grep "\.py")
echo "Python files are $tmp_pfiles"
if [[ -z "$tmp_pfiles" ]]; then
echo "No files to lint"
else
echo "Running Linter!"
pylint --rc-file=/home/runner/work/RoboBuggy2/RoboBuggy2/.github/workflows/.pylintrc $tmp_pfiles
fi
18 changes: 18 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
.DS_Store
rb_ws/bags
.docker-compose.yml.un~
.python-requirements.txt.un~
docker-compose.yml~
python-requirements.txt~
*TEMP_DO_NOT_EDIT.txt
rb_ws/src/buggy/bags/2023-02-11-11-38-44.bag
rb_ws/src/buggy/bags/2023-02-11-12-00-49.bag
rb_ws/src/buggy/bags/2023-02-11-12-01-12.bag
rb_ws/src/buggy/bags/2023-02-12-11-39-27.bag
rb_ws/src/buggy/bags/2023-02-18-02-23-26.bag
rb_ws/src/buggy/bags/2023-02-19-11-21-56.bag
rb_ws/src/buggy/bags/2023-02-19-11-27-49.bag
rb_ws/src/buggy/bags/2023-02-19-11-38-48.bag
rb_ws/src/buggy/bags/*
rb_ws/src/buggy/launch/.main.launch.swp
*.bag
64 changes: 64 additions & 0 deletions docs/architecture/node_interactions.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
# ROS Node Interaction Document
## Scope
The purpose of this file is to descirbe the architecture of the RD25 stack from a ROS node level. This document should be updated whenever any ROS topics are added, removed or modified.

## Viewing On VSCode
Install `bierner.markdown-mermaid` from the extension marketplace to render the charts in VSCode markdown preview.

## List of topics
| Topic Name | Type | is custom message |
| ---------- | ----------------------- | ------------------ |
| ego/state | BuggyState | yes |
| other_buggy/state | BuggyState | yes |
| ego/trajectory | BuggyTrajectory | yes |
| ego/steering_cmd | [Float64](https://docs.ros.org/en/melodic/api/std_msgs/html/msg/Float64.html) | no |
| add new topic here | | |

## ROS Nodes Graph
Auton Loop [Sequence Diagram](https://en.wikipedia.org/wiki/Sequence_diagram#:~:text=A%20sequence%20diagram%20shows%2C%20as,order%20in%20which%20they%20occur.)

```mermaid
sequenceDiagram
A->>B: "some/topic"
```

means A publishes a message of `some/topic` and B receives the message.

```mermaid
sequenceDiagram
participant I as Ego State Estimator Node
participant P as Planner Node
participant C as Controller Node
participant S as Firmware Comms Node
box Grey HBK 3DM-GQ7 INS
participant I
end
box Purple Auton Core
participant P
participant C
end
box Blue Communication with Sensors, Actuators and Other Buggy
participant S
end
loop 100hz
I->>P: "ego/state"
I->>C: "ego/state"
end
loop 10hz
S->>P: "other_buggy/state"
end
loop 10hz
P->>C: "ego/trajectory"
end
loop 100hz
C->>S: "ego/steering_cmd"
end
```

Empty file.

0 comments on commit 632f6c9

Please sign in to comment.