85838
# 環境

  * python 3.7.1
  * pip 20.1.1
  * poetry 1.1.11

# やりたいこと

TravisCI上でpythonのテストやフォーマットチェックを実施しています。

```

    dist: xenial
    language: python
    python:
      - "3.7"
      - "3.8"
      - "3.9"
    install:
      - pip install poetry && poetry install
    script:
       - make lint
       - make test
    branches:
      only:
      - master
    
```

# 問題点

Python3.7では、たまに（10回に1回ぐらいの頻度？） `poetry install`が失敗します。

```

    • Installing mypy-extensions (0.4.3): Installing...
    • Installing mypy-extensions (0.4.3)
      • Updating numpy (1.16.4 -> 1.21.1): Pending...
    • Updating numpy (1.16.4 -> 1.21.1): Failed
      SSLError
      HTTPSConnectionPool(host='pypi.org', port=443): Max retries exceeded with url: /pypi/numpy/1.21.1/json (Caused by SSLError(FileNotFoundError(2, 'No such file or directory')))
    
```

<https://app.travis-ci.com/github/kurusugawa-computer/annofab-
cli/jobs/542618677>

PyPIへのアクセス回数が多くて失敗しているようです。この場合、どのように対応するのがよいのでしょうか？
CC BY-SA 4.0
2021-10-12T05:02:29.117
83028
2022-01-21T07:06:06.350
2021-10-12T06:01:27.290
3060
19524
question
python poetry
`poetry install`で`Max retries exceeded`エラーが発生したときの対応方法を教えてください。
以下のように`travis_retry`を指定したら、`poetry install`で失敗しなくなりました。

```

    install:
      - pip install poetry
      - travis_retry poetry install
    
```

<https://docs.travis-ci.com/user/common-build-problems/#timeouts-installing-
dependencies>

> For commands which do not have a built-in retry feature, use the
> travis_retry function to retry it up to three times, if the return code is
> non-zero:
CC BY-SA 4.0
2022-01-21T07:06:06.350
85838
2022-01-21T07:06:06.350
19524
83028
answer