name: Setup Python description: Setup Python inputs: python-version: description: Python version required: false default: "3.9" runs: using: "composite" steps: - name: Set up Python uses: actions/setup-python@v2 with: python-version: ${{ inputs.python-version }} - name: Install poetry uses: Gr1N/setup-poetry@v7 - name: Cache Windows dependencies uses: actions/cache@v2 if: ${{ runner.os == 'Windows' }} with: path: ~/AppData/Local/pypoetry/Cache/virtualenvs key: ${{ runner.os }}-poetry-${{ inputs.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Cache Linux dependencies uses: actions/cache@v2 if: ${{ runner.os == 'Linux' }} with: path: ~/.cache/pypoetry/virtualenvs key: ${{ runner.os }}-poetry-${{ inputs.python-version }}-${{ hashFiles('**/poetry.lock') }} - name: Cache macOS dependencies uses: actions/cache@v2 if: ${{ runner.os == 'macOS' }} with: path: ~/Library/Caches/pypoetry/virtualenvs key: ${{ runner.os }}-poetry-${{ inputs.python-version }}-${{ hashFiles('**/poetry.lock') }}