
Dmitry
24.01.2017
11:34:33

Roman
24.01.2017
11:37:22

Dmitry
24.01.2017
11:38:54
в общем, попробуй git@ добавить, как я выше написал. Может сразу заработает
username недостаёт тебе

Google

Eugene
24.01.2017
11:40:07
Если репозиторий private, то надо по ssh с него тянуть (git@).
У меня, например, проекты из разных git-репозиториев, они все приватные, приходится настраивать config для ssh, чтобы можно было работать с несколькими ключами. Не очень удобно, но другого способа я не знаю

Dmitry
24.01.2017
11:43:49
вот так ещё попробуй git+git://gitlab.i.somedomain.com
если авторизация не требуется, у тебя явно с синтаксом этой строчки что-то
кстати, почему ты версии пакетов не указываешь явно?

Serge
24.01.2017
11:45:52

Eugene
24.01.2017
11:46:02
я тут почитал, а разве requirements поддерживает git+git протокол?
https://pip.readthedocs.io/en/1.1/requirements.html#requirements-file-format
-e надо указывать

Dmitry
24.01.2017
11:48:41
да, он умеет git+git

Eugene
24.01.2017
11:49:50
Что странного?
Там написано, что нужно "-e" указывать перед

Dmitry
24.01.2017
11:50:10

Serge
24.01.2017
11:50:26

Google

Serge
24.01.2017
11:50:35
но да, так оно и делает

Dmitry
24.01.2017
11:51:17

Serge
24.01.2017
11:51:19
поэтому я вот и перешел на двойной requirements и очень жду pipfile стабильный

Dmitry
24.01.2017
11:51:30

Eugene
24.01.2017
11:51:35

Serge
24.01.2017
11:52:08

Eugene
24.01.2017
11:52:11
Формат requirements файлов не менялся, поэтому что 9, что 1, без разницы.

Serge
24.01.2017
11:53:34
я же показывал. пишу ручками requirements.in
на своей тачке в девелоп ветке живу так, обновляю по возжможности
потом
pip freeze -r requirements.in > requirements.txt
и в тестах, на CI и на проде живу с фриженым requirements.txt

Eugene
24.01.2017
11:55:27
Вот на счёт версий кстати недавно напоролся.
Ставим сначала PyQt 5.7.1, он с багами, откатываемся на PyQt 5.7.0 и он не работает. Не работает, потому что вместе с ним не откатывается SIP, который 4.19 для 5.7.1, и 4.18 для 5.7.0
Это баг дистрибьютинга или родовая травма всей этой pip-идеи?

Serge
24.01.2017
11:56:03

Eugene
24.01.2017
11:56:22
pip install -U —force-reinstall

Serge
24.01.2017
11:56:39
вообще, при откатах лучше вайпать venv, конечно

Dmitry
24.01.2017
11:57:18
угу, ты откатился как-то криво, видимо )

Eugene
24.01.2017
11:57:40
Ну можно попробовать повторить в чистом venv

Serge
24.01.2017
11:58:21
но! возможна ситуация, что в зависимостях PyQt 5.7.0 слишком оптимистичное условие и там какой-то пакет стал новее, чем можно, но когда писали эту зависимость, всё было ок

Eugene
24.01.2017
11:59:19
Вот я и спрашиваю, это проблема конкретного пакета (кривой setup), либо это вообще проблема общая при даунгрейде?

Serge
24.01.2017
11:59:26
хм, а профит в чём?
r...in нужен чтобы хранить твои услови на пакеты, что ты в голове считаешь зависимостями, а r...txt - это фриз, чтобы вот ничего поновее не сломало тебе ничего
локально я увижу обновление либы, когда установлюсь из r...in и проверю, что ничего не поломалось, тогда соберу новый r...txt

Google

Serge
24.01.2017
12:00:56
теоретически, если с тестами всё хорошо, это можно автоматизировать на CI, но лучше это делать в отдельном pipeline

Dmitry
24.01.2017
12:05:37
а, так у тебя окружение локальное постоянно отличается от остальных
это ж не очень как-то

Serge
24.01.2017
12:06:27
мне же никто не мешает спокойно жить с r...txt

Dmitry
24.01.2017
12:06:53
так когда ты захочешь ты можешь и .txt начать менять

