Branch: refs/heads/main
Home: https://github.com/WebKit/WebKit
Commit: 23bc361e772639367b8e12b89addd5e643d0a319
https://github.com/WebKit/WebKit/commit/23bc361e772639367b8e12b89addd5e643d0a319
Author: Brianna Fan <[email protected]>
Date: 2026-01-21 (Wed, 21 Jan 2026)
Changed paths:
M Tools/CISupport/Shared/steps.py
M Tools/CISupport/Shared/steps_unittest.py
A Tools/CISupport/safer-cpp-swift-version
Log Message:
-----------
[build.webkit.org] Add steps to checkout and build Swift project
rdar://168242766
https://bugs.webkit.org/show_bug.cgi?id=305604
Reviewed by Aakash Jain.
Create 5 new steps to support checking out the swift-project repository
and build swift on the Safer-CPP queue.
In runtime order:
1. GetSwiftTagName: Retrieve and save the tag of swift we want to build.
2. PrintSwiftVersion: Check if a swift repo exists and print the current tag
and swift version if an executable exists.
3. CheckoutSwiftProject: Check out the swift-project/swift.git repo.
4. UpdateSwiftCheckouts: Run utils/update-checkout from swift repo to check out
the other necessary repos for building swift.
5. BuildSwift: Run utils/build-script to build the swift toolchain.
* Tools/CISupport/Shared/steps.py:
(PrintSwiftVersion):
(PrintSwiftVersion.__init__):
(PrintSwiftVersion.run):
(PrintSwiftVersion.getResultSummary):
(GetSwiftTagName):
(GetSwiftTagName.__init__):
(GetSwiftTagName.run):
(GetSwiftTagName.getResultSummary):
(CheckOutSwiftProject):
(CheckOutSwiftProject.__init__):
(CheckOutSwiftProject.parseGotRevision):
(CheckOutSwiftProject.doStepIf):
(CheckOutSwiftProject.getResultSummary):
(UpdateSwiftCheckouts):
(UpdateSwiftCheckouts.__init__):
(UpdateSwiftCheckouts.run):
(UpdateSwiftCheckouts.doStepIf):
(UpdateSwiftCheckouts.getResultSummary):
(BuildSwift):
(BuildSwift.__init__):
(BuildSwift.run):
(BuildSwift.getResultSummary):
(BuildSwift.doStepIf):
(UpdateClang.getResultSummary): Remove duplicate step.
* Tools/CISupport/Shared/steps_unittest.py:
(TestPrintSwiftVersion):
(TestPrintSwiftVersion.setUp):
(TestPrintSwiftVersion.tearDown):
(TestPrintSwiftVersion.configureStep):
(TestPrintSwiftVersion.test_success_with_tag_and_executable):
(TestPrintSwiftVersion.test_no_git_repository):
(TestPrintSwiftVersion.test_no_swift_executable):
(TestGetSwiftTagName):
(TestGetSwiftTagName.setUp):
(TestGetSwiftTagName.tearDown):
(TestGetSwiftTagName.configureStep):
(TestGetSwiftTagName.test_success):
(TestGetSwiftTagName.test_failure_empty_file):
(TestCheckOutSwiftProject):
(TestCheckOutSwiftProject.setUp):
(TestCheckOutSwiftProject.tearDown):
(TestCheckOutSwiftProject.configureStep):
(TestCheckOutSwiftProject.test_skipped_already_up_to_date):
(TestUpdateSwiftCheckouts):
(TestUpdateSwiftCheckouts.setUp):
(TestUpdateSwiftCheckouts.tearDown):
(TestUpdateSwiftCheckouts.configureStep):
(TestUpdateSwiftCheckouts.test_success):
(TestUpdateSwiftCheckouts.test_skipped_already_up_to_date):
(TestUpdateSwiftCheckouts.test_failure_with_previous_checkout):
(TestUpdateSwiftCheckouts.test_failure_without_previous_checkout):
(TestBuildSwift):
(TestBuildSwift.setUp):
(TestBuildSwift.tearDown):
(TestBuildSwift.configureStep):
(TestBuildSwift.test_success):
(TestBuildSwift.test_skipped_executable_exists_same_tag):
(TestBuildSwift.test_build_when_tag_changed):
(TestBuildSwift.test_failure_with_previous_checkout):
(TestBuildSwift.test_failure_without_previous_checkout):
* Tools/CISupport/safer-cpp-swift-version: Added.
Canonical link: https://commits.webkit.org/305975@main
To unsubscribe from these emails, change your notification settings at
https://github.com/WebKit/WebKit/settings/notifications