0

So I am new to the continuous integration world and of course, like everyone else, have been thrown into the task of setting it up and integrating it.

My company is .NET based and handles MVC applications, regular websites, form applications, as well as windows services. We have a ton of solutions in our repository and most of these solutions have trouble building in our CI that I am testing out (TeamCity). My local PC being the testing server.

Anyways, I have been reviewing a ton of documentation regarding TeamCity on their confluence pages but a lot of it is very technical and I'm getting tired of reading things more than once. So with that being said, there were some terms and concepts that I was a little confused on that I was hoping someone could explain pretty plainly maybe with an example.

  1. Build Parameters - I understand what parameters are and know what they are used for. Why would I use one in a build?

2.Snapshot dependencies - What are these and When should I use them? I am having trouble visualizing this.

  1. Artifact Dependencies - I understand what artifacts are, I don't know why a project would need them to build however.

Any input would be greatly appreciated. Thanks guys.

RyterINC
  • 104
  • 1
  • 12

1 Answers1

0

I could give you some examples.

Build Parameters

It gives you a way to configure your build. For example, you may want to control your build version in Teamcity. You can use build parameters to specify major, minor version (with default value) for your build.

Personally, I try to avoid to use it as we should control configuration in source code or somewhere.

Snapshot dependencies

It is mostly used to build a chain of builds. For example, you have two builds. One is building source and other one is deploying to development environment. If you want to trigger deployment build after each source code build is successful, you need to add snapshot dependency to deployment build.

Artifact Dependencies

The same example as above, you want to deploy the artifact build in other build. In this situation, you need to use artifact dependency to copy the artifact into deployment build to upload somewhere etc.

Or sometimes you may have different projects, some projects are common libraries. If you don't have a artifact repository, you can use artifact dependency when those common libraries are required by other projects.

Wenbing Li
  • 12,289
  • 1
  • 29
  • 41