{"id":13596580,"url":"https://github.com/MethodsAndPractices/vsteam","last_synced_at":"2025-04-09T16:33:10.264Z","repository":{"id":39915321,"uuid":"78685713","full_name":"MethodsAndPractices/vsteam","owner":"MethodsAndPractices","description":"PowerShell module for accessing Azure DevOps Services and Azure DevOps Server (formerly VSTS or TFS)","archived":false,"fork":false,"pushed_at":"2024-09-03T22:32:20.000Z","size":5909,"stargazers_count":448,"open_issues_count":45,"forks_count":157,"subscribers_count":40,"default_branch":"trunk","last_synced_at":"2024-11-06T19:45:47.504Z","etag":null,"topics":["automation","azdo","azure","azure-artifacts","azure-boards","azure-devops","azure-pipelines","azure-repos","microsoft","powershell","powershell-gallery","vso","vsts"],"latest_commit_sha":null,"homepage":"https://methodsandpractices.github.io/vsteam-docs/","language":"PowerShell","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MethodsAndPractices.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":".github/CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2017-01-11T22:28:32.000Z","updated_at":"2024-11-04T08:16:47.000Z","dependencies_parsed_at":"2024-05-09T06:53:14.429Z","dependency_job_id":null,"html_url":"https://github.com/MethodsAndPractices/vsteam","commit_stats":null,"previous_names":[],"tags_count":40,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MethodsAndPractices%2Fvsteam","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MethodsAndPractices%2Fvsteam/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MethodsAndPractices%2Fvsteam/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MethodsAndPractices%2Fvsteam/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MethodsAndPractices","download_url":"https://codeload.github.com/MethodsAndPractices/vsteam/tar.gz/refs/heads/trunk","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248067987,"owners_count":21042395,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["automation","azdo","azure","azure-artifacts","azure-boards","azure-devops","azure-pipelines","azure-repos","microsoft","powershell","powershell-gallery","vso","vsts"],"created_at":"2024-08-01T16:02:34.926Z","updated_at":"2025-04-09T16:33:05.249Z","avatar_url":"https://github.com/MethodsAndPractices.png","language":"PowerShell","readme":"\u003ch1 align=\"center\"\u003e\n  \u003ca href=\"https://pnp.github.io/cli-microsoft365\"\u003e\n    \u003cimg alt=\"VSTeam\" src=\"https://methodsandpractices.github.io/vsteam-docs/img/startpage_vsteam_api.svg\" height=\"150\"\u003e\n  \u003c/a\u003e\n  \u003cbr\u003eVSTeam\u003cbr\u003e\n\u003c/h1\u003e\n\n \u003cp align=\"center\"\u003e\n    PowerShell module to automate Azure DevOps\n    \u003cbr /\u003e\n    \u003ca href=\"https://methodsandpractices.github.io/vsteam-docs\"\u003e\u003cstrong\u003eExplore the docs »\u003c/strong\u003e\u003c/a\u003e\n  \u003c/p\u003e\n\u003cp align=\"center\"\u003e\n\n  \u003ca href=\"https://github.com/MethodsAndPractices/vsteam/actions/workflows/actions-pipeline.yml\"\u003e\n   \u003cimg alt=\"GitHub Workflow Status\" src=\"https://img.shields.io/github/workflow/status/MethodsAndPractices/vsteam/build%20module?style=flat-square\"\u003e\n  \u003c/a\u003e\n\n  \u003ca href=\"https://twitter.com/climicrosoft365\"\u003e\n   \u003cimg alt=\"PowerShell Gallery\" src=\"https://img.shields.io/powershellgallery/dt/vsteam?label=PowerShell%20Gallery\u0026logo=PowerShell%20Gallery%20Downloads\u0026style=flat-square\"\u003e\n  \u003c/a\u003e\n\n \u003ca href=\"https://www.powershellgallery.com/packages/VSTeam\"\u003e\n   \u003cimg alt=\"PowerShell Gallery Version\" src=\"https://img.shields.io/powershellgallery/v/vsteam?label=released%20version\u0026style=flat-square\"\u003e\n  \u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"https://github.com/MethodsAndPractices/vsteam/blob/trunk/LICENSE\"\u003e\n    \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/github/license/MethodsAndPractices/vsteam?style=flat-square\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"CODE_OF_CONDUCT.md\"\u003e\n    \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/badge/Contributor%20Covenant-v2.0%20adopted-ff69b4.svg?style=flat-square\"\u003e\n  \u003c/a\u003e\n  \u003ca href=\"https://github.com/MethodsAndPractices/vsteam/blob/trunk/LICENSE\"\u003e\n    \u003cimg alt=\"GitHub\" src=\"https://img.shields.io/github/license/MethodsAndPractices/vsteam?style=flat-square\"\u003e\n  \u003c/a\u003e\n\n\u003c/p\u003e\n\n\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"#about-the-project\"\u003eAbout the project\u003c/a\u003e |\n  \u003ca href=\"#requirements\"\u003eRequirements\u003c/a\u003e |\n  \u003ca href=\"#install\"\u003eInstall\u003c/a\u003e |\n  \u003ca href=\"CHANGELOG.md\"\u003eChange Log\u003c/a\u003e |\n\n\u003c/p\u003e\n\u003cp align=\"center\"\u003e\n  \u003ca href=\"github/CONTRIBUTING.md\"\u003eContribute\u003c/a\u003e |\n  \u003ca href=\"#building-module\"\u003eBuilding Module\u003c/a\u003e |\n  \u003ca href=\"#mantainers\"\u003eMaintainers\u003c/a\u003e\n\u003c/p\u003e\n\n\u003cp align=\"center\"\u003e\n  \u003cimg alt=\"VSTeam Install Example\" src=\".github/images/cli-example.gif\" /\u003e\n\u003c/p\u003e\n\n## About The Project\n\nVSTeam is a PowerShell module with commands for accessing your [Azure DevOps Server](https://cda.ms/Bf) and [Azure DevOps Services)](https://cda.ms/Bf).\n\nThe VSTeam module is also a provider allowing users to navigate their [Azure DevOps Server](https://cda.ms/Bf) and [Azure DevOps](https://cda.ms/Bf) as a file system.\n\nTo get started you can visit this blog [PowerShell I would like you to meet TFS and VSTS](http://www.donovanbrown.com/post/PowerShell-I-would-like-you-to-meet-TFS-and-VSTS)\n\n## Requirements\n\n- Windows PowerShell 5.0 or newer.\n\nThe following modules are dependencies of the VSTeam module:\n\n- [SHiPS module](https://www.powershellgallery.com/packages/SHiPS/)\n- [Trackyon.Utils module](https://www.powershellgallery.com/packages/Trackyon.Utils)\n\n## Install\n\nInstall this module from the [PowerShell Gallery](https://www.powershellgallery.com/packages/VSTeam)\n\n```powershell\nInstall-Module -Name VSTeam -Repository PSGallery -Scope CurrentUser\n```\n\n## Change Log\n\nLook at the [Change Log](CHANGELOG.md) file or the release notes on the [GitHub releases](https://github.com/MethodsAndPractices/vsteam/releases).\n\n\n## Contribute\n\nCheck the [Guidelines](.github/CONTRIBUTING.md) if you want to contribute.\n\n## Building Module\n\nTo run build the script Build-Module.ps1. The script has the following parameters:\n\n* `-outputDir 'C:\\outputdir'`: The final module is stored in a dist folder by default. You can override this folder by using the parameter\n* `-buildHelp`: Building help is skipped by default to speed up your inner loop. Use this flag to include building the help\n* `-installDep`: By default the build will not install dependencies unless this switch is used\n* `-ipmo`: build module will be imported into session. IF a loaded module exists, it will be overwritten with the build version.\n* `-analyzeScript`: run the static code analyzer for the scripts with PSScriptAnalyzer\n* `-runTests`: runs the unit tests\n* `-testName 'tests to filter'`: can be used to filter the unit test parts that should be run. Wildcards can be used! See [the Pester documentation](https://github.com/pester/Pester/wiki/Invoke%E2%80%90Pester#testname-alias-name) for a more elaborate explanation.\n* `-codeCoverage`: outputs the code coverage. Output by default is NUnit\n\nBelow are some examples on how to build the module locally. It is expected that your working directory is at the root of the repository.\n\nBuilds the module, installs needed dependencies, loads the module into the session and also builds the help.\n```powershell\n.\\Build-Module.ps1 -installDep -ipmo -buildHelp\n```\n\n\u003cdetails\u003e\n  \u003csummary\u003eabout module size\u003c/summary\u003e\nIn an effort to reduce the module size this repository contains two scripts `Build-Module.ps1` and `Merge-File.ps1` that merges similar files into a single file. The files in the formats folder are merged into `vsteam.format.ps1xml`. The files in the classes folder are merged into `vsteam.classes.ps1`. The functions from the Private and Public folders are merged into `vsteam.functions.ps1`. Finally all the files in the types folder are merged into `vsteam.types.ps1xml`. The order of the files being merged can be controlled by the `config.json` files in the repository.\n\nThe JSON config file must be in the following format:\n\n```JSON\n{\n   \"types\" : {\n      \"outputFile\": \"vsteam.types.ps1xml\",\n      \"path\": \"./Source/types/\",\n      \"fileType\": \"types\",\n      \"files\": [\n         \"*.ps1xml\"\n      ]\n   },\n   \"functions\" : {\n      \"outputFile\": \"vsteam.functions.ps1\",\n      \"path\": \"./Source/\",\n      \"fileType\": \"functions\",\n      \"files\": [\n         \"./Private/*.ps1\",\n         \"./Public/*.ps1\"\n      ]\n   },\n   \"formats\": {\n      \"outputFile\": \"vsteam.format.ps1xml\",\n      \"path\": \"./Source/formats/\",\n      \"fileType\": \"formats\",\n      \"files\": [\n         \"vsteam_lib.TaskGroup.TableView.ps1xml\"\n      ]\n   }\n}\n```\n\u003c/details\u003e\n\n\n### Run Tests Locally\n\nRuns all unit tests and executes the static code analysis.\n```powershell\n.\\Build-Module.ps1 -runTests -codeCoverage -analyzeScript\n```\n\nRuns the tests, but executes only the unit tests that have the description \"workitems\" for the logically grouped unit tests. This can be used if you only want to test a portion of your unit tests.\n```powershell\n.\\Build-Module.ps1 -runTests -testName workitems\n```\n\n### Run Tests in Docker\n\nYou can [run your unit tests also locally](/tools/docker/RunTestsLocally.md) and cross-platform in a standardized environment.\n\n## Maintainers\n\n- [Donovan Brown](https://github.com/darquewarrior) - [@DonovanBrown](https://twitter.com/DonovanBrown)\n- [Sebastian Schütze](https://github.com/SebastianSchuetze) - [@RazorSPoint](https://twitter.com/RazorSPoint)\n\n\n## License\n\nThis project is [licensed under the MIT License](LICENSE).\n","funding_links":[],"categories":["PowerShell"],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMethodsAndPractices%2Fvsteam","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMethodsAndPractices%2Fvsteam","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMethodsAndPractices%2Fvsteam/lists"}