Support for Drupal 7 is ending on 5 January 2025—it’s time to migrate to Drupal 10! Learn about the many benefits of Drupal 10 and find migration tools in our resource center.
@DamZ pointed out that we could use the project packaging checkout to analyze dependencies instead of doing an additional checkout.
Comments
Comment #1
drummFor #2304983: 'wget' used by packager has trouble downloading certain files from GitHub (like TinyMCE), we do want a git:// checkout, not the file-based checkout that seems to be used currently.
The packager is getting ready to have a local clone, but I'm not sure how readily project_dependency can use it.
Comment #2
drumm#1028950: Fix packaging scripts to checkout from sane/stable Git URLs instead of hard-coding the local filesystem is now done. Within
DrupalorgProjectPackageRelease
,$this->repository
is the Git clone used.I'm not sure if there is a practical way to use that. As far as I know, project dependency is processed after packaging, not during; so the clone will be gone by the time project dependency runs.
Comment #3
drummI see what is happening now, the checkout process is good as-is. The error I was seeing was a permissions conflict on
devwww:/var/tmp/project_dependency_sourcecode_directory
. That's not surprising with how devwww is set up.We should not "check out directly from the repository (a file-based checkout instead of git:// checkout)", that forces this to need to run on util or the new git1/2 servers. Currently, this is able to run just about anywhere.
What could change is project module moving
within the
DrupalorgProjectPackageRelease
class, so the repository path is available. However, that would either force dependencies to run during packaging, or have two separate code paths for running during packaging or running independently. Neither seems like a great idea for maintainability.I think this is working well as-is.