Пример #1
0
def get_project_and_column(
        repo: Repository, project_name: str, column_name: str,
        create_missing: bool
) -> tuple[Optional[Project], Optional[ProjectColumn]]:
    """
    Gets a project and column from a repo
    """
    project = search_for_object(
        repo.get_projects(),
        project_name,
        create_missing=create_missing,
        object_name="project",
        create=lambda: repo.create_project(
            name=project_name,
            body=ask("Enter the project's description..."),
        ),
    )

    if project is None:
        return None, None

    column = search_for_object(
        project.get_columns(),
        column_name,
        create_missing=create_missing,
        object_name="column",
        create=lambda: project.create_column(name=column_name),
    )

    return project, column
Пример #2
0
def get_project(repo: Repository, name: str) -> Project:
    """
    Get project from repository by name
    """
    for project in repo.get_projects():
        if project.name == name:
            return project
    raise ValueError(f'No project with name: {name}')