Skip to content

Blog

How to Await an Octopus Task in Azure DevOps

Many tasks for Octopus Deploy in Azure DevOps work asynchronously. What is great in fire-and-forget scenarios, can be a problem when we need to finish a task before we go to the next one.

We had many failing BDD tests right at the beginning of the test run. After a long and cumbersome debugging session, we found the source of the problem: Our tests started before Octopus deployed our release to the server. But how can we delay our pipeline enough until Octopus finishes its work?

Change the Name of the Hangfire Dashboard

Hangfire is a great tool to for background processing in .Net. We use it for all our projects, and it works without any problems.

There is only one bit of nitpicking we found: If you use Hangfire with multiple projects, it is a bit hard to keep the dashboards apart. By default, the tile reads "Hangfire Dashboard" in all of them:

How to Create a .gitignore File for .Net

When we start a new project, we best create a Git repository right away. The only problem when we do that from the command line is that we do not get a .gitignore file. Without such a file, Git will track all files in our repository – including *.exe, *.dll, *.pdp and many more that we do not want. We could go and find a .gitignore from a different project. But there is a better way for our .Net projects:

dotnet new gitignore

How to Fix the No X11 Display Error With Java Applications on Ubuntu 24.04 LTS

On my newly upgraded Ubuntu 24.04 LTS I got this error when I started a Java application:

Exception in thread "main" java.awt.HeadlessException: No X11 DISPLAY variable was set, or no headful library support was found, but this program performed an operation which requires it,

at java.desktop/sun.java2d.HeadlessGraphicsEnvironment.getDefaultScreenDevice(HeadlessGraphicsEnvironment.java:58) at foo.lj.a(Unknown Source) at foo.lj.(Unknown Source)