Skip to content

Commit

Permalink
Merge pull request #9 from apl-ocean-engineering/5-implement-ci
Browse files Browse the repository at this point in the history
Implement Github actions for CI and stub pytest
  • Loading branch information
amarburg authored Aug 13, 2024
2 parents 274791f + 3eee266 commit 753421c
Show file tree
Hide file tree
Showing 11 changed files with 586 additions and 159 deletions.
62 changes: 62 additions & 0 deletions .github/ISSUE_TEMPLATE/bug-report.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,62 @@
name: Bug Report
description: Report a bug.
title: "[BUG]: <Please write a descriptive title after the '[BUG]: ' prefix>"
labels: [bug, needs triage]

body:
- type: markdown
attributes:
value: >
Thank you for taking the time to file a bug report! Before creating a new
issue, please make sure to take a few minutes to check the issue tracker
for existing issues about the bug.
- type: textarea
attributes:
label: "Issue Description"
description: >
Please provide a clear and concise description of what the bug is.
validations:
required: true

- type: textarea
attributes:
label: "Steps to Reproduce"
description: >
Please provide the steps that should be taken to reproduce the bug.
validations:
required: true

- type: textarea
attributes:
label: "Expected Behavior"
description: >
Please describe or show an example of the expected behavior.
validations:
required: true

- type: textarea
attributes:
label: "Error Message"
description: >
Please include the full error message, if any.
placeholder: >
<< Full traceback starting from `Traceback: ...` >>
render: bash

- type: textarea
attributes:
label: "Runtime Environment"
description: >
Please provide a description of the environment in which the error
occurred.
placeholder: >
Ubuntu 24.04
validations:
required: true

- type: textarea
attributes:
label: "Additional Context"
description: >
Please provide any additional context needed to understand the bug.
46 changes: 46 additions & 0 deletions .github/ISSUE_TEMPLATE/documentation.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: Documentation Improvement
description: Report an issue related to bag2video documentation.
title: "[DOC]: <Please write a descriptive title after the '[DOC]: ' prefix>"
labels: [documentation, needs triage]

body:
- type: markdown
attributes:
value: >
Thank you for taking the time to report a documentation issue! Before creating
a new issue, please make sure to take a few minutes to check the issue
tracker for existing issues similar to that being reported.
- type: dropdown
attributes:
label: Documentation Change Type
description: Please indicate what type of documentation issue you are reporting.
options:
- Adding new documentation to the bag2video documentation
- Changing existing bag2video driver documentation
- Removing existing bag2video driver documentation
validations:
required: true

- type: textarea
attributes:
label: Documentation Location
description: >
Please provide the location of the documentation that should be modified.
- type: textarea
attributes:
label: Documentation Problem
description: >
Please provide a description of how the documentation needs to be improved.
validations:
required: true

- type: textarea
attributes:
label: Suggested Change
description: >
Please provide a description of the proposed change and why the proposed change
improves the upon the existing documentation.
validations:
required: true
57 changes: 57 additions & 0 deletions .github/ISSUE_TEMPLATE/feature-request.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
name: Feature Request
description: Suggest a new idea for the project.
title: "[FEATURE]: <Please write a descriptive title after the '[FEATURE]: ' prefix>"
labels: [enhancement, needs triage]

body:
- type: markdown
attributes:
value: >
Thank you for taking the time to request a new feature! Before creating
a new issue, please make sure to take a few minutes to check the issue
tracker for existing issues similar to the proposed feature.
- type: dropdown
attributes:
label: Feature Type
description: Please indicate what type of feature request you would like to propose.
options:
- Adding new functionality to thbag2video
- Changing existing functionality in bag2video
- Removing existing functionality in bag2video
validations:
required: true

- type: textarea
attributes:
label: "Problem Description"
description: >
Please provide a clear and concise description of what problem
the feature would solve.
validations:
required: true

- type: textarea
attributes:
label: "Feature Description"
description: >
Please provide a description of the proposed feature, using pseudocode
if relevant.
validations:
required: true

- type: textarea
attributes:
label: "Alternative Solutions"
description: >
Please provide a description of any alternative solutions or features
that would satisfy the feature request.
validations:
required: true

- type: textarea
attributes:
label: "Additional Context"
description: >
Please provide any additional context (e.g., relevant GitHub issues,
code examples, or references) needed to understand the feature request.
15 changes: 15 additions & 0 deletions .github/PULL_REQUEST_TEMPLATE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
## Changes Made

Please provide a description of all changes made in this PR and why the changes
are needed.

## Associated Issues

Please provide a list of all open issues that this PR will close or contribute
toward closing.

- Fixes # (issue)

## Testing

Please provide a clear and concise description of the testing performed.
6 changes: 6 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
version: 2
updates:
- package-ecosystem: github-actions
directory: "/"
schedule:
interval: "weekly"
18 changes: 18 additions & 0 deletions .github/mergify.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
pull_request_rules:

- name: ask to resolve conflict
conditions:
- conflict
- author!=mergify[bot]
actions:
comment:
message: This pull request is in conflict. Could you fix it @{{author}}?

- name: development targets main branch
conditions:
- base!=master
- author!=mergify[bot]
actions:
comment:
message: |
Please target the `main` branch for development, we will backport the changes to {{base}} for you if approved and if they don't break API.
31 changes: 31 additions & 0 deletions .github/workflows/ci.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Pytest

on:
push:
branches:
- master
pull_request:
workflow_dispatch:

jobs:
test-implementation:
runs-on: ${{ matrix.os }}
strategy:
matrix:
python-version: ['3.10', '3.11']
os: [ubuntu-latest]

steps:
- uses: actions/checkout@v3
- name: Set up PDM
uses: pdm-project/setup-pdm@v3
with:
python-version: ${{ matrix.python-version }}

- name: Install dependencies
run: |
pdm sync -d -G test
- name: Run Tests
run: |
pdm run -v pytest tests
34 changes: 34 additions & 0 deletions .github/workflows/format.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,34 @@
name: Formatting (pre-commit)

on:
pull_request:
push:
branches:
- master
workflow_dispatch:

jobs:
pre-commit:
name: Format
runs-on: ubuntu-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4

- name: Setup Python
uses: actions/setup-python@v5
with:
python-version: "3.10"

- name: Install clang-format-14
run: sudo apt-get install clang-format-14

- name: Run pre-commit
uses: pre-commit/[email protected]
id: precommit

- name: Upload pre-commit changes
if: failure() && steps.precommit.outcome == 'failure'
uses: rhaschke/upload-git-patch-action@main
with:
name: pre-commit
Loading

0 comments on commit 753421c

Please sign in to comment.