PHPackages                             loadsys/puphpet-release - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [DevOps &amp; Deployment](/categories/devops)
4. /
5. loadsys/puphpet-release

Abandoned → [phpfu/puphpet](/?search=phpfu%2Fpuphpet)Puphpet-release[DevOps &amp; Deployment](/categories/devops)

loadsys/puphpet-release
=======================

Makes an unpacked version of the vagrant environment generated by puphpet.com available through composer and Packagist.DANGEROUS! Overwrites non-vendor files in your project! Seriously, don't use this, or at least read the readme VERY carefully.

0.1.0(10y ago)4322[7 issues](https://github.com/phpfu/puphpet/issues)MITRuby

Since Feb 12Pushed 10y ago8 watchersCompare

[ Source](https://github.com/phpfu/puphpet)[ Packagist](https://packagist.org/packages/loadsys/puphpet-release)[ RSS](/packages/loadsys-puphpet-release/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (1)Versions (4)Used By (0)

puphpet-release
===============

[](#puphpet-release)

Makes an unpacked version of the vagrant environment generated by puphpet.com available via composer and Packagist.

This repo represents a snapshot of the PuPHPet project. It includes minimal tooling designed to fetch a copy of the PuPHPet release ZIP file and import it back into this project. This project includes a composer.json file, making it possible to include puphpet in another target project using composer.

There are a still a number of things that could stand to improve. For those, see:

- [puphpet/puphpet#1320](https://github.com/puphpet/puphpet/issues/1320)
- [\#1](https://github.com/phpfu/puphpet/issues/1)

⚠️ Big Important Warning ⚠️
---------------------------

[](#warning-big-important-warning-warning)

This package uses a composer custom installer that does very non-standard, typically bad, things, including overwriting files in your project outside of the `vendor/` directory.

This is something that composer [very explicitly](https://github.com/composer/installers#should-we-allow-dynamic-package-types-or-paths-no) says we **should not be doing.** We break this very good and wise rule only because the tools we're working with (vagrant and puphpet) leave us with no other practical choice.

❗ **Using this package will cause any root level `/Vagrantfile` and `/puphpet/` folder in your existing project to be unceremoniously overwritten without notice, and a `/.gitignore` to be created or modified.** Do not complain about this. This is what this package is designed to do and you've been duly warned of its danger.

Requirements
------------

[](#requirements)

- [composer](https://getcomposer.org/)
- [vagrant](https://www.vagrantup.com/)
- A project of your own in which you'd like to use PuPHPet via composer.

Installation
------------

[](#installation)

Run the following command to include the vagrant environment provided by PuPHPet in your project:

```
$ composer require --dev "phpfu/puphpet:@stable"
```

Usage
-----

[](#usage)

Once you've included the package as instructed above, you should be able to run vagrant with the default configuration immediately:

```
vagrant up
```

### Customizing

[](#customizing)

To customize the vagrant box, you have two choices:

- Copy the default `/puphpet/config.yaml` file provided to `/puphpet.yaml` and edit it to suit your needs. When an existing `/puphpet.yaml` file is found in your project, it will be copied to `/puphpet/config.yaml` for this package to use.

or

- You can generate an appropriate `config.yaml` file using the puphpet.com web interface. Once you download the resulting `puphpet.zip` file, take **just** the `puphpet/config.yaml` file and save it into your project as `puphpet.yaml`.

In either case, your `puphpet.yaml` file should be committed to your own project's source control system so the vagrant virtual machine remains identical for all developers on the project.

@TODO: What about `files/` and `exec-*` scripts?

### Running the release scraper

[](#running-the-release-scraper)

This project includes a shell script designed to fetch the latest puphpet.zip file from puphpet.com, unpack it, and commit it back into this repo.

```
git clone git@github.com:loadsys/puphpet-release.git
cd puphpet-release
bin/scrape-release.sh
```

This script is intended be scheduled to run via cron to update the repo periodically. It must be run from a clone of the remote repo that Packagist is aware of and that has ssh permission to push back to the remote repository.

Packagist expects semantic versioning, and this presents a challenge. The puphpet.com project [does not conform to semver](https://github.com/puphpet/puphpet/issues/777#issuecomment-51832044) and the project makes backwards-incompatible changes frequently. To work around this, the release script automatically tags each new version using a minor number. This allows consuming projects to target a specific point release that will never auto-update in a breaking way.

The consequence is that consuming projects **must** manually update their targeted version and verify it is still operational for their needs (as well as check that their `puphpet.yaml` file is up to date.)

Contributing
------------

[](#contributing)

See [the Contributing section](https://github.com/loadsys/puphpet-release-composer-installer#contributing) of the [`loadsys/puphpet-release-composer-installer`](https://github.com/loadsys/puphpet-release-composer-installer) package for instructions on working with these two projects.

License
-------

[](#license)

[MIT](https://github.com/loadsys/puphpet-release/blob/master/LICENSE). In particular, all [PuPHPet](http://puphpet.com) work belongs to the original authors. This project is strictly for our own convenience.

Copyright
---------

[](#copyright)

© [Loadsys Web Strategies](http://loadsys.com) 2015

###  Health Score

23

—

LowBetter than 27% of packages

Maintenance0

Infrequent updates — may be unmaintained

Popularity13

Limited adoption so far

Community16

Small or concentrated contributor base

Maturity55

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 84% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~120 days

Total

3

Last Release

3873d ago

### Community

Maintainers

![](https://www.gravatar.com/avatar/58c6913a72757502a801ebc71f995eb1c4f7a53a7de7314a20b9a1f1d6131b60?d=identicon)[jtyost2](/maintainers/jtyost2)

![](https://www.gravatar.com/avatar/2380c6ad9546e6c8ce5c5b641f5a4bce0c4d3e7f3a377dc287936dff50cc3064?d=identicon)[ricog](/maintainers/ricog)

---

Top Contributors

[![beporter](https://avatars.githubusercontent.com/u/637270?v=4)](https://github.com/beporter "beporter (21 commits)")[![jadb](https://avatars.githubusercontent.com/u/33527?v=4)](https://github.com/jadb "jadb (3 commits)")[![justinyost](https://avatars.githubusercontent.com/u/85320?v=4)](https://github.com/justinyost "justinyost (1 commits)")

---

Tags

puppetvagrantpuphpetdangerousoverwrites-files

### Embed Badge

![Health badge](/badges/loadsys-puphpet-release/health.svg)

```
[![Health](https://phpackages.com/badges/loadsys-puphpet-release/health.svg)](https://phpackages.com/packages/loadsys-puphpet-release)
```

###  Alternatives

[deployer/deployer

Deployment Tool

11.0k25.4M207](/packages/deployer-deployer)[felixfbecker/language-server-protocol

PHP classes for the Language Server Protocol

22476.7M6](/packages/felixfbecker-language-server-protocol)[shopware/deployment-helper

Shopware deployment tools

19305.3k5](/packages/shopware-deployment-helper)[yousign/zdd-message-bundle

Assert Zero Downtime Deployment compliance for messages

28113.5k](/packages/yousign-zdd-message-bundle)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
