Dec. 23rd, 2016

dr_vlat: (Default)
А не спеть ли мне песню? А не спеть.
Хотел написать длинный пост с интригующим названием "Методология использования фреймворка сценариев Gulp в веб-разработке", но на пол-пути, как обычно, махнул рукой "да кому это надо... кому надо — тот сам все знает, а кому не надо — тому и так не надо".

В общем, вместо этого, быстро и кратко расскажу про autoenv.
В некоторых проектах возникает необходимость использовать переменные окружения.
Какие нибудь FTP_USER и FTP_PWD. Например для того, чтобы не светить в конфигах эти данные.
В том-же Gulp-е, делается:
var user = process.env.FTP_USER;
var password = process.env.FTP_PWD;
и можно больше не беспокоиться, что пароль случайно где нибудь засветится.
Неудобство этого метода в том, что эти переменные приходится инициализировать каждую сессию терминала.
Писать export FTP_USER=myftpuser;export FTP_PASSWORD=myftppass .
Или делать отдельный скрипт, которые эти переменные инициализирует.
А если проектов много — делать это каждый раз еще и для текущего проекта.

Но для zsh (и кажется для bash и fish) есть плагин, который называется autoenv.
Принцип его действия крайне прост — при входе в директорию, он вызывает файл .env, находящийся в корне этой директории.
Прямой аналог действия cd dir; source ./env , только автоматически.

Если в .env прописать те самые
export FTP_USER=foo
export FTP_PWD=bar

То они будут подхвачены автоматом, после cd .
И это ну просто очень, очень удобно при работе с большим количеством проектов.

Ставится плаг (в случае с zsh) просто:
$ git clone https://github.com/Tarrasch/zsh-autoenv ~/.dotfiles/lib/zsh-autoenv

И добавляется к массиву плагинов в ~/.zshrc

Profile

dr_vlat: (Default)
dr_vlat

December 2016

S M T W T F S
    1 23
4 567 8910
111213141516 17
18192021 22 2324
25262728293031

Most Popular Tags

Page Summary

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 21st, 2017 02:42 am
Powered by Dreamwidth Studios