Serge
24.01.2017
12:07:18
нет, его нельзя просто так менять, оно делается freez-ом и тестируется
это некая осмысленная операция
но к ней легко придти через r...in

Dmitry
24.01.2017
12:08:50
у меня чаще просто development.txt и production.txt внутри pip_requirements/
подозреваю что почти тоже самое

Serge
24.01.2017
12:09:11
а какая в них разница?

Serge
24.01.2017
12:09:31
ключевая штука здесь pip freeze -r r...in
это очень очень полезная команда

Dmitry
24.01.2017
12:13:10
./build.sh && ./up.sh :) в случае чего - README.md

Roman
24.01.2017
12:18:40
крч, это я олень и забыл libffi-dev в зависимости добавить ))

Dmitry
24.01.2017
12:19:03

Roman
24.01.2017
12:21:09
а причём здесь оно? о_0
да у меня была беда в том, что хоть cffi и есть в зависимостях, но на этапе сборки модуля из git не находило хидеры

Dmitry
24.01.2017
12:21:37
аа. Так блин, я думал тебе пип говорит что урл не найден

Google

Dmitry
24.01.2017
12:21:47
надо было у тебя вывод потребовать :)

Serge
24.01.2017
12:26:34

Dmitry
24.01.2017
12:26:44
не не
ап-то компоуз поднимет =)
и зачем на сервере кому-то придётся брать requirements.txt, если это всё внутрянка докер-образа?

Roman
24.01.2017
12:34:42

Dmitry
24.01.2017
12:35:32
так ./build.sh и всё
девопсу вообще нужен минимум геморроя с апп-историей

Roman
24.01.2017
12:36:06

Dmitry
24.01.2017
12:36:14
вот там и будет сборка докер-образа

Admin
ERROR: S client not available

Serge
24.01.2017
12:36:55
https://rutube.ru/video/419a16ec7734e9a211b0d82dd0e274ee/

Dmitry
24.01.2017
12:42:08
идея в единых точках входа, не завязанных на проект
чтобы было понятно куда идти всегда
и в большинстве случаев можно даже туда не идти и не разбираться с логикой, а тупо дёрнуть известные имена

Serge
24.01.2017
12:44:31
ну, типа да
docker-compose.yml
Dockerfile
requirements.txt
я вот знаю зачем эти штуки, а какой смысл ты вкладывал в файлики в папке pip_requirements, мне не очень ведомо

Google

Serge
24.01.2017
12:46:19
и у меня как бы уже есть все инструменты чтобы это запустить, мне не нужны никакие твои тулзы для этого
мало того, я могу и проанализировать сразу статически что-то про твою репу единообразно с любой другой

Dmitry
24.01.2017
12:49:22
Ясно.

Sergey
24.01.2017
12:53:40
на пред. проекте юзался shippable.com для тестов и каждый раз много времени занимала установка requirements

Dmitry
24.01.2017
12:54:44
Привычки с определённого проекта остались

Serge
24.01.2017
12:55:33
если мы про докер, то там же кэш для этого, не?

Dmitry
24.01.2017
12:56:26
а, ну да https://medium.com/playmoweb-android-ios-development/speed-up-your-builds-with-docker-cache-bfed14c051bf#.3i1t5q553

Sergey
24.01.2017
13:01:07
там у них был кэш, не знаю свой или докеровский, и он ускорял намного, но из-за этого возникали ошибки при изменениях requirements

Dmitry
24.01.2017
13:01:53
я тоже не очень понимаю как этот кэш работает

Serge
24.01.2017
13:08:15

Sergey
24.01.2017
13:08:57
это было бы тяжело, прокт был разделён на кучу пакетов, в каждом были свои зависимости

Serge
24.01.2017
13:10:00
т.е. вот RUN pip install requirements.txt не инвалидирует кэш, если requirements.txt изменился
поэтому надо делать перед жтим явно COPY requirements.txt, потом pip install, потом COPY весь проект

Andrey
24.01.2017
13:11:04

Serge
24.01.2017
13:11:12
ну и опять же, я использую возможности pip freeze

Andrey
24.01.2017
13:12:05

Serge
24.01.2017
13:12:30
более того, утвержденная в Pipfile как основной форкфлоу