{"id":27880660,"url":"https://github.com/microsoft/psrule-pipelines","last_synced_at":"2025-05-05T04:32:06.675Z","repository":{"id":36990300,"uuid":"210711006","full_name":"microsoft/PSRule-pipelines","owner":"microsoft","description":"Validate infrastructure as code (IaC) and DevOps repositories using Azure Pipelines.","archived":false,"fork":false,"pushed_at":"2025-04-29T11:58:35.000Z","size":2134,"stargazers_count":94,"open_issues_count":4,"forks_count":23,"subscribers_count":8,"default_branch":"main","last_synced_at":"2025-04-29T12:58:16.282Z","etag":null,"topics":["azure-devops","azure-pipelines","cicd","devops","devops-tools","hacktoberfest","iac","infrastructure-as-code","powershell","psrule","rule","yaml-pipelines"],"latest_commit_sha":null,"homepage":"https://marketplace.visualstudio.com/items?itemName=bewhite.ps-rule","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/microsoft.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":"SECURITY.md","support":"SUPPORT.md","governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null}},"created_at":"2019-09-24T22:50:05.000Z","updated_at":"2025-04-29T11:58:37.000Z","dependencies_parsed_at":"2023-02-17T06:01:04.067Z","dependency_job_id":"971c69d7-2e65-4318-9b67-fb247f47da78","html_url":"https://github.com/microsoft/PSRule-pipelines","commit_stats":null,"previous_names":[],"tags_count":33,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FPSRule-pipelines","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FPSRule-pipelines/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FPSRule-pipelines/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/microsoft%2FPSRule-pipelines/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/microsoft","download_url":"https://codeload.github.com/microsoft/PSRule-pipelines/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":252440184,"owners_count":21748172,"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":["azure-devops","azure-pipelines","cicd","devops","devops-tools","hacktoberfest","iac","infrastructure-as-code","powershell","psrule","rule","yaml-pipelines"],"created_at":"2025-05-05T04:32:05.943Z","updated_at":"2025-05-05T04:32:06.668Z","avatar_url":"https://github.com/microsoft.png","language":"PowerShell","readme":"# PSRule extension for Azure Pipelines\n\nAn Azure DevOps extension for using PSRule within Azure Pipelines.\n\n![extension-version]\n\n## Support\n\nThis project uses GitHub Issues to track bugs and feature requests.\nPlease search the existing issues before filing new issues to avoid duplicates.\n\n- For new issues, file your bug or feature request as a new [issue].\n- For help, discussion, and support questions about using this project, join or start a [discussion].\n\nSupport for this project/ product is limited to the resources listed above.\n\n## Getting started\n\nThe PSRule extension includes the following tasks for Azure Pipelines:\n\nName                | Friendly name   | Description | Reference\n----                | -------------   | ----------- | ---------\n`ps-rule-assert`    | PSRule analysis | Run analysis with PSRule. | [reference][ps-rule-assert]\n`ps-rule-install`   | Install PSRule module | Install a PowerShell module containing rules. | [reference][ps-rule-install]\n\nTo add these tasks, use the name for YAML pipelines or friendly name of classic pipelines.\n\n### Installing PSRule extension\n\nTo use PSRule within Azure DevOps Services, install the [extension] from the [Visual Studio Marketplace][extension].\nFor detailed instructions see [Install extensions][extension-install].\n\nIf you don't have permissions to install extensions within your Azure DevOps organization,\nyou can request it to be installed by an admin instead.\n\n### Using within YAML pipelines\n\nTo use these tasks within YAML pipelines:\n\n- Install rule modules with the `ps-rule-install` task (optional).\n- Run analysis one or more times with the `ps-rule-assert` task.\n- Publish analysis results with the [Publish Test Results](https://docs.microsoft.com/azure/devops/pipelines/tasks/test/publish-test-results?view=azure-devops\u0026tabs=yaml) builtin task.\n\nFor example:\n\n```yaml\nsteps:\n\n# Install PSRule.Rules.Azure from the PowerShell Gallery\n- task: ps-rule-install@2\n  inputs:\n    module: PSRule.Rules.Azure   # Install PSRule.Rules.Azure from the PowerShell Gallery.\n\n# Run analysis from JSON files using the `PSRule.Rules.Azure` module and custom rules from `.ps-rule/`.\n- task: ps-rule-assert@2\n  inputs:\n    modules: 'PSRule.Rules.Azure'            # Analyze objects using the rules within the PSRule.Rules.Azure PowerShell module.\n    outputFormat: NUnit3                     # Save results to an NUnit report.\n    outputPath: reports/ps-rule-results.xml  # Write NUnit report to 'reports/ps-rule-results.xml'.\n\n# Publish NUnit report as test results\n- task: PublishTestResults@2\n  displayName: 'Publish PSRule results'\n  inputs:\n    testRunTitle: 'PSRule'                          # The title to use for the test run.\n    testRunner: NUnit                               # Import report using the NUnit format.\n    testResultsFiles: 'reports/ps-rule-results.xml' # The previously saved NUnit report.\n```\n\n## Changes and versioning\n\nExtensions and tasks in this repository uses [semantic versioning](http://semver.org/) to declare breaking changes.\nFor a list of module changes please see the [change log](CHANGELOG.md).\n\n## Contributing\n\nThis project welcomes contributions and suggestions.\nIf you are ready to contribute, please visit the [contribution guide].\n\n## Code of Conduct\n\nThis project has adopted the [Microsoft Open Source Code of Conduct](https://opensource.microsoft.com/codeofconduct/).\nFor more information see the [Code of Conduct FAQ](https://opensource.microsoft.com/codeofconduct/faq/)\nor contact [opencode@microsoft.com](mailto:opencode@microsoft.com) with any additional questions or comments.\n\n## Maintainers\n\n- [Bernie White](https://github.com/BernieWhite)\n- [Sam Bell](https://github.com/ms-sambell)\n\n## License\n\nThis project is [licensed under the MIT License][license].\n\n[issue]: https://github.com/microsoft/PSRule-pipelines/issues\n[discussion]: https://github.com/microsoft/PSRule-pipelines/discussions\n[extension]: https://marketplace.visualstudio.com/items?itemName=bewhite.ps-rule\n[extension-install]: https://docs.microsoft.com/en-us/azure/devops/marketplace/install-extension?view=azure-devops\u0026tabs=browser\n[extension-version]: https://vsmarketplacebadges.dev/version/bewhite.psrule-vscode.png\n[ps-rule-assert]: docs/tasks.md#ps-rule-assert\n[ps-rule-install]: docs/tasks.md#ps-rule-install\n[contribution guide]: https://github.com/microsoft/PSRule-pipelines/blob/main/CONTRIBUTING.md\n[license]: https://github.com/microsoft/PSRule-pipelines/blob/main/LICENSE\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fpsrule-pipelines","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmicrosoft%2Fpsrule-pipelines","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmicrosoft%2Fpsrule-pipelines/lists"}