Provide ways to help you streamline development efforts in the context of SDLC- and DevSecOps practices that ensures a smooth and consistent way of working with code.
Repositories of interest:
- .NET
- CI/CD
- GitHub Actions
- codecov-scan
- codeql-scan
- codeql-scan-finalize
- docker-compose
- dotnet-build
- dotnet-pack
- dotnet-restore
- dotnet-test
- dotnet-tool-install-minver
- dotnet-tool-install-reportgenerator
- dotnet-tool-install-sonarscanner
- gcp-download-file
- git-checkout
- install-dotnet
- minver-calculate
- nuget-push
- shell-globbing
- sonarcloud-scan
- sonarcloud-scan-finalize
- GitHub Actions
- Infrastructure as Code
- Terraform
- Microservices
- Status Monitor
In the root of the repository, there should be a README.md
file with a description of the repository as well as complemental docs such as CONTRIBUTING.md
, CODE_OF_CONDUCT.md
, LICENSE
, CHANGELOG.md
and so forth.
Any ignore files must also be placed in the root of the repository, including but not limited to .gitignore
, .dockerignore
and so forth.
The repository must have a src
folder containing all source code, and a test
folder containing all unit tests.
Anything that complements your code should be placed in separate sub-folders relative to root, e.g. .github
, .nuget
, .codevoc
, .docfx
and so forth.
The repository should have the following folders representing the different environments:
origin
development
staging
production
Where origin
is the local development environment from which the application is being written.
- SOLID
- DRY
- Consistency
- Generality
- Abstraction
- Modularity
- Separation of Concerns
- Same concept as two of the most important design principles of SOLID; SRP and ISP
- Measure Twice, Cut Once