Jenkins没有从shell执行mysql命令

时间:2018-09-07 13:27:35

标签: mysql shell jenkins

在我没有ssh访问权限的docker机器上安装了一个Jenkins。

我试图在jenkins中运行一个shell脚本,该脚本执行一个简单的drop并在远程数据库上创建表语句。

但是这有两个问题:

  1. 此脚本中有一个函数可以执行create语句,尽管当我查询数据库时未创建表,但是该脚本不会显示任何错误

  2. 即使命令失败,构建也会始终显示状态成功

这是脚本:

    #!/bin/bash -ev
    ST5CON="mysql --defaults-file=prod.cnf --skip-column-names"
    function no_notes {

    $ST5CON << EOF
    DROP TABLE IF EXISTS test.pilot_contacts;
    CREATE TABLE test.pilot_contacts
    SELECT *
    FROM
    prod.contacts
    WHERE prod.type LIKE "%Pilot%"

    EOF

    echo "pilot_counts.sh - no_notes function done - test.pilot_contacts table created"
    }

    no_notes

     function counts {

     count=`$ST5CON -e "SELECT COUNT(id) FROM test.pilot_contacts;"`

     echo "pilot_counts.sh - counts function done - sending email"
     echo "$countnotes"

     }

     counts

控制台: pilot_counts.sh-已完成no_notes函数-已创建test.pilot_contacts表

./ pilot_counts.sh:第62行:-e:找不到命令 完成:成功

0 个答案:

没有答案