Skip to content
This repository has been archived by the owner on Nov 15, 2024. It is now read-only.

Commit

Permalink
Merge pull request #16 from hlxsites/695-sync-from-upstream
Browse files Browse the repository at this point in the history
NFR: Sync from upstream #695
  • Loading branch information
alexiscoelho authored Jul 30, 2024
2 parents 0aa09d5 + a5d554d commit ac37a20
Show file tree
Hide file tree
Showing 167 changed files with 38,312 additions and 4,585 deletions.
1 change: 1 addition & 0 deletions .eslintignore
Original file line number Diff line number Diff line change
@@ -1,2 +1,3 @@
helix-importer-ui
common/echarts-5.4.2
vendor/**
118 changes: 118 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: 'Report 🐛 bug or 🕳️ defect'
description: Please fill out this form to report a bug or defect.
labels: ["Bugfix, Triage"]
projects: ["hlxsites/8"]
body:
- type: dropdown
id: issue-type
attributes:
label: Issue Type
description: >
Select whether this is a bug or a defect.
<details>
<summary>What’s the difference?</summary>
:hole: **Defects**
These are issues that are found when testing a functional requirement or change request.
:bug: **Bugs**
Bugs are issues that are found when not validating any Change Request or Functional requirement. They can be regressions or simply issues you find while doing Exploratory Testing.
</details>
options:
- Bug
- Defect
validations:
required: true
- type: input
id: summary
attributes:
label: Summary
description: Provide a short description of the defect. Include the block name
or story in brackets for easier search.
placeholder: e.g., [Block Name] Issue description.
validations:
required: false
- type: dropdown
id: priority
attributes:
label: Priority
description: Select the priority of the issue.
options:
- Blocker
- Critical
- High
- Medium
- Low
validations:
required: true
- type: textarea
id: description
attributes:
label: Description
description: Provide a more detailed description of the issue.
placeholder: Detailed issue description here.
validations:
required: true
- type: dropdown
id: affected-device-classes
attributes:
label: Affected Device Classes
description: Check all device classes affected by this issue.
multiple: true
options:
- Mobile
- Tablet
- Desktop
validations:
required: true
- type: textarea
id: affected-browsers-devices
attributes:
label: Affected Browsers/Devices and Versions
description: List all browsers and devices affected by this issue and specify
their versions.
placeholder: e.g., Chrome (v123), Safari (on iOS 17.4)
validations:
required: true
- type: textarea
id: steps-to-reproduce
attributes:
label: Steps to Reproduce
description: Detail the steps to reproduce the bug. Each action should be a
separate step.
placeholder: |-
1. Navigate to…
2. Click on…
3. Observe the issue.
validations:
required: true
- type: textarea
id: expected-results
attributes:
label: Expected Results
description: Describe the correct behavior expected. Include links to
specifications if available.
placeholder: Expected behavior description.
validations:
required: true
- type: textarea
id: actual-results
attributes:
label: Actual Results
description: Describe the defect identified.
placeholder: Actual defect description.
validations:
required: true
- type: textarea
attributes:
label: Attachment
description: You can attach images by clicking this area and drag files in.
placeholder: Upload file
validations:
required: false
98 changes: 98 additions & 0 deletions .github/ISSUE_TEMPLATE/new_feature.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,98 @@
name: 'New feature ✨'
description: Functional or non-functional requirements
body:
- type: markdown
attributes:
value: >-
Naming convention:
- For functional requirements: FR: [block name] - &lt;issue description&gt;
- For non-functional requirements: NFR: &lt;issue description&gt;
- type: textarea
id: description
attributes:
label: Context/Description
description: >-
This section contains information from the business like:
- Business needs
- User Stories
- Design
validations:
required: true
- type: textarea
id: acceptance-criteria
attributes:
label: Acceptance Criteria
description: >
<details>
<summary>Examples</summary>
User AC:
- Users can see in some flyout additional teaser areas (including titles) on top or below the navigation list
- In the teaser areas 1-n teasers are visible
- To meet a11y criteria, do not forget about alt text for teaser image
Editor AC:
- The current situation needs to be the default
- Teasers including section title can be added on specific flyouts, on top or below the navigation list
- New configurations should only be available in Mack Trucks
Non-functional AC:
- Performance
- Accessibility
- href in sitemap
</details>
value: |+
**User AC:**
**Editor AC:**
**Non-functional AC:**
validations:
required: true
- type: textarea
id: out-of-scope
attributes:
label: Out of scope
description: >-
List of things that are not in scope. For instance when a ticket is
split or a certain function is deprioritized.
- type: textarea
id: note
attributes:
label: Note
description: Some additional information that can help the implementation or testing.
- type: textarea
id: technical-details
attributes:
label: Technical details
description: >-
In case a certain technical direction is chosen it can be added here.
Can happen as follow up of a spike for instance.
- type: textarea
attributes:
label: Attachment / link to Figma
description: You can attach images by clicking this area and drag files in, or add a URL.
placeholder: Upload file or paste URL
validations:
required: false
113 changes: 113 additions & 0 deletions .github/ISSUE_TEMPLATE/technical-debt.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,113 @@
name: 'File technical debt ⚓️'
description: Please fill out this form to file technical debt.
labels: ["Technical debt, Triage"]
projects: ["hlxsites/8"]
body:
- type: input
id: summary
attributes:
label: Summary
description: Provide a short description and include a block name or story in brackets for easier search.
placeholder: e.g., [Block Name] Issue description.
validations:
required: false
- type: dropdown
id: priority
attributes:
label: Priority
description: Select the priority of the issue.
options:
- Blocker
- Critical
- High
- Medium
- Low
default: 3
validations:
required: true
- type: textarea
id: description
attributes:
label: Description
description: Provide a more detailed description of the issue.
placeholder: Detailed issue description here.
validations:
required: true
- type: dropdown
id: value
attributes:
label: Value creation
description: Check all possible outcomes that apply.
multiple: true
options:
- Performance improvement
- Maintainability & scalability
- Compliance & standards
- DX improvement
- UX improvement
- EX improvement
validations:
required: true
- type: dropdown
id: cost-of-fixing
attributes:
label: Cost of fixing
description: >
Categorize the cost of fixing technical debt items, considering both immediate and long-term perspectives
<details>
<summary>Details of perspectives</summary>
**Low Cost**
- Immediate: Requires minimal effort, such as minor code refactoring or updating documentation. Can often be addressed by a single developer in a few hours or less.
- Long-Term: Neglecting these might slightly degrade code quality over time but won't likely cause significant issues in the short term.
**Medium Cost**
- Immediate: Involves moderate effort, such as optimizing existing algorithms, implementing better error handling, or updating several dependencies. May require a few days of work and potentially a small team to ensure thorough testing and integration.
- Long-Term: If left unaddressed, could lead to moderate performance issues, hinder scalability, or increase maintenance time and costs.
**High Cost**
- Immediate: Demands substantial effort, such as rewriting a significant portion of the codebase, migrating to a new framework, or addressing complex security vulnerabilities. This could involve multiple team members over weeks or months, with considerable testing and validation phases.
- Long-Term: Ignoring these issues can lead to severe performance bottlenecks, security breaches, legal compliance issues, or major disruptions in user experience, potentially costing much more in damage repair, lost customers, or legal penalties.
**Variable Cost**
- Immediate: The cost is dependent on the chosen approach, such as deciding between patching a system for a temporary fix versus investing in a more comprehensive solution that may take longer initially but provides greater benefits in the long run.
- Long-Term: A strategic decision to invest more upfront can significantly reduce future costs related to maintenance, scalability, and performance optimization.
</details>
options:
- Low cost
- Medium cost
- High cost
- Variable cost
default: 0
validations:
required: true
- type: dropdown
id: technical-complexity
attributes:
label: Technical complexity
description: The level of technical challenge involved in fixing the debt.
options:
- XL
- L
- M
- S
- XS
- Unknown
default: 3
validations:
required: true
- type: textarea
id: references
attributes:
label: References
description: Links to relevant examples, discussions, PRs, or documentation that provide more context.
placeholder:
validations:
required: true
2 changes: 1 addition & 1 deletion .github/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@
changelog:
exclude:
labels:
- ignore-for-release
- Ignore for release
categories:
- title: Functional requirements
labels:
Expand Down
15 changes: 15 additions & 0 deletions .github/workflows/enforce-branch-policy
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Enforce Branch Policy
on:
pull_request:
branches: [main]

jobs:
check-branch:
runs-on: ubuntu-latest
steps:
- name: Check source branch
run: |
if [ "${{ github.head_ref }}" != "develop" ]; then
echo "This repository only allows merges to main from develop."
exit 1
fi
35 changes: 35 additions & 0 deletions .github/workflows/update-package-version.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,35 @@
name: Update Package Version

on:
push:
tags:
- 'v*'

jobs:
update-version:
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3
with:
ref: ${{ github.head_ref }}
# The bot user https://github.com/hlx-macktrucks-bot is used to commit the changes. The personal access token
# must be created from: https://github.com/settings/tokens
# The token is then stored in the secrets of the this.
# see https://github.com/hlxsites/vg-macktrucks-com/settings/secrets/actions
token: ${{ secrets.BOT_ACCESS_TOKEN }}

- name: Update package version by release tag
uses: BellCubeDev/update-package-version-by-release-tag@v2
with:
keep-v: "false"
ignore-semver-check: "true"
encoding: "utf8"

- name: Commit and Push Changes
run: |
git config user.name "GitHubActions"
git config user.email "<>"
git add package.json
git commit -m "Update package version to ${{ github.ref_name }}"
git push
Loading

0 comments on commit ac37a20

Please sign in to comment.