是否可以在使用puPHPet提供的环境中升级PHP


Is it possible to upgrade PHP in an environment provisioned using puPHPet?

如果我在OSX上使用puPHPet提供了一个流浪箱,是否可以通过简单的配置文件更改将PHP版本从5.5升级到5.6,还是需要从头开始重新提供?

或者,通过访客操作系统包管理器升级PHP更简单吗,在本例中是Ubuntu 14.04。这里的用例是一个单一的开发环境(不是一个大团队),但我可能稍后想为第二个开发人员和/或云服务提供相同的环境,然后需要最新的稳定PHP。

更新

我试着按照建议编辑puppet/config.yml:

php:
    install: '1'
    version: '56'
    composer: '1'
    composer_home: ''
    modules:
        php:
            - cli
            - intl
            - mcrypt
        pear: {  }
        pecl:
            - pecl_http
    ini:
        display_errors: On
        error_reporting: '-1'
        session.save_path: /var/lib/php/session
    timezone: Europe/London
    mod_php: 0

然后是vagrant reload,但php -v仍然显示5.5.14。我还尝试了vagrant reload --provision,这似乎不仅仅是重新启动VM(通过配置脚本运行),但PHP版本没有改变。

据我所知,这应该很容易做到。

调整puphpet/config.yml以反映您的更改,然后运行vagrant provision

为了澄清,为了升级php版本,我调整了:

php:
    install: '1'
    version: '54'

php:
    install: '1'
    version: '56'

我现在在config.yml中这个信息的确切位置在109到111行。但文件可能会因添加或不添加的功能而异,所以不要过于依赖这些功能。

事实上,我不认为你能做到这一点,更深层的是木偶不知道如何做到。

尽管如此,你可以添加一个自定义脚本,这将起到作用,但对我来说,最好的解决方案是销毁并重新启动你的VM(根据流浪者哲学,我想这应该不是问题)。

(我试图删除vm中的/.ppuhpet stuff/目录,因为我认为流浪者在重新启动流浪者条款后会相信这是一个干净的安装,但它并没有更好地工作。)

祝好运

config.yml中将PHP版本从'54'更新到'56'后,在一个CentOS流浪箱中也遇到了同样的问题。

CCD_ 7和CCD_。

CCD_ 9和CCD_。

为了升级php版本,我不得不销毁VM(vagrant destroy),在config.yml中更改版本,然后进行新的vagrant up

对于vagrant provision也不适用。最后,我通过SSH登录并手动更新php。