Vagrant & Puppet - error when using puphpet to import sql into mysql database

315 views Asked by At
==> payments: Notice: /Stage[main]/Puphpet::Mysql::Install/Puphpet::Mysql::Databases[from puphpet::mysql::install]/Exec[users-import]/returns: sh: 1: cannot open db/dump.sql: No such file
==> payments: Error: mysql users < db/dump.sql && touch /opt/puphpet-state/db-import-users returned 2 instead of one of [0]
==> payments: Error: /Stage[main]/Puphpet::Mysql::Install/Puphpet::Mysql::Databases[from puphpet::mysql::install]/Exec[users-import]/returns: change from notrun to 0 failed: mysql users < db/dump.sql && touch /opt/puphpet-state/db-import-users returned 2 instead of one of [0]

On vagrant up I am getting the above error.

The sql import file is located within the db directory (see screenshot). I am thinking that perhaps the SQL file isn't getting copied to the VM in time? It is worth noting that I create three databases in the puphpet file and then import the sql when the last one is created. The sql file creates the tables and inserts some data.

Puphpet config for MySQL databases

databases:
    mysqlnd_b349iw3pewx1:
        name: sites
        sql: ''
    mysqlnd_b349iw3pewx2:
        name: ia
        sql: ''
    mysqlnd_b349iw3pewx3:
        name: users
        sql: '../db/dump.sql'

Directory structure

enter image description here

I am using puppet via puphpet.

1

There are 1 answers

0
Frederic Henri On BEST ANSWER

If you're not sure about the path, as I mentioned in the comments just indicate the full path of the files

databases:
    mysqlnd_b349iw3pewx1:
        name: sites
        sql: ''
    mysqlnd_b349iw3pewx2:
        name: ia
        sql: ''
    mysqlnd_b349iw3pewx3:
        name: users
        sql: '/home/vagrant/db/dump.sql'