Jump to content

How to create installers with the latest binaries from PSCM repos?


marioo

Recommended Posts

We currently use Visual Source Safe. To make the process of releasing new software versions easy, we created a separate repo fully made of links to binaries from multiple projects that have to be included in the installer. Because the links in VSS are not revision-based and point directly to files, whenever you download the installer's directory tree, it is populated with the latest versions of the binaries. All you have to do then is open the installer's project and build it. It takes minutes.

 

How to manage releasing installers not to spend hours or days doing it (esp. when the setup is built of hundreds or thousands of files)?

If we migrate to PSCM, how should we facilitate that process? Would you mind telling me how you do it?

Link to comment
Share on other sites

Hello Marioo,

 

I think the same can be done using xlinks.

 

Xlinks are not able to mount sub-directories, you need to mount all the external repository tree (There're some tricks using the "cloaked.cond" feature in order to mount a sub tree).

 

How big is the repository that is linking external content? How many developers are working with VSS at this moment?

Link to comment
Share on other sites

Hello manu,

 

thanks for your reply. There are 6 of us working with VSS. I'm aware I can create a similar structure on Plastic SCM (linking directories to the setup's repo instead of files). Thats perfectly OK. But let's imagine we want to release a new setup. What we will have to do on Plastic SCM is go through each linked directory and edit its xlink so it points to the latest revision of the project it is related with. Only then can we update local workspace and build the setup.

 

When our installers are built of dozens or hundreds of files (not only executables and libraries, but also graphics, databases, some configuration files that we currently store in VSS as well etc.), it will take a lot more time to release a new version than it takes with VSS.

 

Do you think it can be done in a completely different way than I suggested here?

 

Thanks!

 

PS.

To answer your question concerning the size of the setup's repository, we develop several software solutions and each installer's repo is of different size. We checked a few of them yesterday and the largest consists of more than three thousand files, but most of them are small image files. But still there are several dozens of libraries and executables included.

Link to comment
Share on other sites

Hello Marioo,

i guess that my answer is going to be related with this other threat -> http://www.plasticscm.net/index.php?/topic/1787-how-to-check-where-a-repo-is-xlinked/

But first let me clarify the following, I guess that with CC your workspace was always targeting the Head of the repositories linked, right?

So, if you want a new release you only have to update the workspace, CC will download the HEAD of the targets and then build, right?

Link to comment
Share on other sites

That's right. It is enough to update the workspace and you get all head revisions of the targets.

 

As far as I know Plastic SCM does not allow that. You have to update all xlinks manually first and only then can you update your workspace. It is perfectly OK as far as coherence is concerned (that's even better compared to VSS). But when you think about how much time this operation takes, it is not that nice.

 

May I ask you how you build setups to release new Plastic SCM versions? That could be a clue for us (for it might be enough to find a different approach than the one we currently use with VSS).

 

Thank you.

Link to comment
Share on other sites

I think the tool some of your customers make to automatically update xlinks would be useful in this case (the one you mentioned here: http://www.plasticscm.net/index.php?/topic/1787-how-to-check-where-a-repo-is-xlinked/). When it finishes updating xlinks in an installer's repo, then building a setup will be easy and quick enough (as long as you are sure that all head revisions are the ones you want to include in the setup, of course, but this is the case in our company).

 

Do you think your customers would be so kind to share their tool with others? :-)

Link to comment
Share on other sites

Archived

This topic is now archived and is closed to further replies.

×
×
  • Create New...