Skip to content
Merged
Changes from 1 commit
Commits
Show all changes
39 commits
Select commit Hold shift + click to select a range
7b6dc2d
Build PHP binaries with Xdebug
fredrikekelund May 12, 2026
702ea22
WIP
fredrikekelund May 12, 2026
594e5af
New approach
fredrikekelund May 12, 2026
5c15545
Fix
fredrikekelund May 12, 2026
c0d6ba3
Address build log warnings
fredrikekelund May 12, 2026
0513325
WIP
fredrikekelund May 12, 2026
74e219d
WIP
fredrikekelund May 12, 2026
7ec141c
WIP
fredrikekelund May 12, 2026
f610b55
GitHub API token
fredrikekelund May 12, 2026
0d48dff
pkg-config
fredrikekelund May 12, 2026
d35d4ac
pkg-config
fredrikekelund May 12, 2026
a7aa765
Fix libcurl issue
fredrikekelund May 12, 2026
a65dfec
WIP
fredrikekelund May 12, 2026
beab364
Clean up
fredrikekelund May 12, 2026
8132a23
curl fix
fredrikekelund May 12, 2026
b2ac2c5
Embed curl
fredrikekelund May 12, 2026
695279f
More curl
fredrikekelund May 12, 2026
241cb89
Merge branch 'trunk' into rsm-2698-build-php-with-xdebug
fredrikekelund May 12, 2026
34f1d07
Normalize directory structure on macOS
fredrikekelund May 13, 2026
c606c6c
Name GitHub action run using inputs
fredrikekelund May 13, 2026
491ec37
Address review comments
fredrikekelund May 13, 2026
4d8caad
WIP
fredrikekelund May 13, 2026
477e6b1
Rely on existing spc tools where possible
fredrikekelund May 13, 2026
6298024
Fix extension smoke tests failing
fredrikekelund May 13, 2026
b9955ac
Fix xdebug extension testing
fredrikekelund May 13, 2026
630cc54
Cleanup
fredrikekelund May 13, 2026
c4582d4
curl smoke test fix
fredrikekelund May 13, 2026
cacc2cd
Bring back PHP version resolver
fredrikekelund May 13, 2026
a2c1065
Dynamically find latest extension versions on Windows
fredrikekelund May 13, 2026
b209699
Apply phar patch
fredrikekelund May 13, 2026
efc25d0
dom apparently also needs to be static
fredrikekelund May 13, 2026
bf47f9f
Fix phar issue (again)
fredrikekelund May 13, 2026
e60bcae
Make xdebug the only shared extension
fredrikekelund May 13, 2026
28d14f5
Docs
fredrikekelund May 13, 2026
a447f4a
[WIP] Load PHP extensions properly on Windows
fredrikekelund May 13, 2026
b269191
Update the extension list
fredrikekelund May 13, 2026
70598be
Merge branch 'trunk' into rsm-2698-build-php-with-xdebug
fredrikekelund May 13, 2026
b25d8e5
Merge branch 'rsm-2698-build-php-with-xdebug' into f26d/load-xdebug
fredrikekelund May 13, 2026
2cd6ea0
Merge branch 'trunk' into f26d/load-xdebug
fredrikekelund May 19, 2026
File filter

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Merge branch 'trunk' into rsm-2698-build-php-with-xdebug
  • Loading branch information
fredrikekelund committed May 12, 2026
commit 241cb89d7ff4ea83b07073be39271f585683bd7d
66 changes: 66 additions & 0 deletions .github/workflows/build-php-cli-binaries.yml
Original file line number Diff line number Diff line change
Expand Up @@ -458,3 +458,69 @@ jobs:
with:
name: php-${{ env.PHP_VERSION }}-cli-${{ matrix.target }}
path: out/php-binaries/*

publish-apps-cdn:
name: Publish Apps CDN artifacts
needs: build
runs-on: ubuntu-latest
env:
PHP_VERSION: ${{ inputs.php_version }}
PHP_CLI_VISIBILITY: ${{ inputs.apps_cdn_visibility }}
DRY_RUN: ${{ inputs.upload_to_apps_cdn && 'false' || 'true' }}
WPCOM_API_TOKEN: ${{ secrets.WPCOM_API_TOKEN }}
steps:
- name: Checkout Studio
uses: actions/checkout@v6

- name: Setup Ruby
uses: ruby/setup-ruby@v1
with:
bundler-cache: true

- name: Download PHP CLI artifacts
uses: actions/download-artifact@v4
with:
pattern: php-${{ env.PHP_VERSION }}-cli-*
path: out/php-binaries
merge-multiple: true

- name: Publish PHP CLI artifacts to Apps CDN
run: |
set -euo pipefail

if [ "$DRY_RUN" != "true" ] && [ -z "${WPCOM_API_TOKEN:-}" ]; then
echo "WPCOM_API_TOKEN secret is required to upload PHP CLI artifacts to Apps CDN."
exit 1
fi

upload_results_file="${PWD}/out/php-binaries/apps-cdn-upload-results.json"

bundle exec fastlane publish_php_cli_binaries \
version:"${PHP_VERSION}" \
artifacts_dir:"${PWD}/out/php-binaries" \
visibility:"${PHP_CLI_VISIBILITY}" \
output_file:"${upload_results_file}"

echo "### Apps CDN PHP CLI upload" >> "$GITHUB_STEP_SUMMARY"
echo "" >> "$GITHUB_STEP_SUMMARY"
if [ "$DRY_RUN" = "true" ]; then
echo "Dry run completed for PHP ${PHP_VERSION} CLI artifacts with ${PHP_CLI_VISIBILITY} visibility." >> "$GITHUB_STEP_SUMMARY"
else
echo "Uploaded PHP ${PHP_VERSION} CLI artifacts with ${PHP_CLI_VISIBILITY} visibility." >> "$GITHUB_STEP_SUMMARY"
fi
echo "" >> "$GITHUB_STEP_SUMMARY"

PHP_CLI_UPLOAD_RESULTS_FILE="$upload_results_file" ruby -rjson -e '
results = JSON.parse(File.read(ENV.fetch("PHP_CLI_UPLOAD_RESULTS_FILE")))

File.open(ENV.fetch("GITHUB_STEP_SUMMARY"), "a") do |summary|
summary.puts "| File | Apps CDN URL |"
summary.puts "| --- | --- |"

results.each do |file_name, result|
url = result["cdn_url"].to_s
url_output = url.empty? ? "Dry run (not uploaded)" : "<#{url}>"
summary.puts "| `#{file_name}` | #{url_output} |"
end
end
'
You are viewing a condensed version of this merge commit. You can view the full changes here.