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

.NET core project native support #121

Open
buddhike opened this issue May 12, 2019 · 1 comment
Open

.NET core project native support #121

buddhike opened this issue May 12, 2019 · 1 comment
Assignees

Comments

@buddhike
Copy link
Member

buddhike commented May 12, 2019

Scenario

User has a git repository with multiple .NET core applications. Same repository also contains shared libraries used by those applications.

- lib/foo
- lib/bar
- web-app
- console-app

Typically, in a setup like this, each application directory is marked as an mbt module by placing a .mbt.yml file. However, if user wants to rebuild/re-version applications when their dependencies change, all library directories must also be marked as mbt modules and correct dependencies must be established in .mbt.yml files.
This feature intends to simplify this process by being able to understand the dependencies defined within .csproj files.

Specification

  • A directory with a .csproj file is recognised as an mbt module (conveniently called csproj module).
  • Module name is .csproj file name without extension.
  • All project references in .csproj becomes dependencies of that module.
  • When a directory contains both .mbt.yml and .csproj files, module is generated based on .mbt.yml and augmented with dependencies found in .csproj.
  • If a particular directory contains more than one .csproj files, behaviour of this feature is not specified (this can be re-visited in a future version)

Design Notes

  • Modify discover.go to with an extensible model that can be used to support other types of projects (e.g. maven pom files, sbt projects) in the future.

  • In order to make sure backward compatibility, this feature is activated via --detect-csproj switch.

@buddhike buddhike self-assigned this May 12, 2019
@Logrythmik
Copy link

This would be amazing! (Is this project still active?)

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants