Table of Contents |
---|
Список ПО
- pycharm http://www.jetbrains.com/pycharm/
- openssh
- keepass http://keepass.info/
- keeagent http://lechnology.com/KeeAgent+Beta
Зачем?
- Хотелось позаниматься написанием скриптов для SA в удобной IDE.
- не хотелось подымать еще одну инсталляцию дома для разработки
Что получилось?
- Локальный репозитарий
Warning icon false Возможность работать с удаленной базой установленного нока Info icon false Возможность запускать скрипты через debug-scripts непосредственно из под среды разработки
- Debugger
Ок, что надо делать?
- настраиваем репозитарий например так Pull request на bitbucket
Слегка улучшаем
Code Block % cd <repo_path> % sudo aptitide install python-virtualenv % virtualenv . % ./bin/pip install -r etc/requirements/noc.txt
тут может потребоваться поставить еще софт. типа python-dev postgresql-server-dev-9.1. все зависит от текущей инсталяции.
Сильно не хотелось подымать локальный mongodb и postgres. Будем использовать те что уже есть на dev сервере. для этого сделаем так вот http://www.debian-administration.org/articles/539 . с небольшим дополнением. проброс портов у меня получилось вот так вот:
Expand Code Block title /etc/network/interfaces iface tun1 inet static pre-up ssh -S /var/run/ssh-myvpn-tunnel-control -M -f -L 63334:127.0.0.1:27017 -L 63333:127.0.0.1:5432 -w 1:1 root@<NOC-DEV-SERVER-IP> start pre-up sleep 5 address 10.0.0.2 pointopoint 10.0.0.1 netmask 255.255.255.252 up route add -net <TEST-HW-NETWORK> gw 10.0.0.1 tun1 post-down ssh -S /var/run/ssh-myvpn-tunnel-control -O exit <NOC-DEV-SERVER-IP>
этот кусок который отличается от статьи. остальное строго по ней.
Оказывается ssh может пробрасывать порты и прикидываться интерфейсом и все это делать в рамках одного соединения.
Доступ к базам надо прописать в
etc/noc.conf
в соответствующих секциях.Expand title у меня получилось вот так Code Block [database] # postgresql_psycopg2 engine = postgresql_psycopg2 # Database name name = noc # Database user user = noc # User password password = noc # Set to empty string for localhost host = 127.0.0.1 # Set to empty string for default port = 63333 [nosql_database] # MongoDB database name name = noc # MongoDB database user user = noc # MongoDB database password password = noc # host = 127.0.0.1 # port = 63334
за сим настройка нока завершена. других изменений не делал. что бы проверит ькак это работает пришлось поставить клиенты mongo и
- ставим pycharm
- На созданную директорию натравливаем pycharm. он радостно все хавает.
Делаем вот такие настройки запуска скриптов
Expand - Радуемся. pycharm не только запускает скрипты но и дает их отлаживать!
Грабли
- Pycharm не смотря на всю крутость не умеет mercurial branch. так что их по прежнему надо делать через консоль.
- что бы заниматься разработкой надо переключаться в linux.
- Надо бы описать как во всей этой схеме помогает keepass, но влом.