KVIrc icon indicating copy to clipboard operation
KVIrc copied to clipboard

Investigate move from AppVeyor to Azure DevOps

Open Stanzilla opened this issue 6 years ago • 9 comments

Announcement: https://azure.microsoft.com/en-us/blog/announcing-azure-pipelines-with-unlimited-ci-cd-minutes-for-open-source/

Stanzilla avatar Sep 10 '18 21:09 Stanzilla

that will possibly have to be deferred:

  • there is no qt installed [as i can see in docs], so installing it costs time, which we don't have (see below)
  • no mentions of vcpkg. we can't do stuff there anyway, time https://blogs.msdn.microsoft.com/devops/2018/07/09/universal-packages-bring-large-generic-artifact-management-to-vsts/#comment-636785
  • no msys so no enchant surely some deps could get built locally but unless i can build everything with vs, its honestly not worth [my time]

Dessa avatar Sep 11 '18 01:09 Dessa

rip

Stanzilla avatar Sep 11 '18 01:09 Stanzilla

and of course i forgot to mention (which is why i was refering to time in the 1st and second one): build jobs can only run for 30 mins.

Dessa avatar Sep 11 '18 01:09 Dessa

I'm on the Azure Pipelines teams and want to better understand how we can make the move "turn key".

  • Jobs have a 6 hour limit. If you saw 30 min in our docs then it's a bug in the doc. Let me know so I can fix it.
  • Our images are open source on GitHub. I'm open to adding qt, msys, and vcpkg. What versions do you need?

jeremyepling avatar Sep 14 '18 08:09 jeremyepling

thanks for reaching out!

  • im not entirely sure if its a bug in the doc. https://docs.microsoft.com/en-us/azure/devops/pipelines/agents/hosted?view=vsts&tabs=yaml#capabilities-and-limitations says its 30 minutes on a free plan maybe the open source part of it is missing?
  • msys2: they do have an installer, but the packages in it are updated independently, so latest will possibly work fine; updating and installing packages will take more time as the installation gets older but thats not too much of a deal [for me]
  • vcpkg: i honestly don't know the release cycle so i can't comment on how much hassle it would be to keep that up to date to get the latest libs every now and then, its only for gettext and openssl for us (since enchant isn't compatible with msvc ((anymore?) which is also the only reason we need msys, i'd rather keep the size and build time down, but its not possible until there is an enchant vcpkg package, which i don't know if it will ever happen)
  • qt: here it gets a little tricky, binary compat isn't guaranteed between qt (major) versions so at some point we'll end up with multiple qt versions in the image as people will start using it. this is upstream supported tho so you can have multiple qt versions installed easily, i'd suggest LTS (5.9) and latest (5.11) since 5.12, which will be next LTS won't be out until november.

Dessa avatar Sep 14 '18 11:09 Dessa

Dev on vcpkg :)

We would recommend that you either:

  • git clone https://github.com/microsoft/vcpkg -b <stable commit> and do the usual bootstrap et al.
  • Use vcpkg export --nuget[1] to make a NuGet package with all your dependencies so you don't even need to get vcpkg inside the CI system at all!

You can get Qt through vcpkg with vcpkg install qt5-base, which will obey the usual vcpkg stability rules (if you stay on the same vcpkg commit, you get the same library versions).

[1] https://github.com/Microsoft/vcpkg/blob/master/docs/users/integration.md#export

ras0219-msft avatar Sep 14 '18 22:09 ras0219-msft

@Dessa

  • The 30 minute line in that doc was a bug and it's fixed. Thanks for letting me know. This doc shows out to setup 360 minutes jobs.
  • I filed an issue to track adding Qt and msys.
  • Do you still need vcpkg based on the comment from @ras0219-msft ? If so, can you add it to the issue I linked above?

jeremyepling avatar Sep 15 '18 21:09 jeremyepling

i actually forgot about vcpkg export so no, i can do that locally.

Dessa avatar Sep 15 '18 21:09 Dessa

Tracking issues:

LLVM / Clang: https://github.com/Microsoft/azure-pipelines-image-generation/issues/270 Cygwin: https://github.com/Microsoft/azure-pipelines-image-generation/issues/271 Qt: https://github.com/Microsoft/azure-pipelines-image-generation/issues/272

Stanzilla avatar Jan 02 '19 01:01 Stanzilla

Moved to github actions, closing.

ctrlaltca avatar Mar 03 '24 11:03 ctrlaltca