Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Drop support for CI builds using Azure Pipelines #5389

Merged
merged 3 commits into from
Jan 30, 2025

Conversation

dscho
Copy link
Member

@dscho dscho commented Jan 30, 2025

A long time ago, we used Azure Pipelines for CI builds. Eventually, when GitHub Actions was spawned from Azure Pipelines, we moved over to that system for CI/PR builds.

However, I've tried to keep a working Azure Pipelines definition around for the embargoed releases, to be able to increase confidence in the patches by running the full CI build in a private Azure DevOps project (we cannot do the same on GitHub because even the very generous offer of 50,000 build minutes per month is no match for Git's test suite).

It took a lot of work, and it would take even more work what with upstream's "remove stale code for Azure Pipelines" part of ps/ci-misc-updates.

Time to let it go.

dscho added 3 commits January 30, 2025 11:56
Trying to reinstate support for Azure Pipelines is somewhere between
heroic and futile. I originally tried to do this because it was highly
valuable to be able to run Git's test suite in a private Azure DevOps
project when developing embargoed releases.

Now that upstream drops even more Azure Pipeline support code, it is
time to declare defeat.

Signed-off-by: Johannes Schindelin <[email protected]>
contrib/buildsystems: drop support for building .vcproj/.vcxproj files

Before we had CMake support, the only way to build Git in Visual Studio
was via this hacky `generate` script.

For a while I tried to fix whenever things got broken, in particular to
allow building confidence in embargoed releases by running the CI builds
in Azure Pipelines in a private Azure DevOps project. I even carried the
patches in Git for Windows with the intention of upstreaming them,
eventually.

However, it is a lot of work with too little benefit. CMake is much
better supported by Visual Studio. So let's drop this hacky script (plus
support code).

Signed-off-by: Johannes Schindelin <[email protected]>
Now that we dropped `contrib/buildsystems/generate` to generate Visual
Studio Solution files, it is time to also drop the `vcxproj` Makefile
target that depended on that script.

Signed-off-by: Johannes Schindelin <[email protected]>
@dscho dscho requested a review from mjcheetham January 30, 2025 11:33
@dscho dscho self-assigned this Jan 30, 2025
@dscho dscho added this to the Next release milestone Jan 30, 2025
@dscho dscho merged commit 345f0bf into git-for-windows:main Jan 30, 2025
49 checks passed
@dscho dscho deleted the drop-azure-pipeline-support branch January 30, 2025 16:20
dscho added a commit that referenced this pull request Feb 7, 2025
This PR introduces a merging-rebase purely to reorganize what is in this
fork's default branch. The main clean-ups are:

- The backports that were needed to apply the security fixes to upstream
Git's `maint-2.40` (which was not maintained very well, failing CI
builds) were dropped; They are already part of v2.48.0 (they were
backports, after all).
- The fall-out of #5389 (I
moved the patches that drop Azure Pipeline/`vcxproj` support to the
beginning, and then dropped all of the patches that modified the
now-no-longer-existing parts).
- I also moved the security fixes to the beginning.
- `fixup!`s were applied.
- Combined many of the `fscache` topics into a single one. Who knows
whether I will upstream this topic at all, it's somewhat incompatible
with partial clones, and FSMonitor might turn out to be good enough on
its own (FSCache would help the cold-cache scenario, though).

All in all, there are still a little under 300 patches (291, to be
precise, down from 319) organized in a little over 100 topic branches
(102, to be precise, down from 121). I have to admit that I am a bit
satisfied by the outcome.

Note that the outcome is strictly tree-same, i.e. this PR's combined
diff is empty.

GitHub complained about a "too long PR body" so I'll post the range-diff
as a follow-up comment.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants