Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Update documentation and maintenance docs #30

Merged
merged 6 commits into from
Aug 13, 2024
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
14 changes: 14 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
# <https://help.github.com/articles/about-codeowners/>

# Area: Documentation
docs/ @tinamor

# Area: Test
*.Tests.ps1 @tinamor


# Tools
containers-toolkit//Public/BuildkitTools.psm1 @profnandaa @billywr @danielGithinji
containers-toolkit/Public/ontainerdTools.psm1 @charitykathure
containers-toolkit/Public/ContainerNetworkTools.psm1 @iankingori
containers-toolkit/Public/NerdctlTools.psm1 @tinamor
53 changes: 36 additions & 17 deletions .github/ISSUE_TEMPLATE/bug_report.md
Original file line number Diff line number Diff line change
@@ -1,38 +1,57 @@
---
name: Bug report
about: Create a report to help us improve
title: ''
about: Create a report to help improve Containers Toolkit PowerShell module
title: "[BUG] [CTK v1.0.0] Summary of the issue"
labels: ''
assignees: ''

---

**Describe the bug**
A clear and concise description of what the bug is.

Please file a single issue per bug instead of enumerating multiple items.

**To Reproduce**
Steps to reproduce the behavior:
1. Go to '...'
2. Click on '....'
3. Scroll down to '....'
4. See error

Detailed steps to reproduce the behavior:
1.
2.
3. ...

The more information you can provide, the more likely someone will be successful at triaging and reproducing the issue and finding a fix.

**Expected behavior**

A clear and concise description of what you expected to happen.

**Actual behavior**

A clear and concise description of what you expected to happen.

**Screenshots**

If applicable, add screenshots to help explain your problem.

**Desktop (please complete the following information):**
- OS: [e.g. iOS]
- Browser [e.g. chrome, safari]
- Version [e.g. 22]
**System information**

- Windows build and Version
- PowerShell

**Smartphone (please complete the following information):**
- Device: [e.g. iPhone6]
- OS: [e.g. iOS8.1]
- Browser [e.g. stock browser, safari]
- Version [e.g. 22]
```PowerShell
systeminfo | findstr /B /C:"OS Name" /C:"OS Version" /C:"System Type"
```

