{"action":"created","issue":{"url":"https://api.github.com/repos/phansible/phansible/issues/262","labels_url":"https://api.github.com/repos/phansible/phansible/issues/262/labels{/name}","comments_url":"https://api.github.com/repos/phansible/phansible/issues/262/comments","events_url":"https://api.github.com/repos/phansible/phansible/issues/262/events","html_url":"https://github.com/phansible/phansible/issues/262","id":122615100,"number":262,"title":"PECL package: .so filename and package name can differ","user":{"login":"netsensei","id":105355,"avatar_url":"https://avatars.githubusercontent.com/u/105355?v=3","gravatar_id":"","url":"https://api.github.com/users/netsensei","html_url":"https://github.com/netsensei","followers_url":"https://api.github.com/users/netsensei/followers","following_url":"https://api.github.com/users/netsensei/following{/other_user}","gists_url":"https://api.github.com/users/netsensei/gists{/gist_id}","starred_url":"https://api.github.com/users/netsensei/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/netsensei/subscriptions","organizations_url":"https://api.github.com/users/netsensei/orgs","repos_url":"https://api.github.com/users/netsensei/repos","events_url":"https://api.github.com/users/netsensei/events{/privacy}","received_events_url":"https://api.github.com/users/netsensei/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/phansible/phansible/labels/bug","name":"bug","color":"fc2929"},{"url":"https://api.github.com/repos/phansible/phansible/labels/issue/help-required","name":"issue/help-required","color":"d4c5f9"},{"url":"https://api.github.com/repos/phansible/phansible/labels/issue/planned","name":"issue/planned","color":"bfd4f2"}],"state":"open","locked":false,"assignee":null,"milestone":null,"comments":3,"created_at":"2015-12-16T22:11:40Z","updated_at":"2015-12-26T21:05:47Z","closed_at":null,"body":"I'm trying to install zmq-beta extension (https://pecl.php.net/package/zmq) as a PECL package via phansible. I've noticed that the phansible assumes that the .so filename of the extension, and the name of of the PECL package are one and the same. The value of the item variable in `php/templates/extension.tpl` is derived from `php.pecl_packages` in `vars/all.yml`.\r\n\r\nHowever, this assumption isn't always true. As is in the case of the ZMQ extension.\r\n\r\nIn my `vars/all.yml` file:\r\n\r\n`````\r\nphp:\r\n    install: '1'\r\n    ppa: php5-5.6\r\n    packages: [php5-cli, php5-intl, php5-mcrypt, php5-mysql, php5-gd]\r\n    pecl_packages: [zmq-beta]\r\n````\r\n\r\nThis results in a `/etc/php5/mods-available/zmq-beta.ini` file with this contents:\r\n\r\n````\r\n; Configuration for php PECL zmq-beta extension\r\nextension=zmq-beta.so\r\n`````\r\n\r\nHowever, the zmq-beta.so file does not exist:\r\n\r\n`````bash\r\n$ php\r\nPHP Warning:  PHP Startup: Unable to load dynamic library '/usr/lib/php5/20131226/zmq-beta.so' - /usr/lib/php5/20131226/zmq-beta.so: cannot open shared object file: No such file or directory in Unknown on line 0\r\n`````\r\n\r\n`````\r\n$ ls /usr/lib/php5/20131226\r\ngd.so    json.so    mysqli.so  opcache.so    pdo.so       xdebug.so\r\nintl.so  mcrypt.so  mysql.so   pdo_mysql.so  readline.so  zmq.so\r\n````\r\n\r\nCurrently, I can get around this by introducing an extra task to my playbook which renames the zmq.so file to zmq-beta.so. But wondering if we could provide an optional override in `all.yml` instead.\r\n\r\n"},"comment":{"url":"https://api.github.com/repos/phansible/phansible/issues/comments/167363579","html_url":"https://github.com/phansible/phansible/issues/262#issuecomment-167363579","issue_url":"https://api.github.com/repos/phansible/phansible/issues/262","id":167363579,"user":{"login":"naxhh","id":944635,"avatar_url":"https://avatars.githubusercontent.com/u/944635?v=3","gravatar_id":"","url":"https://api.github.com/users/naxhh","html_url":"https://github.com/naxhh","followers_url":"https://api.github.com/users/naxhh/followers","following_url":"https://api.github.com/users/naxhh/following{/other_user}","gists_url":"https://api.github.com/users/naxhh/gists{/gist_id}","starred_url":"https://api.github.com/users/naxhh/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/naxhh/subscriptions","organizations_url":"https://api.github.com/users/naxhh/orgs","repos_url":"https://api.github.com/users/naxhh/repos","events_url":"https://api.github.com/users/naxhh/events{/privacy}","received_events_url":"https://api.github.com/users/naxhh/received_events","type":"User","site_admin":false},"created_at":"2015-12-26T21:05:47Z","updated_at":"2015-12-26T21:05:47Z","body":"We could start simple. Just fix this use case and see if any more arises.\r\nWhen this becomes a problem we will think how to fix that.\r\n\r\nSeems ok?"}}