Ошибка при попытке отправить код CouchApp, который я обновил из репозитория Git команды.

[CRITICAL] нечего повторять

Вышеупомянутая ошибка — это ошибка, которую я получаю, когда пытаюсь протолкнуть код в свой CouchDB. Все работало хорошо, пока я не попытался получить изменения из репозитория Git, который использует наша команда. Еще не решил.

Любые идеи или помощь будут оценены!

Подробный отчет об ошибках приведен ниже (для дополнительной информации):

thoughtboard$ couchapp push http://localhost:5984/thoughtboard_db
2011-07-04 14:52:52 [CRITICAL] nothing to repeat

    $ couchapp push http://localhost:5984/thoughtboard_db
    2011-07-04 14:52:52 [CRITICAL] nothing to repeat

    Traceback (most recent call last):
      File "/usr/local/lib/python2.6/dist-packages/couchapp/dispatch.py", line 48, in dispatch
        return _dispatch(args)
      File "/usr/local/lib/python2.6/dist-packages/couchapp/dispatch.py", line 92, in _dispatch
        return fun(conf, conf.app_dir, *args, **opts)
      File "/usr/local/lib/python2.6/dist-packages/couchapp/commands.py", line 79, in push
        doc.push(dbs, noatomic, browse, force)
      File "/usr/local/lib/python2.6/dist-packages/couchapp/localdoc.py", line 122, in push
        doc = self.doc(db, force=force)
      File "/usr/local/lib/python2.6/dist-packages/couchapp/localdoc.py", line 185, in doc
        self._doc.update(self.dir_to_fields(self.docdir, manifest=manifest))
      File "/usr/local/lib/python2.6/dist-packages/couchapp/localdoc.py", line 303, in dir_to_fields
        elif self.check_ignore(name):
      File "/usr/local/lib/python2.6/dist-packages/couchapp/localdoc.py", line 285, in check_ignore
        match = re.match(i, item)
      File "/usr/lib/python2.6/re.py", line 137, in match
        return _compile(pattern, flags).match(string)
      File "/usr/lib/python2.6/re.py", line 245, in _compile
        raise error, v # invalid expression
    error: nothing to repeat


person karthiks    schedule 04.07.2011    source источник


Ответы (2)


Я не уверен, что не так (я спрошу Бенуа, если увижу его в IRC). Возможно, обходной путь?

Вместо этого создайте .couchapprc. Это стандартный объект JSON.

cat > .couchapprc
{ "env":
  { "dev"    : {"db": "http://localhost:5984/thoughtboard_db"}
  , "staging": {"db": "http://user:[email protected]:5984/thoughtboard_db"}
  }
}

Теперь просто нажмите couchapp push dev.

Стандартная практика заключается в том, что не возвращайте этот файл в Git, потому что он имеет (или может иметь в будущем) производственные пароли. Фактически, скажите git, чтобы он его игнорировал.

echo .couchapprc >> .gitignore
git add .gitignore
git commit -m "Ignore the .couchapprc"

Если вы беспокоитесь о том, чтобы оставить пароли в (игнорируемых git) файлах в вашей системе, учтите, что ваши команды оболочки (с любыми паролями) уже сохранены в $HOME/.bash_history и что пароли, введенные в командной строке, доступны для чтения всем, набрав ps, когда CouchApp это работает. (Возможно, это не имеет отношения к вашей ситуации, просто напоминаю вам.)

person JasonSmith    schedule 05.07.2011

Спасибо @jhs!

Добавление среды по умолчанию или среды разработки мне не помогло. Хотя на этот раз я получил другое сообщение об ошибке, когда следовал вашей инструкции (добавил только среду разработки в .couchapprc)

$ couchapp push dev .
2011-07-05 20:51:54 [CRITICAL] {'msg': '', 'status_int': 400, 'response': <couchapp.client.CouchdbResponse object at 0xa2ead6c>}

Traceback (most recent call last):
  File "/usr/local/lib/python2.6/dist-packages/couchapp/dispatch.py", line 48, in dispatch
    return _dispatch(args)
  File "/usr/local/lib/python2.6/dist-packages/couchapp/dispatch.py", line 92, in _dispatch
    return fun(conf, conf.app_dir, *args, **opts)
  File "/usr/local/lib/python2.6/dist-packages/couchapp/commands.py", line 76, in push
    dbs = conf.get_dbs(dest)
  File "/usr/local/lib/python2.6/dist-packages/couchapp/config.py", line 144, in get_dbs
    return [Database(dburl) for dburl in dburls]
  File "/usr/local/lib/python2.6/dist-packages/couchapp/client.py", line 223, in __init__
    self.res.head()
  File "/usr/local/lib/python2.6/dist-packages/couchapp/restkit/resource.py", line 121, in head
    params_dict=params_dict, **params)
  File "/usr/local/lib/python2.6/dist-packages/couchapp/client.py", line 141, in request
    raise RequestFailed(str(e))
RequestFailed: {'msg': '', 'status_int': 400, 'response': <couchapp.client.CouchdbResponse object at 0xa2ead6c>}
person karthiks    schedule 05.07.2011