fzngagan
(Faizaan Gagan)
2 سبتمبر 2020، 12:20م
1
تتطلب بعض مكتبات العميل، مثل GitHub - googleapis/google-auth-library-ruby: Google Auth Library for Ruby · GitHub إعداد بيانات الاعتماد للمصادقة كـ متغيرات بيئة. هل من الممكن تمريرها عبر ملف yml؟
لقد جربت:
إضافة export VAR=VALUE إلى قسم الأوامر المخصصة في ملف yml.
إضافة VARIABLE: VALUE إلى قسم env في ملف yml.
fzngagan
(Faizaan Gagan)
2 سبتمبر 2020، 1:32م
2
@merefield أشار إليّ إلى أن ذلك ممكن بالفعل.
في قسم الأوامر المخصصة، قم بما يلي:
# يضيف المتغير إلى ملف .bashrc
exec: echo 'export VAR=value' >> ~/.bashrc
...
# يعيد تحميل الملف
exec: source ~/.bashrc
يمكنني تأكيد أن هذا الأسلوب يعمل بالفعل.
ملاحظة:
من الناحية الفنية، لا يقوم الأمر source ~/.bashrc بتحديث البيئة في بعض الأحيان. ربما يتم استدعاؤه مبكرًا جدًا.
كما جربت أيضًا:
- exec: /bin/bash -c "source ~/.bashrc"
justin
(Justin DiRose)
2 سبتمبر 2020، 4:28م
3
ألا يمكنك استخدام قسم env: في تعريف الحاوية لهذا الغرض؟ يجب أن ينشئ ذلك متغير بيئة يمكن لتطبيق Rails الوصول إليه.
على سبيل المثال:
env:
CUSTOM_ENV: "value"
وإلا، يبدو أن pups يقوم بالفعل بنقل متغيرات البيئة من المضيف أيضًا.
fzngagan
(Faizaan Gagan)
2 سبتمبر 2020، 4:41م
4
هذا يعطيني خطأً متعلقًا بـ Docker. سيكون ذلك بديهيًا للغاية لو عمل الأمر بهذه الطريقة. أو ربما أنا مجنون. أعتقد أن هناك قاعدة تقبل المتغيرات المخصصة التي تبدأ بـ DISCOURSE_.
fzngagan
(Faizaan Gagan)
2 سبتمبر 2020، 5:00م
5
سأحاول أمر المتغيرات البيئية مرة أخرى عندما أصل إلى مكتبي غدًا.
fzngagan
(Faizaan Gagan)
2 سبتمبر 2020، 6:02م
6
لذا، كنت مخطئًا. هذا يعمل بشكل جيد. كانت المشكلة بسبب قيمة متعددة الأسطر. أزلتها وتم بناء المشروع بنجاح. لكن السؤال هو: كيف نستخدم القيم متعددة الأسطر؟
fzngagan
(Faizaan Gagan)
3 سبتمبر 2020، 9:24م
7
يُهاو! تمكنت من جعله يعمل. كانت المشكلة أنني كنت أستخدم مفتاحًا خاصًا RSA كمتغير بيئة. هذا ما يجب فعله لجعل ذلك يعمل.
قم بتغليف مفتاحك بين علامتي اقتباس مفردة '' وأضف شرطة مائلة للخلف إضافية \ مع كل \n تظهر في المفتاح. أي أن \n ستصبح \\n.
فقط للمعلومية، هناك طرق أسهل للقيام بذلك بدلاً من تحديث جميع \n مباشرة.
شيء مثل هذا:
key: |
---BEGIN SECRET KEY---
SHH لا تقرأ هذا، إنه سري
---END SECRET KEY---
fzngagan
(Faizaan Gagan)
3 سبتمبر 2020، 10:49م
9
featheredtoast:
شيء مثل هذا:
هل تقصد لصق الجزء الأوسط من المفتاح كما هو؟ سيكون ذلك أنظف قليلاً.
أقصد أن YAML يدعم الأسطر المتعددة بدءًا من الحرف | (مع اختلافات اختيارية)
يمكنك بعد ذلك لصق المفتاح كما هو دون أي تعديلات (باستثناء المسافات البادئة).
fzngagan
(Faizaan Gagan)
3 سبتمبر 2020، 10:53م
11
لقد جربت شيئًا سخيفًا؛ أضفت | وسطرًا جديدًا فعليًا بدلاً من كل \n، لكن ذلك لم ينجح.