เจนกินส์ไม่ได้ใช้ตำแหน่งที่ตั้งของระบบ


10

ฉันมีพฤติกรรมที่น่าสนใจในเจนกินส์
เชลล์ของ Jenkins ไม่ได้ใช้ระบบตำแหน่งที่ตั้งของฉัน

เจนกินส์ทำงานเป็นผู้ใช้jenkinsในระบบของฉัน

เข้าสู่ระบบjenkinsผ่านทาง SSH:

locale แสดง:

LANG = en_US.UTF-8
LANGUAGE = th_: en
LC_CTYPE = "en_US.UTF-8"
ฯลฯ ...

envการแสดงLANGและLANGUAGEตัวแปร:

LANG = en_US.UTF-8
LANGUAGE = en_US: en

id แสดง ID ของผู้ใช้:

uid = 1008 (jenkins) gid = ...

ป้อนคำสั่งด้านบนลงในเชลล์งาน jenkins:

locale แสดง:

LANG =
LANGUAGE =
LC_CTYPE = "POSIX"
ฯลฯ ...

envไม่ได้แสดงLANGและLANGUAGEตัวแปร

id แสดง ID ของผู้ใช้ (ตามที่คาดไว้):

uid = 1008 (jenkins) gid = ...

ไฟล์:

/etc/profile ประกอบด้วย:

ส่งออก LANG = en_US.UTF-8
ส่งออก LANGUAGE = en_US: en

/etc/default/locale ประกอบด้วย:

ส่งออก LANG = en_US.UTF-8
ส่งออก LANGUAGE = en_US: en

สคริปต์เริ่มต้น/etc/init.d/jenkinsควรส่งออกตำแหน่งที่ตั้งของระบบ:

# โหลดสภาพแวดล้อม
ถ้า [-r / etc / default / locale];
แล้วก็ / etc / default / locale
export LANG LANGUAGE
elif [-r / etc / environment];
แล้วก็ / etc / environment
ส่งออกภาษา LANGUAGE
fi


แน่นอนฉันรีบูทหลังจากแก้ไขโลแคล;)

Apache ยังใช้โลแคล
ของระบบระบบของฉันคือการติดตั้ง Ubuntu 14.04
ฉันพลาดที่จะตรวจสอบอย่างอื่นหรือไม่?

ขอบคุณสำหรับการอ่าน!
ฉันหวังว่าใครบางคนสามารถช่วย :)


ดูเหมือนว่าเจนกินส์จะรีเซ็ตตัวแปรสภาพแวดล้อมทั้งหมดในบิลด์เชลล์ ตรวจสอบการตั้งค่าโครงการ นอกจากนี้ยังมีปลั๊กอิน env-ฉีด
jofel

วิธีการแก้ปัญหาของคุณควรจะเป็นคำตอบที่ไม่ได้แก้ไขคำถามของคุณ ...
jasonwryan

คำตอบ:


10

สารละลาย:

สิ่งนี้เกิดขึ้นเนื่องจากต้นแบบของ Jenkins เชื่อมต่อกับเครื่องทาสผ่านnon-interactiveเชลล์ดังนั้น/etc/profileจะไม่ถูกเรียกใช้และ/etc/default/localeไม่มีผลกระทบใด ๆ เปลือกหอยมักจะมีการใช้
non-interactive รายละเอียดเกือบทั้งหมดเกี่ยวกับหัวข้อนี้สามารถพบได้ใน askubuntu: /ubuntu/247738/why-is-etc-profile-not-invoked-for-non-login-shells เพิ่มไปที่:~/.bashrc




~/.bashrc

ส่งออก LANG = en_US.UTF-8
ส่งออก LANGUAGE = en_US: en


ทำเพื่อฉัน

'ปัญหาทาส' นี้ยังมีการกล่าวถึงที่นี่:
https://groups.google.com/forum/#!topic/jenkinsci-users/hscDs4pKIoU https://groups.google.com/forum/#!topic/jenkinsci-users / g0fNnDltqeM ขอแสดง ความนับถือ whosit

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.