Ich habe ein interessantes Verhalten in Jenkins.
Jenkins 'Shell verwendet meine Systemgebietsschemas nicht.
Jenkins läuft als Benutzer jenkinsauf meinem System.
Eingeloggt wie jenkinsüber SSH:
locale angezeigt:
LANG = en_US.UTF-8
LANGUAGE = en_US: en
LC_CTYPE = "en_US.UTF-8"
etc ...
envShows LANGund LANGUAGEVariablen:
LANG = en_US.UTF-8
LANGUAGE = en_US: en
id zeigt die ID des Benutzers:
uid = 1008 (jenkins) gid = ...
Die obigen Befehle für eine Jenkins-Job-Shell wurden eingegeben:
locale angezeigt:
LANG =
LANGUAGE =
LC_CTYPE = "POSIX"
etc ...
envwird nicht angezeigt LANGund LANGUAGEVariablen
id zeigt die ID des Benutzers (wie erwartet):
uid = 1008 (jenkins) gid = ...
die Dateien:
/etc/profile enthält:
export LANG = en_US.UTF-8
export LANGUAGE = en_US: en
/etc/default/locale enthält:
export LANG = en_US.UTF-8
export LANGUAGE = en_US: en
Startskript /etc/init.d/jenkinssollte Systems locales exportieren:
# Umgebungen laden,
wenn [-r / etc / default / locale]; dann
. / etc / default / locale
export LANG SPRACHE
elif [-r / etc / environment]; dann
. / etc / environment
export SPRACHE
fi
Natürlich habe ich nach dem Ändern der Gebietsschemas neu gestartet;)
Apache verwendet auch die Gebietsschemas des Systems.
Mein System ist eine Ubuntu 14.04-Installation.
Habe ich etwas anderes verpasst?
Danke fürs Lesen!
Ich hoffe jemand kann helfen :)