You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Add GitHub Actions CI workflow and enhanced build script test coverage
Add GitHub Actions workflow for automated testing:
- Build, unit, and security analysis on push/PR
- PowerShell security scanning with PSScriptAnalyzer
- Test result reporting and dependency review
Streamline testing framework:
- Simplify Invoke-Tests.ps1 parameter structure
- Add CI mode with automatic cleanup
- Improve error handling and diagnostics
Update contributor documentation:
- Complete fork-to-PR workflow in CONTRIBUTING.md
- Testing guidance for new contributors
Expand test coverage:
- Build script validation and error scenarios
- Module processing and template modification tests
- Enhanced edge case testing
This establishes automated quality gates while maintaining fast local development.
* ✅ **Unit Tests**: Runs all tests with coverage reporting
83
+
* ✅ **Security Analysis**: PSScriptAnalyzer scans for issues
84
+
* ✅ **Dependency Review**: Checks for vulnerable dependencies
85
+
86
+
View results in your fork's Actions tab, fix any issues, and push again.
29
87
30
-
To send us a pull request, please:
88
+
##### Option B: Local Testing
31
89
32
-
1. Fork the repository.
33
-
2. Modify the source; please focus on the specific change you are contributing. If you also reformat all the code, it will be hard for us to focus on your change.
34
-
3. Ensure local tests pass.
35
-
4. Commit to your fork using clear commit messages.
36
-
5. Send us a pull request, answering any default questions in the pull request interface.
37
-
6. Pay attention to any automated CI failures reported in the pull request, and stay involved in the conversation.
90
+
Run tests locally before pushing:
38
91
39
-
GitHub provides additional document on [forking a repository](https://help.github.com/articles/fork-a-repo/) and
40
-
[creating a pull request](https://help.github.com/articles/creating-a-pull-request/).
2.**Create a pull request** from your branch to our main branch
110
+
3.**Fill out the PR template** with details about your changes
111
+
4.**Stay engaged** in the review process and address feedback
112
+
113
+
### Understanding Test Results
114
+
115
+
#### When Tests Pass ✅
116
+
117
+
```
118
+
✅ Build Tests: All build tests passed
119
+
✅ Unit Tests: 281+ tests passed, 87%+ coverage
120
+
✅ Security Analysis: No critical issues found
121
+
✅ Dependency Review: No vulnerable dependencies
122
+
```
123
+
124
+
#### When Tests Fail ❌
125
+
126
+
```
127
+
❌ Build Tests: 2 tests failed
128
+
❌ Unit Tests: 5 tests failed, coverage below threshold
129
+
⚠️ Security Analysis: 3 style issues found
130
+
```
131
+
132
+
Click on failed workflow runs for detailed error messages, security annotations, and coverage reports.
133
+
134
+
### Troubleshooting
135
+
136
+
**Actions not running?**
137
+
* Ensure Actions are enabled in your fork
138
+
* Use proper branch naming (`feature/*`, `fix/*`, `chore/*`)
139
+
* Don't push directly to `main` branch
140
+
141
+
**Tests fail in GitHub but pass locally?**
142
+
* Check workflow logs for specific errors
143
+
* Verify PowerShell version compatibility
144
+
* Ensure all dependencies are properly specified
145
+
146
+
**Need help?**
147
+
* Check existing issues for similar problems
148
+
* Ask questions in GitHub issues with specific error messages
149
+
* Reference workflow logs when requesting assistance
150
+
151
+
GitHub provides additional documentation on [forking a repository](https://help.github.com/articles/fork-a-repo/) and [creating a pull request](https://help.github.com/articles/creating-a-pull-request/).
42
152
43
153
## Finding contributions to work on
44
-
Looking at the existing issues is a great way to find something to contribute on. As our projects, by default, use the default GitHub issue labels (enhancement/bug/duplicate/help wanted/invalid/question/wontfix), looking at any 'help wanted' issues is a great place to start.
45
154
155
+
Looking at the existing issues is a great way to find something to contribute on. As our projects, by default, use the default GitHub issue labels (enhancement/bug/duplicate/help wanted/invalid/question/wontfix), looking at any 'help wanted' issues is a great place to start.
46
156
47
157
## Code of Conduct
158
+
48
159
This project has adopted the [Amazon Open Source Code of Conduct](https://aws.github.io/code-of-conduct).
49
160
For more information see the [Code of Conduct FAQ](https://aws.github.io/code-of-conduct-faq) or contact
50
-
opensource-codeofconduct@amazon.com with any additional questions or comments.
51
-
161
+
<opensource-codeofconduct@amazon.com> with any additional questions or comments.
52
162
53
163
## Security issue notifications
54
-
If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our [vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/). Please do **not** create a public github issue.
55
164
165
+
If you discover a potential security issue in this project we ask that you notify AWS/Amazon Security via our [vulnerability reporting page](http://aws.amazon.com/security/vulnerability-reporting/). Please do **not** create a public github issue.
0 commit comments