microsoft / microsoft/azure-devops-python-api

run_pipeline discards needed parameters

Open
#331 8 comments 1 reaction 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
684
Forks
218
Avg merge
8d 10h
Merged PRs (30d)
1

Description

azure-devops/azure/devops/v6_0/pipelines/pipelines_client.py takes the parameter run_parameters and then sets the variable content via

        content = self._serialize.body(run_parameters, 'RunPipelineParameters')

In doing so it discards templateParameters (along with previewRun, stagesToSkip, and yamlOverride), but my concern is with templateParameters.

If I'm tracing things correctly, the problem is in the class RunPipelineParameters in azure-devops/azure/devops/v6_0/pipelines/models.py which only maps resources and variables:

class RunPipelineParameters(Model):
    """
    :param resources:
    :type resources: :class:`RunResourcesParameters <azure.devops.v6_0.pipelines.models.RunResourcesParameters>`
    :param variables:
    :type variables: dict
    """

    _attribute_map = {
        'resources': {'key': 'resources', 'type': 'RunResourcesParameters'},
        'variables': {'key': 'variables', 'type': '{Variable}'}
    }

    def __init__(self, resources=None, variables=None):
        super(RunPipelineParameters, self).__init__()
        self.resources = resources
        self.variables = variables

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Read azure-devops/azure/devops/v6_0/pipelines/models.py and the run_pipeline entry point in azure-devops/azure/devops/v6_0/pipelines/pipelines_client.py. Compare RunPipelineParameters with the parameters described in the issue, then trace how it is serialized. Done means templateParameters and the other listed run options are preserved when run_pipeline builds its request.

Written by the indexing model from the issue text.

Assessment

Tech stack
azure, python
Domain
api, devops
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Clearly specified
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.