{"id":15061419,"url":"https://github.com/district09/drupal-copy-profile","last_synced_at":"2025-10-04T21:31:11.086Z","repository":{"id":56968661,"uuid":"79967673","full_name":"district09/drupal-copy-profile","owner":"district09","description":"Composer Plugin to assist when developing an installation profile","archived":true,"fork":false,"pushed_at":"2019-08-13T06:38:41.000Z","size":25,"stargazers_count":0,"open_issues_count":2,"forks_count":0,"subscribers_count":3,"default_branch":"develop","last_synced_at":"2024-09-25T23:18:59.839Z","etag":null,"topics":["composer","composer-plugin","d09check22","drupal","installation-profile","web"],"latest_commit_sha":null,"homepage":"","language":"PHP","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/district09.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2017-01-25T00:11:54.000Z","updated_at":"2024-09-24T12:36:28.000Z","dependencies_parsed_at":"2022-08-21T10:50:41.668Z","dependency_job_id":null,"html_url":"https://github.com/district09/drupal-copy-profile","commit_stats":null,"previous_names":["digipolisgent/drupal-copy-profile"],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/district09%2Fdrupal-copy-profile","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/district09%2Fdrupal-copy-profile/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/district09%2Fdrupal-copy-profile/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/district09%2Fdrupal-copy-profile/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/district09","download_url":"https://codeload.github.com/district09/drupal-copy-profile/tar.gz/refs/heads/develop","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":219876760,"owners_count":16554786,"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":["composer","composer-plugin","d09check22","drupal","installation-profile","web"],"created_at":"2024-09-24T23:19:22.600Z","updated_at":"2025-10-04T21:31:10.740Z","avatar_url":"https://github.com/district09.png","language":"PHP","funding_links":[],"categories":[],"sub_categories":[],"readme":"# drupal-copy-profile\n\n[![Latest Stable Version](https://poser.pugx.org/digipolisgent/drupal-copy-profile/v/stable)](https://packagist.org/packages/digipolisgent/drupal-copy-profile)\n[![Latest Unstable Version](https://poser.pugx.org/digipolisgent/drupal-copy-profile/v/unstable)](https://packagist.org/packages/digipolisgent/drupal-copy-profile)\n[![Total Downloads](https://poser.pugx.org/digipolisgent/drupal-copy-profile/downloads)](https://packagist.org/packages/digipolisgent/drupal-copy-profile)\n[![License](https://poser.pugx.org/digipolisgent/drupal-copy-profile/license)](https://packagist.org/packages/digipolisgent/drupal-copy-profile)\n\n[![Build Status](https://travis-ci.org/digipolisgent/drupal-copy-profile.svg?branch=develop)](https://travis-ci.org/digipolisgent/drupal-copy-profile)\n[![Maintainability](https://api.codeclimate.com/v1/badges/1405d93eca40f3ac69f3/maintainability)](https://codeclimate.com/github/digipolisgent/drupal-copy-profile/maintainability)\n[![Test Coverage](https://api.codeclimate.com/v1/badges/1405d93eca40f3ac69f3/test_coverage)](https://codeclimate.com/github/digipolisgent/drupal-copy-profile/test_coverage)\n[![PHP 7 ready](https://php7ready.timesplinter.ch/digipolisgent/drupal-copy-profile/develop/badge.svg)](https://travis-ci.org/digipolisgent/drupal-copy-profile)\n\nComposer plugin to assist in installation profile development. This allows the install\nprofile to be used as if your project is like `drupal-composer/drupal-project`, with\nyour project being an install profile to test and being the root project.\n\n## Credits\n\nThis project is basically a rip-off of `drupal-composer/drupal-scaffold`. Thanks\nto the developers of that package for the inspiration.\n\n## Usage\n\nRun `composer require --dev digipolisgent/drupal-copy-profile:dev-master` in your\ncomposer project before installing or updating `drupal/core`.\n\nOnce drupal-copy-profile is required by your project, it will automatically copy\nthe install profile in the project directory to the correct profiles directory in\nan installed drupal site.\n\nYou can use this easily by requiring these packages in the `require-dev` section\nof the composer.json.\n\n* drupal/core\n* composer/installers\n* drupal-composer/drupal-scaffold\n\nYou'll also have to configure the drupal-scaffold paths as follows:\n\n```\n    \"extra\": {\n        \"installer-paths\": {\n            \"web/core\": [\"type:drupal-core\"],\n            \"web/libraries/{$name}\": [\"type:drupal-library\"],\n            \"web/modules/contrib/{$name}\": [\"type:drupal-module\"],\n            \"web/profiles/contrib/{$name}\": [\"type:drupal-profile\"],\n            \"web/themes/contrib/{$name}\": [\"type:drupal-theme\"],\n            \"drush/contrib/{$name}\": [\"type:drupal-drush\"]\n        },\n    }\n```\n\n## Configuration\n\nYou can configure the plugin with providing some settings in the `extra` section\nof your root `composer.json`.\n\n```json\n{\n  \"extra\": {\n    \"drupal-copy-profile\": {\n      \"excludes\": [\n        \"scripts\"\n      ],\n      \"profile-name\": \"lightning\",\n      \"web-root\": \"www\",\n      \"omit-defaults\": false\n    }\n  }\n}\n```\n\nWith the `drupal-copy-profile` option `excludes`, you can provide additional paths\nthat should not be copied from the root project. The plugin provides these default\nincludes:\n\n```\nweb-root\nvendor-path\n.git\n```\n\n`web-root` is configurable through the options, but defaults to the location where\n`drupal/core` is installed. `vendor-path` is taken from the composer config and\ndefaults to `vendor`\n\nWhen setting `omit-defaults` to `true`, the default excludes will not be used; in\nthis instance, only those files explicitly listed in the `excludes` options will\nbe considered. If `omit-defaults` is `false` (the default), then any items listed\nin `excludes` will be in addition to the usual defaults.\n\nThe `profile-name` option allows you to set the install profile name. It defaults\nto the project name of the root package (the second part of the package name)\n\nThe `web-root` option allows you to set an alternative path to copy the profile to.\nIt defaults to the install location of `drupal/core`, which should be fine.\n\n## Custom command\n\nThe plugin by default is executed on each composer install and update. If you want\nto call it manually, you can add the command callback to the `scripts`-section of\nyour root `composer.json`, like this:\n\n```json\n{\n  \"scripts\": {\n    \"drupal-copy-profile\": \"DigipolisGent\\\\DrupalCopyProfile\\\\Plugin::copyProfile\"\n  }\n}\n```\n\nAfter that you can manually copy the profile according to your configuration by\nusing `composer drupal-scaffold`.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdistrict09%2Fdrupal-copy-profile","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdistrict09%2Fdrupal-copy-profile","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdistrict09%2Fdrupal-copy-profile/lists"}