{"id":21638775,"url":"https://github.com/novactive/novaezmaintenancebundle","last_synced_at":"2025-04-11T16:51:13.844Z","repository":{"id":46732709,"uuid":"315828554","full_name":"Novactive/NovaeZMaintenanceBundle","owner":"Novactive","description":null,"archived":false,"fork":false,"pushed_at":"2024-09-18T08:50:06.000Z","size":49,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":7,"default_branch":"master","last_synced_at":"2025-04-10T20:50:51.433Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Novactive.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2020-11-25T04:28:14.000Z","updated_at":"2022-01-21T19:06:07.000Z","dependencies_parsed_at":"2024-04-27T03:15:20.652Z","dependency_job_id":null,"html_url":"https://github.com/Novactive/NovaeZMaintenanceBundle","commit_stats":{"total_commits":20,"total_committers":4,"mean_commits":5.0,"dds":0.55,"last_synced_commit":"45ea78401861d3d2d5511a22af5cfa1a68f7580c"},"previous_names":[],"tags_count":6,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novactive%2FNovaeZMaintenanceBundle","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novactive%2FNovaeZMaintenanceBundle/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novactive%2FNovaeZMaintenanceBundle/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Novactive%2FNovaeZMaintenanceBundle/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Novactive","download_url":"https://codeload.github.com/Novactive/NovaeZMaintenanceBundle/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248442988,"owners_count":21104312,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-25T04:11:36.802Z","updated_at":"2025-04-11T16:51:13.823Z","avatar_url":"https://github.com/Novactive.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Novactive eZ Maintenance Bundle\n\n----\n\nThis repository is what we call a \"subtree split\": a read-only copy of one directory of the main repository. \nIt is used by Composer to allow developers to depend on specific bundles.\n\nIf you want to report or contribute, you should instead open your issue on the main repository: https://github.com/Novactive/Nova-eZPlatform-Bundles\n\nDocumentation is available in this repository via `.md` files but also packaged here: https://novactive.github.io/Nova-eZPlatform-Bundles/master/MaintenanceBundle/README.md.html\n\n----\n\n\n[![Downloads](https://img.shields.io/packagist/dt/novactive/ezmaintenancebundle.svg?style=flat-square)](https://packagist.org/packages/novactive/ezmaintenance)\n[![Latest version](https://img.shields.io/github/release/Novactive/NovaeZMaintenanceBundle.svg?style=flat-square)](https://github.com/Novactive/NovaeZMaintenanceBundle/releases)\n[![License](https://img.shields.io/packagist/l/novactive/ezmaintenancebundle?style=flat-square)](LICENSE)\n\nEasily enable a Maintenance page.\n\n\n## Installation\n\n### Step 1: Download using composer\n\nAdd the lib to your composer.json, run `composer require novactive/ezmaintenancebundle` to refresh dependencies.\n\n### Step 2: Enable the bundle\n\nThen inject the bundle in the `bundles.php` of your application.\n\n```php\n     Novactive\\NovaeZMaintenanceBundle\\NovaeZMaintenanceBundle::class =\u003e [ 'all'=\u003e true ],\n```\n\n### Step 3: Add the default routes\n\nActivate the sroutes:\n\n```yml\n_novaezmaintenance_routes:\n    resource: '@NovaeZMaintenanceBundle/Resources/config/routing/main.yaml'\n```\n\n### Step 4: Clear the cache and check\n\n```bash\nphp app|ezpublish/console cache:clear --env=dev\n```\n\n### Step 5: check X-Maintenance response header to VCL\nMaintenance page will return 503 status code and VCL will abandon it,\nSo update your vcl to force displaying response with 503 and X-Maintenance header\n\n```vcl\nif (bereq.http.accept ~ \"application/vnd.fos.user-context-hash\"\n        \u0026\u0026 beresp.status \u003e= 500 \u0026\u0026 !beresp.http.X-Maintenance\n    ) {\n        return (abandon);\n    }\n```\n\n## Configuration\n\n```yaml\nnova_ezmaintenance:\n    system:\n        default:\n            enable: false # to enable to capability\n            template: '@ibexadesign/maintenance.html.twig' # the template you want as a maintenace page\n            lock_file_id: 'plop.lock' # the name of the lock file in the cluster\n\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovactive%2Fnovaezmaintenancebundle","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fnovactive%2Fnovaezmaintenancebundle","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fnovactive%2Fnovaezmaintenancebundle/lists"}