Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions .commitlintrc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
---
extends:
- "@commitlint/config-conventional"
2 changes: 1 addition & 1 deletion .devcontainer/devcontainer.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,4 +12,4 @@
}
},
"remoteUser": "vscode"
}
}
14 changes: 7 additions & 7 deletions .github/ISSUE_TEMPLATE/dev_story_template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
- type: markdown
attributes:
value: |
Describe the use-case to be implemented from the user-persona point of view.
There can be multiple workflows which achieve the use-case
Describe the use-case to be implemented from the user-persona point of view.

Check warning on line 11 in .github/ISSUE_TEMPLATE/dev_story_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

11:81 [line-length] line too long (84 > 80 characters)
There can be multiple workflows which achieve the use-case
- type: textarea
id: description
attributes:
Expand Down Expand Up @@ -61,11 +61,11 @@
label: "Definition of Done"
description: "Describe the Definition of Done, which might be a use-case demonstrated to the TWG"
placeholder: |
* The required technical documentation should be updated
* In case of any prototyping activity, the evaluation, design and outcomes need to be documented
* API updates need to be updated in swagger (or other) files
* Test automation should be done to demonstrate the use-case
* Code and documentation should be pulled into the release branch and the pull-request approved by the TWG
* The required technical documentation should be updated
* In case of any prototyping activity, the evaluation, design and outcomes need to be documented
* API updates need to be updated in swagger (or other) files
* Test automation should be done to demonstrate the use-case
* Code and documentation should be pulled into the release branch and the pull-request approved by the TWG
validations:
required: true
- type: input
Expand Down
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/dev_task_template.yml
Original file line number Diff line number Diff line change
Expand Up @@ -8,8 +8,8 @@
- type: markdown
attributes:
value: |
Describe the Task. This may be to do a design, prototype, test or documentation.
Ideally a task should be something that can be handled by an individual within a 5-6 story-points in size.
Describe the Task. This may be to do a design, prototype, test or documentation.

Check warning on line 11 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

11:81 [line-length] line too long (88 > 80 characters)
Ideally a task should be something that can be handled by an individual within a 5-6 story-points in size.

Check warning on line 12 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

12:81 [line-length] line too long (114 > 80 characters)
- type: textarea
id: description
attributes:
Expand All @@ -30,7 +30,7 @@
id: type
attributes:
label: Type of Story
description: "Is this an Story for feature implementation / prototyping / learning ?"

Check warning on line 33 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

33:81 [line-length] line too long (91 > 80 characters)
options:
- Implementation
- Prototyping
Expand All @@ -42,7 +42,7 @@
id: related
attributes:
label: "Related Tasks"
description: "Which other tasks does this issue relate to, other than the parent Story"

Check warning on line 45 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

45:81 [line-length] line too long (93 > 80 characters)
placeholder: "GitHub issue #1234 or None"
validations:
required: true
Expand All @@ -51,10 +51,10 @@
value: |
Describe the "Definition of Done", which can be presented or reviewed
* The required technical documentation should be updated
* In case of any prototyping activity, the evaluation, design and outcomes need to be documented

Check warning on line 54 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

54:81 [line-length] line too long (104 > 80 characters)
* API updates need to be updated in swagger (or other) files
* Test automation should be done to demonstrate the use-case
* Code and documentation should be pulled into the release branch and the pull-request approved by the TWG

Check warning on line 57 in .github/ISSUE_TEMPLATE/dev_task_template.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

57:81 [line-length] line too long (114 > 80 characters)
- type: dropdown
id: status
attributes:
Expand Down
6 changes: 3 additions & 3 deletions .github/ISSUE_TEMPLATE/feedback.yml
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
name: "Feedback"
description: "An open feedback form for the Margo Code First Sandbox"
title: "[FB: ]"
labels: ["DRAFT","Feedback"]
labels: ["DRAFT", "Feedback"]
assignees:
- "nilanjan-samajdar"
body:
Expand All @@ -18,13 +18,13 @@
- type: markdown
attributes:
value: |
Please provide full details regarding your feedback towards the Code First sandbox below.
If referring to specific files in documentation or code, please provide file-name and line-number.
Please provide full details regarding your feedback towards the Code First sandbox below.

Check warning on line 21 in .github/ISSUE_TEMPLATE/feedback.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

21:81 [line-length] line too long (97 > 80 characters)
If referring to specific files in documentation or code, please provide file-name and line-number.

Check warning on line 22 in .github/ISSUE_TEMPLATE/feedback.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

22:81 [line-length] line too long (106 > 80 characters)
- type: textarea
id: feedback
attributes:
label: "Feedback"
description: "Feedback"
placeholder: "I sense a disturbance in the logic—care to bring balance with your review?"

Check warning on line 28 in .github/ISSUE_TEMPLATE/feedback.yml

View workflow job for this annotation

GitHub Actions / lint-yaml

28:81 [line-length] line too long (95 > 80 characters)
validations:
required: true
25 changes: 25 additions & 0 deletions .github/workflows/lint-commit.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
name: Lint Commit Messages
on:
push:
branches:
- main
- develop
pull_request:

permissions:
contents: read

jobs:
lint-commit:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
with:
fetch-depth: 0 # Required to fetch all commits in the PR history
- name: Install commitlint
run: npm install -D @commitlint/cli @commitlint/config-conventional
- name: Validate PR commits
# Lints from the PR base branch to the current head
run: |
npx commitlint --from ${{ github.event.pull_request.base.sha }} \
--to ${{ github.event.pull_request.head.sha }} --verbose
23 changes: 0 additions & 23 deletions .github/workflows/lint.yml

This file was deleted.

74 changes: 74 additions & 0 deletions .github/workflows/quality-gates.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,74 @@
name: Quality Gates

on:
push:
branches:
- main
- develop
pull_request:

permissions:
contents: read
pull-requests: read

jobs:
lint-yaml:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: ibiqlik/action-yamllint@v2
with:
file_or_dir: .github docker-compose helmchart poc
format: github
config_data: |
extends: relaxed
rules:
line-length:
max: 80
level: warning
indentation: disable


lint-go:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
with:
go-version: 1.24.4
- uses: golangci/golangci-lint-action@v9
with:
version: v2.11

lint-container-manifests:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- name: Install Helm
uses: azure/setup-helm@v3
- name: Lint Helm charts
run: helm lint ./helmchart
- name: Validate docker-compose files
run: |
docker compose -f docker-compose/docker-compose.yaml config > /dev/null

test-go:
runs-on: ubuntu-24.04
steps:
- uses: actions/checkout@v6
- uses: actions/setup-go@v6
with:
go-version: 1.24.4
- name: Run tests with coverage
run: go test -v -coverprofile=coverage.out ./...
- name: Check coverage threshold
run: |
COVERAGE=$(go tool cover -func=coverage.out | grep total | awk '{print $3}' | sed 's/%//')
echo "Code coverage is: ${COVERAGE}%"
# NOTE: we are printing the test coverage but not failing the pipeline as of now
# once the test cases are there and code coverage threshold is decided
# then we will enforce the minimum threshold check
# and can push to codecov as well
# if (( $(echo "$COVERAGE < 80" | bc -l) )); then
# exit 1
# fi
Loading
Loading