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

(issue #946) visual studio command-line build vnext step (devenv.com) #1080

Closed
wants to merge 1 commit into from

Conversation

jmacnett
Copy link

issue #946

Functional, configurable vnext step allowing the user to invoke devenv.com and build via visual studio, instead of msbuild. This adds back in support for project types that msbuild doesn't handle (SSRS projects, for example).

@msftclas
Copy link

Hi @jmacnett, I'm your friendly neighborhood Microsoft Pull Request Bot (You can call me MSBOT). Thanks for your contribution!

In order for us to evaluate and accept your PR, we ask that you sign a contribution license agreement. It's all electronic and will take just minutes. I promise there's no faxing. https://cla.microsoft.com.

TTYL, MSBOT;

@jmacnett
Copy link
Author

did that. enjoy.

@msftclas
Copy link

@jmacnett, Thanks for signing the contribution license agreement so quickly! Actual humans will now validate the agreement and then evaluate the PR.

Thanks, MSBOT;

@mmajcica
Copy link
Contributor

@jmacnett You did a good job, especially around the effort of going trough the invocation output and trying to match and handle errors. I do see however a place for some minor improvements. I will try to draft and test them and then I'll make a pull request to your branch.

Thanks for sharing

@bryanmacfarlane
Copy link
Contributor

I think we are going to support this but in a slightly different way. We want an input on the existing Visual Studio Build task that says use devenv (defaults to false). If true, it takes the variant path running code similar to above. We don't want another task.

The current VS build task is essentially still running msbuild but the purpose of it is to location the proper version of msbuild via the specified VS version.

Do you want to take a crack at that PR? We can help CR, test, etc...

Also, take a look at how we're writing L0 tasks via mocking. The goal is to exercise every arc/function of the script without actually doing the work and runs sub second.

@jmacnett
Copy link
Author

jmacnett commented Feb 7, 2016

I'm not opposed to implementing it in that fashion, if that's the desired approach. I can certainly take a crack at modifying the existing visual studio build task as described.

With that said, how set is your team on this approach? My concern with having the two paths within that same task is that the command-line arguments for devenv vs msbuild are pretty divergent, beyond a point. In fact, it almost seems that the use-visual-studio-to-select-a-version-of-msbuild logic could be in the MSBuild task template, in parallel w/ the msbuild version selection UI, and the devenv/VS build option could be it's own task option.

Again, I'm just asking...seems like a more intuitive approach to me. I am willing to spend some time on this in either case, as I'd like to see it become part of the standard vnext offerings. Thanks!

@bryanmacfarlane
Copy link
Contributor

We're pretty set. We don't want a proliferation of tasks. Switching on which cmd line to call us a minor implementation detail.

When you have both tasks that are at a glance the same ( vs / devenv ) it's confusing which to pick. If you have one then inside the context of giving inputs to the task we can offer guidance.

Create a separate PR and I can pair you up with a dev on this side

@xhead
Copy link

xhead commented May 5, 2016

Create a separate PR and I can pair you up with a dev on this side

Did this die on the vine?

@bryanmacfarlane
Copy link
Contributor

@jmacnett ??

@rrober07
Copy link

Where does this task stand...has it been address? completed?

@xhead
Copy link

xhead commented Jul 30, 2016

I started working on this code when I first posted my question. I did make some progress but it isn't ready for putting into a pull request yet. I haven't touched it for a number of weeks now (I took another track in my project shortly after this thread went silent).

I was kinda waiting to see if someone in the team might be assigned to this and give me the guidance that was offered to jmacknett. Reading it again now, I see that you had asked him to created a PR first.

If you want to see what I've done so far, I can do a PR.

Mike


From: rrober07mailto:notifications@github.com
Sent: ‎7/‎30/‎2016 7:16 AM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Commentmailto:comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio command-line build vnext step (devenv.com) (#1080)

Where does this task stand...has it been address? completed?


You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com//pull/1080#issuecomment-236362170, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASUnp57ecV6uiYnumRRubfphWP-vHqzZks5qa0B1gaJpZM4HF4lQ.

@rrober07
Copy link

Has this been completed? where can I get the copy to update our TFS2015 update 3...

thanks

@xhead
Copy link

xhead commented Sep 19, 2016

I haven’t created a pull request for this yet, I hadn’t heard that you wanted one from me. Sorry about that.

Last I checked, I needed to merge in a bunch of changes before I was able to get my change in. What is your timeline for this release? If I did this on the weekend, would it be too late?

Mike Diehl sip:miked@imaginet.com
Practice Lead for Databases and Business Intelligence | Imaginet | [cid:image004.png@01CEF68D.19A9C0A0] http://www.twitter.com/justimaginet [cid:image005.jpg@01CEF68D.19A9C0A0] http://www.facebook.com/justimaginet [cid:image006.png@01CEF68D.19A9C0A0] http://www.linkedin.com/companies/imaginet
miked@imaginet.commailto:miked@imaginet.com | P 204.977.6968 | C 204.781.7166 | 210 – 233 Portage Ave. | Winnipeg, MB | R3B 2A7

[cid:image007.png@01CEF68D.19A9C0A0]http://www.imaginet.com/
ideas. technology. imaginehttp://www.imaginet.com/.
subscribehttp://learn.imaginet.com/subscribe-to-newsletter.html to our newsletter

From: rrober07 [mailto:notifications@github.com]
Sent: September 19, 2016 2:55 PM
To: Microsoft/vsts-tasks vsts-tasks@noreply.github.com
Cc: Mike Diehl Miked@imaginet.com; Comment comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio command-line build vnext step (devenv.com) (#1080)

Has this been completed? where can I get the copy to update our TFS2015 update 3...

thanks


You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com//pull/1080#issuecomment-248104612, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASUnp7sjXgWox_ZFL8jOWa6dtIEKal5Qks5qruidgaJpZM4HF4lQ.

@rrober07
Copy link

no problem...This weekend would be fine...let me know

Thanks

On Mon, Sep 19, 2016 at 3:11 PM, xhead notifications@github.com wrote:

I haven’t created a pull request for this yet, I hadn’t heard that you
wanted one from me. Sorry about that.

Last I checked, I needed to merge in a bunch of changes before I was able
to get my change in. What is your timeline for this release? If I did this
on the weekend, would it be too late?

Mike Diehl sip:miked@imaginet.com
Practice Lead for Databases and Business Intelligence | Imaginet |
[cid:image004.png@01CEF68D.19A9C0A0] http://www.twitter.com/justimaginet
[cid:image005.jpg@01CEF68D.19A9C0A0] http://www.facebook.com/justimaginet
[cid:image006.png@01CEF68D.19A9C0A0] <http://www.linkedin.com/
companies/imaginet>
miked@imaginet.commailto:miked@imaginet.com | P 204.977.6968 | C
204.781.7166 | 210 – 233 Portage Ave. | Winnipeg, MB | R3B 2A7

[cid:image007.png@01CEF68D.19A9C0A0]http://www.imaginet.com/
ideas. technology. imaginehttp://www.imaginet.com/.
subscribehttp://learn.imaginet.com/subscribe-to-newsletter.html to our
newsletter

From: rrober07 [mailto:notifications@github.com]
Sent: September 19, 2016 2:55 PM
To: Microsoft/vsts-tasks vsts-tasks@noreply.github.com
Cc: Mike Diehl Miked@imaginet.com; Comment comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio
command-line build vnext step (devenv.com) (#1080)

Has this been completed? where can I get the copy to update our TFS2015
update 3...

thanks


You are receiving this because you commented.
Reply to this email directly, view it on GitHub<https://github.com/
/pull/1080#issuecomment-248104612>, or mute the
thread<https://github.com/notifications/unsubscribe-auth/ASUnp7sjXgWox_
ZFL8jOWa6dtIEKal5Qks5qruidgaJpZM4HF4lQ>.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanrYGlJRHsMhPx4771N6k9KOwALGoks5qruxugaJpZM4HF4lQ
.

@rrober07
Copy link

Where you able to get those changes finished last weekend? Let me
know...and what I need to do to get this on my TFS2015 server.

Thanks
Richard

On Mon, Sep 19, 2016 at 3:20 PM, Richard Roberts roberts.vb@gmail.com
wrote:

no problem...This weekend would be fine...let me know

Thanks

On Mon, Sep 19, 2016 at 3:11 PM, xhead notifications@github.com wrote:

I haven’t created a pull request for this yet, I hadn’t heard that you
wanted one from me. Sorry about that.

Last I checked, I needed to merge in a bunch of changes before I was able
to get my change in. What is your timeline for this release? If I did this
on the weekend, would it be too late?

Mike Diehl sip:miked@imaginet.com
Practice Lead for Databases and Business Intelligence | Imaginet |
[cid:image004.png@01CEF68D.19A9C0A0] http://www.twitter.com/justimaginet
[cid:image005.jpg@01CEF68D.19A9C0A0] <http://www.facebook.com/justi
maginet> [cid:image006.png@01CEF68D.19A9C0A0] <
http://www.linkedin.com/companies/imaginet>
miked@imaginet.commailto:miked@imaginet.com | P 204.977.6968 | C
204.781.7166 | 210 – 233 Portage Ave. | Winnipeg, MB | R3B 2A7

[cid:image007.png@01CEF68D.19A9C0A0]http://www.imaginet.com/
ideas. technology. imaginehttp://www.imaginet.com/.
subscribehttp://learn.imaginet.com/subscribe-to-newsletter.html to our
newsletter

From: rrober07 [mailto:notifications@github.com]
Sent: September 19, 2016 2:55 PM
To: Microsoft/vsts-tasks vsts-tasks@noreply.github.com
Cc: Mike Diehl Miked@imaginet.com; Comment comment@noreply.github.com

Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio
command-line build vnext step (devenv.com) (#1080)

Has this been completed? where can I get the copy to update our TFS2015
update 3...

thanks


You are receiving this because you commented.
Reply to this email directly, view it on GitHub<https://github.com/Micr
osoft/vsts-tasks/pull/1080#issuecomment-248104612>, or mute the thread<
https://github.com/notifications/unsubscribe-auth/
ASUnp7sjXgWox_ZFL8jOWa6dtIEKal5Qks5qruidgaJpZM4HF4lQ>.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanrYGlJRHsMhPx4771N6k9KOwALGoks5qruxugaJpZM4HF4lQ
.

@bryanmacfarlane
Copy link
Contributor

The right fix is to add a bool input to the VSBuild task to use devenv.exe. If you want a PR then that's the right approach.

@rrober07
Copy link

which branch should I request?

On Tue, Sep 27, 2016 at 7:17 AM, Bryan MacFarlane notifications@github.com
wrote:

The right fix is to add a bool input to the VSBuild task to use
devenv.exe. If you want a PR then that's the right approach.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanmgeUoyZc2ciY4lyp45-Jiw-o5QGks5quQlggaJpZM4HF4lQ
.

@xhead
Copy link

xhead commented Sep 27, 2016

HM, the way I built mine was to add a third choice, devenv.com, to the two msbuild choices.

Sent from my Windows Phone


From: Bryan MacFarlanemailto:notifications@github.com
Sent: ‎9/‎27/‎2016 7:17 AM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Commentmailto:comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio command-line build vnext step (devenv.com) (#1080)

The right fix is to add a bool input to the VSBuild task to use devenv.exe. If you want a PR then that's the right approach.


You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com//pull/1080#issuecomment-249848034, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASUnp9yIH4HUnyRYxmLqT72yj5YbIScsks5quQlggaJpZM4HF4lQ.

@bryanmacfarlane
Copy link
Contributor

Right. And that's problematic because when someone uses the mainline default option of msbuild (we default to the lighter weight cmdline approach) and realize for some reason they want to switch to using devenv (there were unfortunately some scenarios that only work from VS), they shouldn't have to remove a step, add a new step, and re-input all the data. They should just flip a toggle.

@rrober07
Copy link

What branch is your change in...so I can pull that?

On Tue, Sep 27, 2016 at 9:17 AM, xhead notifications@github.com wrote:

HM, the way I built mine was to add a third choice, devenv.com, to the
two msbuild choices.

Sent from my Windows Phone


From: Bryan MacFarlanemailto:notifications@github.com
Sent: ‎9/‎27/‎2016 7:17 AM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Comment<mailto:comment@
noreply.github.com>
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio
command-line build vnext step (devenv.com) (#1080)

The right fix is to add a bool input to the VSBuild task to use
devenv.exe. If you want a PR then that's the right approach.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub<https://github.com/
/pull/1080#issuecomment-249848034>, or mute the
thread<https://github.com/notifications/unsubscribe-auth/
ASUnp9yIH4HUnyRYxmLqT72yj5YbIScsks5quQlggaJpZM4HF4lQ>.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanpwZcvuULAL7Wr3y7deQEf_odjiGks5quSWBgaJpZM4HF4lQ
.

@xhead
Copy link

xhead commented Sep 27, 2016

I still haven't checked it in

Sent from my Windows Phone


From: rrober07mailto:notifications@github.com
Sent: ‎9/‎27/‎2016 10:13 AM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Commentmailto:comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio command-line build vnext step (devenv.com) (#1080)

What branch is your change in...so I can pull that?

On Tue, Sep 27, 2016 at 9:17 AM, xhead notifications@github.com wrote:

HM, the way I built mine was to add a third choice, devenv.com, to the
two msbuild choices.

Sent from my Windows Phone


From: Bryan MacFarlanemailto:notifications@github.com
Sent: ‎9/‎27/‎2016 7:17 AM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Comment<mailto:comment@
noreply.github.com>
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio
command-line build vnext step (devenv.com) (#1080)

The right fix is to add a bool input to the VSBuild task to use
devenv.exe. If you want a PR then that's the right approach.


You are receiving this because you commented.
Reply to this email directly, view it on GitHub<https://github.com/
/pull/1080#issuecomment-249848034>, or mute the
thread<https://github.com/notifications/unsubscribe-auth/
ASUnp9yIH4HUnyRYxmLqT72yj5YbIScsks5quQlggaJpZM4HF4lQ>.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanpwZcvuULAL7Wr3y7deQEf_odjiGks5quSWBgaJpZM4HF4lQ
.


You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com//pull/1080#issuecomment-249891392, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASUnp1pj3U1a5RbeWQnpfz8I14xoftrPks5quTFIgaJpZM4HF4lQ.

@rrober07
Copy link

What branch should I request to pull for this switch?

On Tue, Sep 27, 2016 at 10:03 AM, Bryan MacFarlane <notifications@github.com

wrote:

Right. And that's problematic because when someone uses the mainline
default option of msbuild (we default to the lighter weight cmdline
approach) and realize for some reason they want to switch to using devenv
(there were unfortunately some scenarios that only work from VS), they
shouldn't have to remove a step, add a new step, and re-input all the data.
They should just flip a toggle.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanvpVEOSXgLvwUt6MEcRfUE8cccbyks5quTA6gaJpZM4HF4lQ
.

@xhead
Copy link

xhead commented Sep 28, 2016

I don't have it in yet

Sent from my Windows Phone


From: rrober07mailto:notifications@github.com
Sent: ‎9/‎28/‎2016 12:38 PM
To: Microsoft/vsts-tasksmailto:vsts-tasks@noreply.github.com
Cc: Mike Diehlmailto:Miked@imaginet.com; Commentmailto:comment@noreply.github.com
Subject: Re: [Microsoft/vsts-tasks](issue #946) visual studio command-line build vnext step (devenv.com) (#1080)

What branch should I request to pull for this switch?

On Tue, Sep 27, 2016 at 10:03 AM, Bryan MacFarlane <notifications@github.com

wrote:

Right. And that's problematic because when someone uses the mainline
default option of msbuild (we default to the lighter weight cmdline
approach) and realize for some reason they want to switch to using devenv
(there were unfortunately some scenarios that only work from VS), they
shouldn't have to remove a step, add a new step, and re-input all the data.
They should just flip a toggle.


You are receiving this because you are subscribed to this thread.
Reply to this email directly, view it on GitHub
#1080 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAHanvpVEOSXgLvwUt6MEcRfUE8cccbyks5quTA6gaJpZM4HF4lQ
.


You are receiving this because you commented.
Reply to this email directly, view it on GitHubhttps://github.com//pull/1080#issuecomment-250240185, or mute the threadhttps://github.com/notifications/unsubscribe-auth/ASUnpxPYItCUZpS-SD7HfYi0QUJjyVa2ks5quqXEgaJpZM4HF4lQ.

@rrober07
Copy link

I am assuming this has been fixed or moved to the TFS15 version coming since it has been closed

@rrober07
Copy link

rrober07 commented Mar 30, 2017 via email

@psandhu79
Copy link

what state is this ? when might we see this ?

@xhead
Copy link

xhead commented Sep 21, 2017 via email

@psandhu79
Copy link

But is there an easy way of detecting where the visual studio is installed on the machine if using on-prem agents or hosted ones ?

@xhead
Copy link

xhead commented Sep 22, 2017 via email

@xhead
Copy link

xhead commented Sep 22, 2017 via email

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

7 participants