This commit updates the SnappyMail integration app for Nextcloud to support version 32 and the upcoming version 33.
Key changes:
- Updated `info.xml` to allow `max-version="33"`.
- Refactored `AdminSettings`, `Application`, `FetchController`, `PageController`, `Settings` (command), and `InstallStep` to use Dependency Injection instead of the deprecated `\OC::$server` service container.
- Replaced deprecated `OC_User`, `OC_Util` (e.g. `addScript`), and `OC_App` calls with their `OCP` (public API) counterparts or modern equivalents.
- Updated `SnappyMailHelper` to use `\OCP\Server::get()` for static context access where DI is not possible.
- Moved script and style registration from Controllers (using deprecated `Util::addScript`) to templates using `script()` and `style()` helpers.
- Updated `Settings` console command to extend `Symfony\Component\Console\Command\Command` instead of deprecated `OC\Core\Command\Base`.
- Addressed PHP 8.4+ compatibility by adding explicit property types and nullable types where necessary in the integration code.
Co-authored-by: nextgen-networks <21206978+nextgen-networks@users.noreply.github.com>
* Fix (docker): Use `127.0.0.1` instead of `localhost` to test snappymail in `entrypoint.sh`
* Run build on PR but don't push
* Login only on tags
* Fix test
* Enhancement: Add Docker Hub image
* Push to ghcr.io
* Add all `org.opencontainers.image.xxx` labels using `--label` instead of `LABEL`
* Change `php-fpm` to listen on `:9000` to expose prometheus metrics via `php-fpm_exporter`
* Include `yarn.lock` to speed up builds
* Reorder
* Use correct sha for pr
* Add logging before overriding values in config
* Add `DEBUG=true` env var for verbose `entrypoint.sh` logs
* Print php exception when snappymail fails to generate data directory and config file on the very first time
* Log snappymail version
* Fix COPY statement
* Add .dockerignore
* Add `USER` and `ENTRYPOINT`
* Update `.dockerignore`
* Add docker image test
* Push only if image test succeeds
* Log when startup is successful
* Use plain `docker build` in `build_and_test.sh`
* Fix test output