- PowerShell version
- Package version for which the problem occurs
- Container tool versions:
- Containerd
- Buildkit
- Nerdctl
- Win CNI plugin:
- Plugin: [Windows Container Networking CNI](https://github.com/microsoft/windows-container-networking) or [CNI network plugins](https://github.com/containernetworking/plugins)
- Version
- For issues with extensions, the version of the IDE for which the problem occurs

**Additional context**

Add any other context about the problem here.
2 changes: 1 addition & 1 deletion .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
---
name: Feature request
about: Suggest an idea for this project
about: Suggest an idea for Containers Toolkit PowerShell module
title: ''
labels: ''
assignees: ''
Expand Down
39 changes: 39 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
## PR description

### Github issue/ discussion ()

_related Isuue/discussion(s)_

### Background information

_From the perspective of the reviewer, what context do they need to know to understand this PR?_

### What does this PR do

_What does this PR achieve/fix._

### TODOs not included in this PR

_What issues will/should be addressed in followup PRs. Link any of these issues if they exist_

### Testing information

_How to test the changes_

### Relevant links ()

_Any links from your research that will help explain the changes_

## Checklist

As part of our commitment to engineering excellence, **before** submitting this PR, please make sure:

- [ ] You've tested this code in both Desktop & Server environments and AMD & ARM64 enviroments (**functional testing**).
- [ ] You've added **unit tests** for new code.
- [ ] You've added/updated documentation in the [cmdlet docs](../docs/About/), [command-reference.md](../docs/command-reference.md) and the [modules help files](../containers-toolkit/en-US/containers-toolkit-help.xml).
- [ ] You've reviewed the PR/code best practices defined in the [CONTRIBUTING.md](../CONTRIBUTING.md).

In addition, **after** this PR has been reviewed, please agree to:

- [ ] If changes have been made to your PR in the process of addressing comments, please make sure to test again the _final_ version in both AMD and ARM64 environments.
- [ ] Validate your changes have not introduced any regressions.
81 changes: 81 additions & 0 deletions .github/workflows/markdown-lint.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
###########################################################################
# #
# Copyright (c) Microsoft Corporation. All rights reserved. #
# #
# This code is licensed under the MIT License (MIT). #
# #
###########################################################################

name: Markdown Lint

on:
pull_request:
branches:
- main
- "releases/**"
paths:
- "docs/**"
- "README.md"
- en-US/**"

permissions:
contents: read

jobs:
markdown-check:
runs-on: windows-latest
continue-on-error: true
steps:
- uses: actions/checkout@v4

- name: Install npm dependencies
run: npm install -g markdown-link-check textlint textlint-rule-spelling dictionary-en textlint-filter-rule-comments

- name: Markdown link check
shell: pwsh
run: |
# Check all markdown files in the repository
$mlc_error_file = "link-errors.txt"
Remove-Item -Path $mlc_error_file -Recurse -Force -ErrorAction SilentlyContinue
Get-ChildItem -Path "README.md", ".\docs\" -Filter "*.md" -Recurse | `
ForEach-Object { & markdown-link-check $_.FullName -q 2>>$mlc_error_file }

# Check if the error file exists
if (-not (Test-Path "$mlc_error_file")) {
return
}

# Check if the error file file contains errors
if (Select-String -Path "$mlc_error_file" -Pattern "ERROR: ") {
$errormsg = "Broken links found. Please check the output for more information."
$Link_Check_Summary = ":x: [Markdown Link Check] $errormsg"
echo $Link_Check_Summary >> $env:GITHUB_STEP_SUMMARY
throw $errormsg
}
else {
$Link_Check_Summary = ":white_check_mark: [Markdown Link Check] All links are valid."
echo $Link_Check_Summary >> $env:GITHUB_STEP_SUMMARY
}

- name: Markdown spell check
shell: pwsh
run: |
# Run spell check on all markdown files in the repository
$sc_error_file = "sc-errors.txt"
Remove-Item -Path $sc_error_file -Recurse -Force -ErrorAction SilentlyContinue
npx textlint README.md docs/**/*.md >>$sc_error_file

# Check if the error file exists
if (-not (Test-Path "$sc_error_file")) {
return
}

# Check if the error file file contains errors. If the file is empty, it means no errors were found.
if ([string]::IsNullOrWhiteSpace((Get-Content -Path $sc_error_file))) {
$Spell_Check_Summary = ":white_check_mark: [Markdown Spell Check] No spelling errors found."
}
else {
$Spell_Check_Summary = ":x: [Markdown Spell Check] Spelling errors found. Please check the output for more information."
cat $sc_error_file
}
echo $Spell_Check_Summary >> $env:GITHUB_STEP_SUMMARY
83 changes: 51 additions & 32 deletions .textlintrc.json
Original file line number Diff line number Diff line change
@@ -1,35 +1,54 @@
{
"rules": {
"spelling": {
"language": "en",
"skipPatterns": [
"/[0-9]+/g", // numbers
"/\\bhttp(s)?:\\/\\/[^\\s)>]+/", // URL
// "/\\b[a-z\\d]{7,40}\\b/", // commit hash
"/\\([^)]+?\\)/", // inside parentheses
// // '/"[^"]+?"/', // inside quotation marks
// // "/`[^`]+?`/", // inside backticks
"/\\b(?:[A-Z]){2,}\\b/g", // acronyms
"/\\b(?:[a-zA-Z]+-[a-zA-Z]+)\\b/g", // hyphenated words/ function names
// "/\b\\S*\\.\\S{2,4}/g", // filenames
"/\\$[\\w]+(:\\w)?/g", // PowerShell variables
"/-\\w+\\b/g", // FIXME: PowerShell Cmdlets/function parameter names
"/\\b\\w+[./]\\w+\\b/g", // paths // FIXME: Does not work for \ in paths
"containers-toolkit",
"PowerShell",
"/Cmdlets/i",
"Containerd",
"BuildKit",
"buildkitd",
"nerdctl",
"WinCNIPlugin",
"NatNetwork",
"/nat/i",
"cni",
"HNS",
"CIDR",
"subnet"
]
}
"plugins": {},
"filters": {
"comments": true
},
"rules": {
"spelling": {
"language": "en",
"skipPatterns": [
"/[0-9]+/g", // numbers
"/\\bhttp(s)?:\\/\\/[^\\s)>]+/", // URL
// "/\\b[a-z\\d]{7,40}\\b/", // commit hash
"/\\([^)]+?\\)/", // inside parentheses
// "/\"[^\"]+?\"/", // inside quotation marks
// "/`[^`]+?`/", // inside backticks
"/\\b(?:[A-Z]){2,}\\b/g", // acronyms
"/\\b(?:[a-zA-Z]+-[a-zA-Z]+)\\b/g", // hyphenated words/ function names
// "/\\b\\S*\\.\\S{2,4}/g", // filenames
"/\\$[\\w]+(:\\w)?/g", // PowerShell variables
"/-\\w+\\b/g", // FIXME: PowerShell Cmdlets/function parameter names
"/\\b\\w+[./]\\w+\\b/g", // paths // FIXME: (Note: Does not work for \ in paths)
"about_Preference_Variables",
"CIDR",
"Containers[\\s\\.\\-]ToolKit/gi",
"/Cmdlet/gi",
"cni",
"/Containerd/gi",
"/BuildKit/gi",
"/buildkitd/gi",
"/H(ost)?N(etworking)?S(ervice)?/g",
"/Hyper[\\s-]?V/g",
"/moby/gi",
"/nat/gi",
"NatNetwork",
"nerdctl",
"PowerShell",
"/PSCustomObject/gi",
"subnet",
"ThreadJob",
"/unregisters/gi",
"WinCNIPlugin",
// Parameter names
"DownloadPath",
"InstallPath",
"LatestVersion",
"NetworkName",
"RegisterServices",
"WhatIf",
"WinCNIPath",
"WinCNIVersion"
]
}
}
}
3 changes: 3 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
## 1.0.0

* Initial release
Loading
Loading