Skip to content

Commit

Permalink
add more extensions for frankenphp build
Browse files Browse the repository at this point in the history
  • Loading branch information
shyim committed Mar 29, 2024
1 parent eb5ac2b commit e79c082
Show file tree
Hide file tree
Showing 10 changed files with 489 additions and 3 deletions.
7 changes: 4 additions & 3 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -1,3 +1,4 @@
packages
*.rsa
*.pub
/packages
/*.rsa
/*.pub
/repositories
27 changes: 27 additions & 0 deletions Makefile
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
current_dir = $(shell pwd)

init:
melange keygen

build:
melange build \
$(package) \
-r packages/ \
-k melange.rsa.pub \
-r https://packages.wolfi.dev/os \
-k https://packages.wolfi.dev/os/wolfi-signing.rsa.pub \
--signing-key melange.rsa \
--arch host
melange sign-index packages/x86_64/APKINDEX.tar.gz --signing-key melange.rsa

test:
echo "https://packages.wolfi.dev/os" > repositories
echo "/packages" >> repositories
docker \
run \
--rm \
-v $(current_dir)/packages:/packages \
-v $(current_dir)/repositories:/etc/apk/repositories \
-v $(current_dir)/melange.rsa.pub:/etc/apk/keys/melange.rsa.pub \
-p 8000:8000 \
-it cgr.dev/chainguard/wolfi-base
55 changes: 55 additions & 0 deletions php-frankenphp-8.3-excimer.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
package:
name: php-frankenphp-8.3-excimer
version: 1.2.1
epoch: 0
description: "Excimer is a PHP extension that provides an interrupting timer and a low-overhead sampling profiler."
copyright:
- license: Apache-2.0
dependencies:
runtime:
- ${{package.name}}-config
- php-frankenphp-8.3

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- php-frankenphp-8.3
- php-frankenphp-8.3-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/wikimedia/mediawiki-php-excimer
tag: "${{package.version}}"
expected-commit: 986209d032a1cc53ac930e44f50acb74ecee8816

- name: Prepare build
runs: phpize

- name: Configure
runs: |
set -x
./configure
- uses: autoconf/make

- name: Make install
runs: |
set -x
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=excimer.so" > "${{targets.subpkgdir}}/etc/php/conf.d/excimer.ini"
update:
enabled: true
github:
identifier: wikimedia/mediawiki-php-excimer
use-tag: true
54 changes: 54 additions & 0 deletions php-frankenphp-8.3-imagick.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package:
name: php-frankenphp-8.3-imagick
version: 3.7.0
epoch: 0
description: "PHP extension for ImageMagick"
copyright:
- license: PHP-3.01
dependencies:
runtime:
- ${{package.name}}-config
- imagemagick
- php-frankenphp-8.3

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- imagemagick-dev
- php-frankenphp-8.3
- php-frankenphp-8.3-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/Imagick/imagick
tag: "${{package.version}}"
expected-commit: 52ec37ff633de0e5cca159a6437b8c340afe7831

- name: Prepare build
runs: phpize

- name: Configure
runs: |
set -x
./configure
- name: Make install
runs: |
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=imagick.so" > "${{targets.subpkgdir}}/etc/php/conf.d/imagick.ini"
update:
enabled: true
github:
identifier: Imagick/imagick
use-tag: true
61 changes: 61 additions & 0 deletions php-frankenphp-8.3-memcached.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
package:
name: php-frankenphp-8.3-memcached
version: 3.2.0
epoch: 0
description: "A PHP extension for Memcached"
copyright:
- license: PHP-3.01
dependencies:
runtime:
- ${{package.name}}-config
- php-frankenphp-8.3

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- libmemcached-dev
- php-frankenphp-8.3
- php-frankenphp-8.3-dev
- php-frankenphp-8.3-igbinary-dev
- zlib-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/php-memcached-dev/php-memcached
tag: v${{package.version}}
expected-commit: d1cb3ae87be5382444322118f87324f4044d13b0

- name: Prepare build
runs: phpize

- name: Configure
runs: ./configure

- uses: autoconf/make

- name: Make install
runs: |
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=memcached.so" > "${{targets.subpkgdir}}/etc/php/conf.d/memcached.ini"
- name: ${{package.name}}-dev
description: PHP 8.3 memcached development headers
pipeline:
- uses: split/dev

update:
enabled: true
github:
identifier: php-memcached-dev/php-memcached
strip-prefix: v
tag-filter: v
59 changes: 59 additions & 0 deletions php-frankenphp-8.3-msgpack.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
package:
name: php-frankenphp-8.3-msgpack
version: 2.2.0
epoch: 0
description: "A PHP extension for msgpack"
copyright:
- license: BSD-3-Clause
dependencies:
runtime:
- ${{package.name}}-config
- php-frankenphp-8.3

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- php-frankenphp-8.3
- php-frankenphp-8.3-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/msgpack/msgpack-php
# The tag has a msgpack- prefix, but the version does not.
tag: msgpack-${{package.version}}
expected-commit: 472e987b916b51df3d8e8fabd0608e243419c5d8

- name: Prepare build
runs: phpize

- name: Configure
runs: ./configure --with-msgpack

- uses: autoconf/make

- name: Make install
runs: |
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=msgpack.so" > "${{targets.subpkgdir}}/etc/php/conf.d/msgpack.ini"
- name: ${{package.name}}-dev
description: PHP 8.3 msgpack development headers
pipeline:
- uses: split/dev

update:
enabled: true
github:
identifier: msgpack/msgpack-php
tag-filter-prefix: msgpack-
strip-prefix: msgpack-
54 changes: 54 additions & 0 deletions php-frankenphp-8.3-opentelemetry.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,54 @@
package:
name: php-frankenphp-8.3-opentelemetry
version: 1.0.1
epoch: 0
description: "OpenTelemetry PHP auto-instrumentation extension"
copyright:
- license: Apache-2.0
dependencies:
runtime:
- ${{package.name}}-config
- php-frankenphp-8.3

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- php-frankenphp-8.3
- php-frankenphp-8.3-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/open-telemetry/opentelemetry-php-instrumentation
tag: ${{package.version}}
expected-commit: 7010de909f8fa65ae83ffe3ffa815c82c71842c6

- name: Prepare build
runs: cd ext && phpize

- name: Configure
runs: |
set -x
cd ext
./configure
- name: Make install
runs: |
set -x
cd ext
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=opentelemetry.so" > "${{targets.subpkgdir}}/etc/php/conf.d/opentelemetry.ini"
update:
enabled: true
github:
identifier: open-telemetry/opentelemetry-php-instrumentation
64 changes: 64 additions & 0 deletions php-frankenphp-8.3-redis.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,64 @@
package:
name: php-frankenphp-8.3-redis
version: 6.0.2
epoch: 0
description: "A PHP extension for Redis"
copyright:
- license: PHP-3.01
dependencies:
runtime:
- ${{package.name}}-config
- php-frankenphp-8.3
- php-frankenphp-8.3-igbinary

environment:
contents:
packages:
- autoconf
- build-base
- busybox
- php-frankenphp-8.3
- php-frankenphp-8.3-dev
- php-frankenphp-8.3-igbinary-dev

pipeline:
- uses: git-checkout
with:
repository: https://github.com/phpredis/phpredis
tag: ${{package.version}}
expected-commit: 62cf943fecc5182c6329b332df43cf28012cef55

- name: Prepare build
runs: phpize

- name: Configure
runs: ./configure --enable-redis-igbinary

- uses: autoconf/make

- name: Make install
runs: |
INSTALL_ROOT="${{targets.destdir}}" DESTDIR="${{targets.destdir}}" make install
subpackages:
- name: ${{package.name}}-config
dependencies:
provides:
- php-redis-config=${{package.full-version}}
pipeline:
- runs: |
mkdir -p "${{targets.subpkgdir}}/etc/php/conf.d"
echo "extension=redis.so" > "${{targets.subpkgdir}}/etc/php/conf.d/redis.ini"
- name: ${{package.name}}-dev
description: PHP 8.3 redis development headers
dependencies:
provides:
- php-redis-dev=${{package.full-version}}
pipeline:
- uses: split/dev

update:
enabled: true
github:
identifier: phpredis/phpredis
Loading

0 comments on commit e79c082

Please sign in to comment.