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

Resolves: Add GitHub Codespaces configuration #167

Merged
merged 4 commits into from
Aug 12, 2021

Conversation

aleks-ivanov
Copy link
Contributor

@aleks-ivanov aleks-ivanov commented Jun 16, 2021

  • ready-to-start GitHub Codespaces configuration

  • it provides basic tools for:

    • .NET development
    • GitHub support
    • overall more pleasant VS Code experience

The configuration consists of:

  • "image": - a declaration of the Docker image that the Codespace container is created from (this is a list of images and code examples that work with GitHub Codespaces)

    • "mcr.microsoft.com/vscode/devcontainers/dotnet:0.201.7-3.1" - the Codespace container runs from an Ubuntu 20.04 image with .NET Core SDK installed. The .NET version is the latest tagged.
  • "settings": - a list of VS Code settings to be applied automatically after the Codespace container is created (.editorconfig overrides these)

    • "terminal.integrated.defaultProfile.linux": "pwsh" - sets the default VS Code terminal to PowerShell Core
  • extensions: - a list of VS Code extensions that are automatically installed after the Codespace container is created

    • "eamodio.gitlens" - provides git information directly inside the code
    • "ms-dotnettools.csharp" and "VisualStudioExptTeam.vscodeintellicode" - provide basic Visual Studio tooling
    • "ms-vscode.powershell" - provides the functionality of Windows PowerShell ISE inside VS Code
    • "cschleiden.vscode-github-actions" and "redhat.vscode-yaml" - provide YAML and GitHub Actions support
    • "bierner.markdown-preview-github-styles" and "ban.spellright" - provide assistance with writing Markdown documentation
    • "jmrog.vscode-nuget-package-manager" - provides use of the NuGet library through the Command Palette
    • "coenraads.bracket-pair-colorizer" - sets different colors for each nested pair of brackets
    • "vscode-icons-team.vscode-icons" - provides a huge set of icons for the VS Code explorer
    • "editorconfig.editorconfig" - attempts to override user/workspace settings with those in the .editorconfig
  • "postCreateCommand" - is a string of commands separated by && that execute after the container has been built and the source code has been cloned. In this configuration, the commands run are build and test of the application per the CI instructions

This GitHub Codespace configuration can also be used locally with the Remote - Containers extension for VS Code. It automatically creates and runs a Docker container based on the devcontainer.json configuration inside the repo, so anyone could work on the project from any computer, without the need to install anything other than VS Code and Docker.

Resoves #166

],
"postCreateCommand": "dotnet restore RulesEngine.sln && dotnet build RulesEngine.sln --configuration Release --no-restore && dotnet test RulesEngine.sln --configuration Release --no-build --verbosity minimal",
}
// Built with ❤ by [Pipeline Foundation](https://pipeline.foundation)
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Can we remove this comment?

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Hi @abbasc52

this is simply our contribution to the project, absolutely no strings attached and we'd really appreciate it if you support our non-profit initiative - Pipeline Foundation 🙂

@abbasc52 abbasc52 enabled auto-merge (squash) August 12, 2021 05:04
@abbasc52 abbasc52 merged commit fe38ed5 into microsoft:main Aug 12, 2021
@aleks-ivanov aleks-ivanov deleted the feature/codespace branch August 12, 2021 05:31
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

2 participants