mirror of https://github.com/louislam/uptime-kuma
				
				
				
			
		
			
				
	
	
		
			58 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
			
		
		
	
	
			58 lines
		
	
	
		
			1.8 KiB
		
	
	
	
		
			JavaScript
		
	
	
const github = require("@actions/github");
 | 
						|
 | 
						|
(async () => {
 | 
						|
    try {
 | 
						|
        const token = process.argv[2];
 | 
						|
        const issueNumber = process.argv[3];
 | 
						|
        const username = process.argv[4];
 | 
						|
 | 
						|
        const client = github.getOctokit(token).rest;
 | 
						|
 | 
						|
        const issue = {
 | 
						|
            owner: "louislam",
 | 
						|
            repo: "uptime-kuma",
 | 
						|
            number: issueNumber,
 | 
						|
        };
 | 
						|
 | 
						|
        const labels = (
 | 
						|
            await client.issues.listLabelsOnIssue({
 | 
						|
                owner: issue.owner,
 | 
						|
                repo: issue.repo,
 | 
						|
                issue_number: issue.number
 | 
						|
            })
 | 
						|
        ).data.map(({ name }) => name);
 | 
						|
 | 
						|
        if (labels.length === 0) {
 | 
						|
            console.log("Bad format here");
 | 
						|
 | 
						|
            await client.issues.addLabels({
 | 
						|
                owner: issue.owner,
 | 
						|
                repo: issue.repo,
 | 
						|
                issue_number: issue.number,
 | 
						|
                labels: [ "invalid-format" ]
 | 
						|
            });
 | 
						|
 | 
						|
            // Add the issue closing comment
 | 
						|
            await client.issues.createComment({
 | 
						|
                owner: issue.owner,
 | 
						|
                repo: issue.repo,
 | 
						|
                issue_number: issue.number,
 | 
						|
                body: `@${username}: Hello! :wave:\n\nThis issue is being automatically closed because it does not follow the issue template. Please **DO NOT open blank issues and use our [issue-templates](https://github.com/louislam/uptime-kuma/issues/new/choose) instead**.\nBlank Issues do not contain the context nessesary for a good discussions.`
 | 
						|
            });
 | 
						|
 | 
						|
            // Close the issue
 | 
						|
            await client.issues.update({
 | 
						|
                owner: issue.owner,
 | 
						|
                repo: issue.repo,
 | 
						|
                issue_number: issue.number,
 | 
						|
                state: "closed"
 | 
						|
            });
 | 
						|
        } else {
 | 
						|
            console.log("Pass!");
 | 
						|
        }
 | 
						|
    } catch (e) {
 | 
						|
        console.log(e);
 | 
						|
    }
 | 
						|
 | 
						|
})();
 |