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

Centralised PSake build scripts and tasks #8

Open
mattritchie opened this issue Mar 29, 2018 · 2 comments
Open

Centralised PSake build scripts and tasks #8

mattritchie opened this issue Mar 29, 2018 · 2 comments

Comments

@mattritchie
Copy link

Hi PSake-VSTS,

We have an onpremise set of psake build and deploy scripts that we share across all of our repositories,
The set of scripts are in the build script repo.
So 100+ code repos with one set of scripts.
Each 100+ repo is different, but by convention we have webapps, services, consoleapps etc building, deploying and installing across many different machines.

I've just setup of first repo in VSTS and installed the psake task from the marketplace, it's asking me to configure the psake file path which is not possible as there is no psake files at all in our code repos.

Our environment configuration settings are stored in another repo, which our psake looks up for settings, so i'm thinking i need to use a feature inside VSTS to handle settings and configuration.

Any advice our guidance as to how I can configure a similar situation in VSTS with reusing our conventions inside psake and vsts?

We've invested a lot of time into our psake scripts and i'm hoping to not have to abandon them, or use a copy inside each repo, or completely rebuild our conventions inside.

I know i need to completely redesign the deploy side of these scripts, but i'd like to reuse the conventions of the build scripts to abstract and simply this transition.

Any advice or pointers to the concepts that I need to understand inside VSTS would be greatly appreciated.

Regards,
Matt

@qetza
Copy link
Member

qetza commented Mar 29, 2018

Hi Matt,

If i understand correctly you have locally 1 repos containing all your psake common build scripts and then 100+ repos containing your code which you build using your common build scripts. Locally when you build, do you run the scripts from your build repos location or do you copy them in your code repo first?

If you need to have both repos on your server to compile unfortunately this will not work in VSTS builds as you can only configure one repo to get source from. One possible solution would be to use git sub module feature to include your build repo as a sub module in your code repo then you would have both repos file on your build server.

@mattritchie
Copy link
Author

Hi Guillaume,
We don't copy them into the repo first. We have the psake build scripts in the PATH of the machine so they can appear at the command line in each repo. Saves on mb's on the disk too.

Submodules is a great idea and i could test that locally as well as on VSTS.

We might have some issues with making the same exact set of scripts work as we run our "build" command on the root of the folder next to the solution, i suppose we could run
cmd> buildscripts\build.bat at root of sln

Cheers! Plenty to think about now!
Matt

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

No branches or pull requests

2 participants