Skip to content

Feature proposal: Integrate dependency support #77

@alexjurkiewicz

Description

@alexjurkiewicz

I think a most users of this action run an "install dependencies" step immediately after. I think it would improve the developer experience if the "install dependencies" step was integrated into this action.

Current workflow:

    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v1
      with:
        python-version: ${{ matrix.python-version }}
    - name: Install dependencies
      run: |
        python -m pip install --upgrade pip
        pip install -r requirements.txt

Option 1: Support installing packages with pip

    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v1
      with:
        python-version: ${{ matrix.python-version }}
        pip-install: -r requirements.txt

        # or if you use a different package manager...
        # pip-install: pipenv
    # - name: Install dependencies
      # run: pipenv install

Option 2: Add full support for all package managers

    - name: Set up Python ${{ matrix.python-version }}
      uses: actions/setup-python@v1
      with:
        python-version: ${{ matrix.python-version }}
        # Pip
        package-manager: pip
        package-manager-args: -r requirements.txt
        # Pipenv
        package-manager: pipenv
        package-manager-args: --pre --dev --deploy
        # Poetry
        package-manager: poetry
        package-manager-args: --no-dev

What do you think? Option 1 is much smaller in scope than option 2, but I think both would be low maintenance (Python has a lot of package managers, but not that many).

Metadata

Metadata

Assignees

Labels

feature requestNew feature or request to improve the current logichelp wantedExtra attention is neededneeds eyes

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions