Skip to content

Commit ee3ea50

Browse files
committed
Add instructions for copilot
1 parent 31eff81 commit ee3ea50

1 file changed

Lines changed: 35 additions & 0 deletions

File tree

.github/copilot-instructions.md

Lines changed: 35 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,35 @@
1+
This is a .NET based repository containing recipes for the Cake Build Automation System bundling individual Cake Issues addins.
2+
The individual recipes are published as NuGet packages.
3+
4+
See https://cakeissues.net/ for documentation and more information about Cake Issues.
5+
6+
Follow these guidelines when contributing:
7+
8+
## Before committing code
9+
- Ensure no warning or error messages from Roslyn analyzers are present in the code.
10+
- Ensure Unit Tests are passing.
11+
- Ensure Integration Tests are passing.
12+
13+
## Development Flow
14+
- Only building: `build.sh --target=DotNetCore-Build`
15+
- Publish NuGet Packages: `build.sh --target=Create-NuGet-Packages`
16+
- Run Unit Tests: `build.sh --target=Test`
17+
- Run Integration Tests:
18+
- Run first `build.sh --target=Create-NuGet-Packages` in the root directory to create the NuGet packages.
19+
- Run `build.sh` in the `tests/<RECIPE-NAME>/<TEST>` directory to run the integration tests for the corresponding recipe
20+
- Full CI check: `build.sh` (includes build, publish, test)
21+
22+
To have verbose output of build.sh the following parameter can be add `--verbosity=diagnostic`
23+
24+
## Repository Structure
25+
- `Cake.Frosting.Issues.Recipe`: Contains the source code for the recipe for use with Cake Frosting
26+
- `Cake.Issues.Recipe`: Contains the source code for the recipe for use with Cake Scripting
27+
- `nuspec/nuget`: Contains the NuGet specification files for the Cake Scripting addin
28+
- `tests`: Contains integration tests for the recipes
29+
- `.github/workflows`: Contains GitHub Actions workflows for CI/CD which need to be maintained
30+
- `.azuredevops/pipelines/templates`: Contains Azure Pipelines templates which need to be maintained. The main file is `azure-pipelines.yml` in the root directory.
31+
32+
## Key Guidelines
33+
1. Maintain existing code structure and organization
34+
2. Write unit tests for new functionality.
35+
3. Write integration tests for new functionality which can't be tested with unit tests.

0 commit comments

Comments
 (0)