fix(deps): update module github.com/hashicorp/terraform-plugin-testing to v1.11.0 #2809
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: "Validate PR" | |
on: | |
pull_request_target: | |
types: | |
- opened | |
- edited | |
- synchronize | |
permissions: | |
pull-requests: write | |
jobs: | |
check-pr-title: | |
name: Validate PR title | |
runs-on: ubuntu-latest | |
steps: | |
- uses: amannn/action-semantic-pull-request@v5 | |
id: lint_pr_title | |
env: | |
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | |
- uses: marocchino/sticky-pull-request-comment@v2 | |
# When the previous steps fails, the workflow would stop. By adding this | |
# condition you can continue the execution with the populated error message. | |
if: always() && (steps.lint_pr_title.outputs.error_message != null) | |
with: | |
header: pr-title-lint-error | |
message: | | |
Hey there and thank you for opening this pull request! 👋🏼 | |
We require pull request titles to follow the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/) and it looks like your proposed title needs to be adjusted. | |
Details: | |
``` | |
${{ steps.lint_pr_title.outputs.error_message }} | |
``` | |
# Delete a previous comment when the issue has been resolved | |
- if: ${{ steps.lint_pr_title.outputs.error_message == null }} | |
uses: marocchino/sticky-pull-request-comment@v2 | |
with: | |
header: pr-title-lint-error | |
delete: true | |
enforce-packages: | |
name: Prevent new files in `equinix` package | |
runs-on: ubuntu-latest | |
steps: | |
- uses: actions/github-script@v7 | |
id: check_added_files | |
with: | |
result-encoding: string | |
retries: 3 | |
script: | | |
const files = await github.paginate(github.rest.pulls.listFiles,{ | |
owner: context.repo.owner, | |
repo: context.repo.repo, | |
pull_number: context.issue.number | |
}) | |
const blockedFiles = [] | |
for (const file of files) { | |
if (file.status === "added" && file.filename.match(/equinix\/[^\/]*\.go/)) { | |
blockedFiles.push("- " + file.filename) | |
} | |
} | |
var errorMessage = "" | |
if (blockedFiles.length > 0) { | |
errorMessage = `The following files were added to the \`equinix\` package and must be moved somewhere else: | |
${blockedFiles.join("\n")} | |
` | |
core.setFailed(errorMessage) | |
} | |
return errorMessage | |
- uses: marocchino/sticky-pull-request-comment@v2 | |
# When the previous steps fails, the workflow would stop. By adding this | |
# condition you can continue the execution with the populated error message. | |
if: always() && (steps.check_added_files.outputs.result != '') | |
with: | |
header: files-added-to-equinix-error | |
message: | | |
We are actively working to reduce the amount of code in the `equinix` | |
package to avoid unintentional code sharing. | |
New files should be added in an isolated package instead of adding | |
more code to the `equinix` package. You may need to refactor and/or | |
temporarily duplicate existing code in order to move your new code | |
to an isolated package. | |
Details: | |
``` | |
${{ steps.check_added_files.outputs.result }} | |
``` | |
# Delete a previous comment when the issue has been resolved | |
- if: steps.check_added_files.outputs.result == '' | |
uses: marocchino/sticky-pull-request-comment@v2 | |
with: | |
header: files-added-to-equinix-error | |
delete: true |