ما dotenv-linter منبع را باز می کنیم: یک آستر سریع برای پرونده های .env ، نوشته شده در زنگ زدگی

عکس پروفایل نویسنده

dotenv-linter را در Github پیدا کنید!

هنگام توسعه برنامه ها ، ما همیشه سعی می کنیم به مانیفست دوازده عامل پایبند باشیم. این روش به شما کمک می کند تا از تعدادی از مشکلات مرتبط با پشتیبانی مداوم برنامه ها در طول چرخه زندگی خود جلوگیری کنید.

یکی از اصول مانیفست این است که همه تنظیمات باید در متغیرهای محیطی ذخیره شوند ، به شما این امکان را می دهد که آنها را برای محیط های مختلف (توسعه ، آزمایش خودکار ، مرحله بندی / QA ، تولید) بدون تغییر کد تغییر دهید.

با این حال ، در طول توسعه ، برخورد با همه این متغیرها می تواند به سرعت دست و پا گیر شود. هرچه یک پروژه رشد می کند ، معمولاً برای لیست متغیرهای محیطی است که برای رشد با آن استفاده می کند و منجر به ایجاد خطوط فرمان غیرمستقیم می شود:

$ RAILS_ENV=development REDIS_URL=redis://redis:6379 DATABASE_URL=postgres://postgres:[email protected]:5432 bundle exec rails server

خوشبختانه ، یک راه حل وجود دارد: پرونده های .env. آنها روشی مناسب برای ذخیره همه متغیرهای محیطی در یک مکان فراهم می کنند و کتابخانه های مستقیمی در بسیاری از زبانها (از جمله Ruby ، ​​Elixir ، Python ، Go و Rust) برای کار با آنها وجود دارد: تمام کاری که انجام می دهند بارگیری متغیرها از پرونده هنگامی که برنامه شروع می شود.

با این حال ، همیشه قایقرانی ساده نیست. فقط …