Files
wwdpublic/Tools/prtitlecase/index.js
DEATHB4DEFEAT 5a379f2d0d Workflow to Automatically Title Case PRs (#468)
# Description

Hooray, more JavaScript!
I tested this on a personal repo with a new PAT, but it *should* work
here first try.

---------

Signed-off-by: DEATHB4DEFEAT <77995199+DEATHB4DEFEAT@users.noreply.github.com>
2024-06-17 14:25:29 +01:00

20 lines
770 B
JavaScript

import axios from 'axios';
import { titleCase } from 'title-case';
if (process.env.GITHUB_TOKEN) axios.defaults.headers.common['Authorization'] = `token ${process.env.GITHUB_TOKEN}`;
else throw new Error('BOT_TOKEN was not provided in repository secrets or GITHUB_TOKEN was not set correctly.');
// Get PR title
let prTitle = await axios.get(`https://api.github.com/repos/${process.env.GITHUB_REPOSITORY}/pulls/${process.env.PR_NUMBER}`)
.then(res => res.data.title);
// Title case PR title
console.log(`Old PR title: ${prTitle}`);
prTitle = titleCase(prTitle);
console.log(`New PR title: ${prTitle}`);
// Update PR title
await axios.patch(`https://api.github.com/repos/${process.env.GITHUB_REPOSITORY}/pulls/${process.env.PR_NUMBER}`,
{ title: prTitle });