microsoft/mu_feature_ffa

Public

mirrored fromhttps://github.com/microsoft/mu_feature_ffaAvailable

CodeCommitsIssuesPull requestsActionsInsightsSecurity
3d4b142bc3f2df66be0148459e45a92d4a1edf2c

Branches

Tags

  • No tags available.
0Branches0Tags
Go to file
Add file
Code

Clone

HTTPS

Download ZIP

.github/workflows/pull-request-formatting-validator.yml

63lines · modepreview

# This workflow validates basic pull request formatting requirements are met.
#
# NOTE: This file is automatically synchronized from Mu DevOps. Update the original file there
#       instead of the file in this repo.
#
# - Mu DevOps Repo: https://github.com/microsoft/mu_devops
# - File Sync Settings: https://github.com/microsoft/mu_devops/blob/main/.sync/Files.yml
#
# Copyright (c) Microsoft Corporation.
# SPDX-License-Identifier: BSD-2-Clause-Patent
#

name: Validate Pull Request Formatting

on:
  pull_request_target:
    types:
      - edited
      - opened
      - reopened
      - synchronize

jobs:
  validate_pr:
    runs-on: ubuntu-latest

    steps:
      - name: Generate Token
        id: app-token
        uses: actions/create-github-app-token@v2
        with:
          app-id: ${{ vars.MU_ACCESS_APP_ID }}
          private-key: ${{ secrets.MU_ACCESS_APP_PRIVATE_KEY }}
          owner: ${{ github.repository_owner }}

      - run: |
          prTitle="$(gh api graphql -F owner=$OWNER -F name=$REPO -F pr_number=$PR_NUMBER -f query='
            query($name: String!, $owner: String!, $pr_number: Int!) {
              repository(owner: $owner, name: $name) {
                pullRequest(number: $pr_number) {
                  title
                }
              }
            }')"

          if [[ "${prTitle}" == *"Personal/"* ]]; then
            gh pr comment $PR_URL --body "⚠️ Please add a meaningful PR title (remove the 'Personal/' prefix from the title)."
            echo 'VALIDATION_ERROR=true' >> $GITHUB_ENV
          fi

        env:
          GITHUB_TOKEN: ${{ steps.app-token.outputs.token }}
          OWNER: ${{ github.repository_owner }}
          PR_NUMBER: ${{ github.event.number }}
          PR_URL: ${{ github.event.pull_request.html_url }}
          REPO: ${{ github.event.repository.name }}

      - name: Check for Validation Errors
        if: env.VALIDATION_ERROR
        uses: actions/github-script@v8
        with:
          script: |
            core.setFailed('PR Formatting Validation Check Failed!')