https://github.com/fusonic/php-extensions
The Fusonic PHP Extensions project aggregates several thoughtfully designed, reusable class libraries, which can be used in modern PHP Symfony application development.
https://github.com/fusonic/php-extensions
Last synced: about 1 year ago
JSON representation
The Fusonic PHP Extensions project aggregates several thoughtfully designed, reusable class libraries, which can be used in modern PHP Symfony application development.
- Host: GitHub
- URL: https://github.com/fusonic/php-extensions
- Owner: fusonic
- Created: 2021-01-26T13:20:02.000Z (over 5 years ago)
- Default Branch: master
- Last Pushed: 2025-07-17T08:33:43.000Z (about 1 year ago)
- Last Synced: 2025-07-18T06:54:49.812Z (about 1 year ago)
- Language: PHP
- Homepage:
- Size: 498 KB
- Stars: 5
- Watchers: 7
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# PHP Extensions
## Packages
The `packages` directory contains the source code for the packages. Everything in here will be published and available
to the public (For example, Gitlab CI related files or internal documentation must not be in here!)
### Available packages
- [assert](packages/assert/README.md)
- [api-documentation-bundle-bundle](packages/api-documentation-bundle/README.md)
- [csv-reader](packages/csv-reader/README.md)
- [ddd-extensions](packages/ddd-extensions/README.md)
- [framework-bundle](packages/framework-bundle/README.md)
- [http-kernel-bundle](packages/http-kernel-bundle/README.md)
- [messenger-mailer-bundle](packages/messenger-mailer-bundle/README.md)
## Development
A Docker container with PHP and Composer is included.
To run it execute `./docker/php-cli/run.sh` or `./docker/php-cli/run.sh packages/` to set a given
package as the working directory.
## Tests
The `ci/packages/` Gitlab CI file should contain the tests for a package.
## Publishing
Each package must have a public Git repository to which the source will be published.
The changes of packages merged into the master branch will automatically be published (as `dev-master`). In order to publish a new
version, make sure to increase the version inside the `composer.json` file of the package. Once this is merged a manual
`publish` pipeline step can be triggered.
Publishing stages for individual packages are defined in `ci/packages/` Gitlab CI file.
# CI Pipelines
Required CI/CD variables:
* `GIT_EMAIL`: E-Mail address used to push to the public package Git repository.
* `GIT_NAME`: Name used to push to the public package Git repository.
* `SSH_PRIVATE_KEY`: Private SSH key for pushing to the public Git repository.