Denied check-in tfs-online when some time has passed - tfs

I am normally able to check-in tfs online.
But if a certain amount of time (say 30 minutes, I am not sure of the exact no of minutes passed) has passed since I loaded the solution or checked in last, then I am denied check-in.
If I then reload the solution from tfs online, I am allowed to check-in.
The denied check-in situation occurs often and is extremely annoying. Is there any way I can avoid a denied check-in situation without having to reload the solution ?

Related

Handle technical error in Jenkins Step (Jenkins pipeline)

A step calls a shell script (e.g. to install an artifact on a test server) and fails for technical reasons (network does not work, database broke down, etc.). Possible reactions:
Fail the whole job. Not a good idea because then one would need to repeat the previous steps for no good reason (these steps can include manual ones).
Retry the step after e.g. a 5 minute wait. Could solve the problem sometimes, but could also lead to an infinite loop if the problem was caused by misconfiguration.
Ask the user if to proceed or abort. Most flexible approach but needs (unexpected) use interaction.
Has Jenkins a standard solution for this?
Fail the whole job. Not a good idea because then one would need to repeat the previous steps for no good reason (these steps can include manual ones).
It depends on how you rank the severity of the problem. I personally would say if you have any kind of build issues, log it, fail and send notification to whoever needs to know. But if you feel that's overkill, you might want to try something else.
Retry the step after e.g. a 5 minute wait. Could solve the problem sometimes, but could also lead to an infinite loop if the problem was caused by misconfiguration.
You can set a timeout in a Jenkinsfile to give up after, say an hour, or however long you think the job should take. This way you get to retry a few times and you're guaranteed a termination of the job if it gets stuck.
Ask the user if to proceed or abort. Most flexible approach but needs (unexpected) use interaction.
User interaction isn't a great option, especially if you you have no idea when it will happen or if your jobs are scheduled to run between 10pm-5am.
Of all the options, it sounds like the best for your may be the second; retry a few times, and if that doesn't work then log what happens, fail, and notify someone. That should cover your sporadic technical issues. Also if retrying doesn't work, it can show that there are bigger problems to fix.

TFS Scheduled Backup Retry

Is there a way to configure the TFS Scheduled backups to perform a retry if the backup fails? Specifically for full backups.
We're having problems with contention for resources and it fails and gives up.
There isn't the feature in TFS backup, we cannot achieve that.
I help you submitted a user voice here:
https://visualstudio.uservoice.com/forums/330519-team-services/suggestions/20070241-retry-the-backup-when-a-scheduled-backup-failed
You can go there and vote it up to achieve that in future.

travis/coverity: automatically re-schedule a build after given time

I'm using githubs integration of travis-ci with coverity-scan (the free versions of all these services) to test my FLOSS code.
The problem I'm facing is that when continuously working on the code, i'm hitting the coverity quota pretty soon.
Since I'm working on multiple projects simultaneously, it can therefore well be that I switch away from working on a given project before I'm allowed to submit a coverity again, thus potentially having flaws in the code for weeks although they would have been caught easily by coverity.
I would like to avoid this.
The first measure to prevent hitting the quota too frequently, is by using a dedicated branch (usually coverity_scan) which does not receive pushes as often as the master and/or feature branches.
However, this puts cognitive load on the user (me), which I also like to avoid.
Also, sometimes I still hit the quota (some of my projects as in the 100k-500k lines-of-code range, so they have a lower threshold than usual).
What I would like to have is being able to automatically re-trigger a coverity-scan once the quota has expired, if (and only if) the current build did hit the quota.
Is somthing like this possible with plain travis-ci/coverity features?
Or would I have to setup a separate hook, that monitors the coverity quota and travis-ci builds?
You don't need to run Coverity on every check-in. It's just too slow.
You should configure your (coverity build) system to poll your repo for changes, but have them checked infrequently. Something like a few times per day.
This will trigger the build when things change, but not on every change that is detected.

TFS 2010: Rolling CI Builds

I've been looking around online at ways of improving our build time (which is currently ~30-40 minutes, depending on which build agent gets the task), and one common theme I've seen is use CI builds.
I understand the logic behind this, and it makes sense that it would reduce the time each build takes. Our problem, however, is that building on every check-in is a pointless use of our resources, because in our development branch, we only keep the latest successful build. This means that if 2 people check-in in a short space of time, whoever checked-in last will be the one whose build is kept.
It's this reason (along with disk space limitations) that we changed to using Rolling Builds, so that we only built the development branch a maximum of once every 45 minutes (obviously we could manually trigger builds on otp of that).
What I want to know (and haven't been able to find anywhere) is whether there's a way of combining rolling builds AND continuous integration. So keep building only once every 45 minutes, but only get and build files that have changed.
I'm not even sure it's possible, and if not then I'll look into other ways, but this seems like something that should be possible.

What does Transactional Backup Interval mean in the Backup Plan Wizard for Team Foundation Server?

I'm in the process of setting up a backup plan for a Team Foundation Server. I downloaded Power Tools for TFS and I'm using the Backup Plan Wizard that was included in that pack. I am now at the step where I'm supposed to decide how to schedule the backups and I have no idea what to choose for my setup.
I get what everything means, except Transactional Backup Interval.
I would appreciate suggestions for a good schedule. What I would like to achieve is being able to restore and still look back a few versions, if possible. The minimum backup I would like to have is the latest version.
It might be important to add that I got to choose "Backup retention days" earlier and set that to 30.
The transactional backup interval likely refers to how often transaction logs for your TFS databases are backed up. The schedule you choose will probably depend on how busy your repository is.
At my current client there are six developers, and we share some of the load for source control between VSS and TFS (we're transitioning). Corporate policy says we must backup transaction logs every hour during business hours, and an additional one at midnight. Our local backups are on a four-day retention cycle with off-site backups lasting years.
I would make a decision based on how much work you'd want to lose if your repository was lost and your working copy was destroyed simultaneously (natural disaster?).

Resources