Skip to content

fix: resolve Octane Alpine Docker build dependencies#45

Merged
ibourgeois merged 2 commits intomainfrom
fix/44-octane-docker-build
Apr 5, 2026
Merged

fix: resolve Octane Alpine Docker build dependencies#45
ibourgeois merged 2 commits intomainfrom
fix/44-octane-docker-build

Conversation

@ibourgeois
Copy link
Copy Markdown
Contributor

Summary

  • add the missing Alpine development packages required for the generated Octane Dockerfile to compile Swoole on php:8.4-cli-alpine
  • keep the Octane runtime feature set intact instead of disabling optional Swoole capabilities
  • add Dockerfile regression coverage so the generated stub keeps the required packages in place

Testing

php84 vendor/bin/pest tests/Unit/Docker/DockerfileGeneratorTest.php
php84 "/Users/ibourgeois/Library/Application Support/Herd/bin/composer" test

Manual validation:

  • ran a Docker smoke build against the generated Octane Dockerfile shape in a temporary app directory
  • the build progressed past the original libbrotlienc and libssl configure failures and into the long Swoole compile stage

Closes #44

Copilot AI review requested due to automatic review settings April 5, 2026 06:25
Copy link
Copy Markdown

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR fixes Alpine-based Octane Docker builds by ensuring the generated Octane Dockerfile installs the missing Alpine development packages needed to compile Swoole on php:8.4-cli-alpine, and adds regression test coverage to prevent the packages from being dropped in future stub edits.

Changes:

  • Add brotli-dev and openssl-dev to the Octane Dockerfile stub before pecl install swoole.
  • Extend the Dockerfile generator unit test to assert the Octane output includes these dependencies (and keeps them in the expected apk add block).

Reviewed changes

Copilot reviewed 2 out of 2 changed files in this pull request and generated 1 comment.

File Description
stubs/docker/octane.Dockerfile.stub Adds Alpine dev packages required for Swoole compilation (Brotli + OpenSSL) in the Octane image.
tests/Unit/Docker/DockerfileGeneratorTest.php Adds assertions to ensure the generated Octane Dockerfile continues to include these packages.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread tests/Unit/Docker/DockerfileGeneratorTest.php Outdated
@ibourgeois ibourgeois merged commit 33c5713 into main Apr 5, 2026
12 checks passed
@ibourgeois ibourgeois deleted the fix/44-octane-docker-build branch April 5, 2026 16:24
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.

fix: resolve Octane Docker build failure on Alpine

2 participants