Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

jenkins fails while restarting my sql "sudo: no tty present and no askpass program specified Sorry, try again."

I just configured jenkins and in the pre-build steps i am trying to restart jenkins but i end up with the following error

Commencing build of Revision c5b9f8daac092efc5396d80f568a2cf89ae8b697 (origin/HEAD, origin/master)
Checking out Revision c5b9f8daac092efc5396d80f568a2cf89ae8b697 (origin/HEAD, origin/master)
No change to record in branch origin/HEAD
No change to record in branch origin/master
[webapp] $ /bin/sh -xe /tmp/hudson5215632082686866774.sh
+ sudo /etc/init.d/mysql restart
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: no tty present and no askpass program specified
Sorry, try again.
sudo: 3 incorrect password attempts
Build step 'Execute shell' marked build as failure
Finished: FAILURE

I googled and saw some answers at Jenkins out of nowhere starts failing with sudo: no tty present and no askpass program specified

But unfortunately that didn't help me

My /etc/sudoers looks like this

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults        env_reset
Defaults        secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root    ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) NOPASSWD: ALL

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d
like image 484
Raghvendra Singh Avatar asked May 06 '13 23:05

Raghvendra Singh


2 Answers

The "no tty present" error indicates that you have the 'requiretty' setting in your sudoers file. In your case, it is probably in /etc/sudoers.d. Once this line is there, it does not matter what group you are in - sudo will require a tty whenever it is executed.

To get around this, you need to either remove (or comment out) the requiretty line in the configuration file, or add a line to exclude your user from the requiretty setting. You can see how to do that here: Disable requiretty per user

like image 76
Barak Avatar answered Nov 02 '22 08:11

Barak


By adding the following: Defaults:username !authenticate to your /etc/sudoers you should not get the error but this username will be accessible without asking for a password

like image 31
Marwa Hack Avatar answered Nov 02 '22 06:11

Marwa Hack