Up to now, Stack has been using a number of CI solutions:

There are a number of problems we’re running into:

Azure LogoBack in September, Microsoft announced Azure Pipelines, a new CI/CD service that integrates with Github, provides unlimited free build minutes, a 20 hour time limit for jobs, and supports all three major platforms (Linux, macOS, and Windows). This looked very intriguing, and we’ve been trying it out with success.

Converting all the existing pipelines was not trivial, but also not overly difficult. UPDATE We've since moved this CI over to Github Actions, and have removed the files referenced. See the YAML configurations for unit tests, nightly integration tests, and emplates they reference.

The Azure Pipelines UI is not very intuitive. In particular, adding a second pipeline (for nightlies) was confusing, and it’s hard to find settings and options.While we are generally happy with Azure Pipelines, that is not to say everything is perfect:

We’ve added a page to the Stack documentation with details on how to enable Azure Pipelines for your own Haskell projects.

Any contributions to move other commercialhaskell or fpco repos over to Azure Pipelines would be welcome (we don’t necessarily plan to move them all over immediately if Travis is working well enough, but happy for help any time).

Subscribe to our blog via email
Email subscriptions come from our Atom feed and are handled by Blogtrottr. You will only receive notifications of blog posts, and can unsubscribe any time.

Do you like this blog post and need help with Next Generation Software Engineering, Platform Engineering or Blockchain & Smart Contracts? Contact us.