chore: More tweaks to skip-build script
This commit is contained in:
parent
4c60ab7c0b
commit
4582b5f717
5 changed files with 36 additions and 14 deletions
|
@ -3,7 +3,7 @@ import { execSync } from 'child_process'
|
||||||
|
|
||||||
const branchesToNeverBuild = ['i18n']
|
const branchesToNeverBuild = ['i18n']
|
||||||
|
|
||||||
export const shouldSkipBuild = (siteName, checkFolders = '../shared .') => {
|
export const shouldSkipBuild = (site, checkFolders = '../shared .') => {
|
||||||
const branch = process.env.VERCEL_GIT_COMMIT_REF
|
const branch = process.env.VERCEL_GIT_COMMIT_REF
|
||||||
const commit = process.env.VERCEL_GIT_COMMIT_SHA
|
const commit = process.env.VERCEL_GIT_COMMIT_SHA
|
||||||
const author = process.env.VERCEL_GIT_COMMIT_AUTHOR_LOGIN
|
const author = process.env.VERCEL_GIT_COMMIT_AUTHOR_LOGIN
|
||||||
|
@ -23,16 +23,32 @@ export const shouldSkipBuild = (siteName, checkFolders = '../shared .') => {
|
||||||
process.exit(1)
|
process.exit(1)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Do not build dependabot PRs
|
// Alwys build when explicitly requested
|
||||||
if (author.toLowerCase().includes('ependabot')) {
|
if (msg.includes('please-build')) {
|
||||||
console.log('🛑 Not building: Dependabot PR')
|
console.log('✅ - Building: Commit message includes please-build')
|
||||||
|
process.exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Never build the sanity site unless explicitly requested
|
||||||
|
if (site === 'sanity') {
|
||||||
|
console.log(
|
||||||
|
"🛑 Not building: Sanity site. You need to include 'please-build' in your commit message to build this site"
|
||||||
|
)
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Always build develop branch
|
// Never build the lab site unless explicitly requested
|
||||||
if (branch === 'develop') {
|
if (site === 'lab') {
|
||||||
console.log('✅ - Building: develop branch is always built')
|
console.log(
|
||||||
process.exit(1)
|
"🛑 Not building: Lab site. You need to include 'please-build' in your commit message to build this site"
|
||||||
|
)
|
||||||
|
process.exit(0)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Do not build dependabot PRs
|
||||||
|
if (author.toLowerCase().includes('dependabot')) {
|
||||||
|
console.log('🛑 Not building: Dependabot PR')
|
||||||
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
// Do not build branches that should never be build
|
// Do not build branches that should never be build
|
||||||
|
@ -47,6 +63,12 @@ export const shouldSkipBuild = (siteName, checkFolders = '../shared .') => {
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// Always build develop branch
|
||||||
|
if (branch === 'develop') {
|
||||||
|
console.log('✅ - Building: develop branch is always built')
|
||||||
|
process.exit(1)
|
||||||
|
}
|
||||||
|
|
||||||
// Only build pull requests that made changes to the given site
|
// Only build pull requests that made changes to the given site
|
||||||
if (process.env.VERCEL_GIT_PULL_REQUEST_ID) {
|
if (process.env.VERCEL_GIT_PULL_REQUEST_ID) {
|
||||||
try {
|
try {
|
||||||
|
@ -78,14 +100,14 @@ export const shouldSkipBuild = (siteName, checkFolders = '../shared .') => {
|
||||||
`git diff --name-only $(git merge-base develop HEAD) HEAD -- ${checkFolders}`
|
`git diff --name-only $(git merge-base develop HEAD) HEAD -- ${checkFolders}`
|
||||||
).toString()
|
).toString()
|
||||||
if (changes) {
|
if (changes) {
|
||||||
console.log(`✅ - ${siteName} Pull Request - Proceed to build`)
|
console.log(`✅ - ${site} Pull Request - Proceed to build`)
|
||||||
process.exit(1)
|
process.exit(1)
|
||||||
}
|
}
|
||||||
} catch (e) {
|
} catch (e) {
|
||||||
console.log(e)
|
console.log(e)
|
||||||
}
|
}
|
||||||
|
|
||||||
console.log(`🛑 - Pull Request made no changes to ${siteName} - Do not build`)
|
console.log(`🛑 - Pull Request made no changes to ${site} - Do not build`)
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
import { shouldSkipBuild } from '../../scripts/skip-build-base.mjs'
|
import { shouldSkipBuild } from '../../scripts/skip-build-base.mjs'
|
||||||
|
|
||||||
shouldSkipBuild('Dev', '../shared . ../../markdown/dev')
|
shouldSkipBuild('dev', '../shared . ../../markdown/dev')
|
||||||
|
|
|
@ -8,4 +8,4 @@ const triggerFolders = [
|
||||||
'../../packages/core',
|
'../../packages/core',
|
||||||
].join(' ')
|
].join(' ')
|
||||||
|
|
||||||
shouldSkipBuild('Lab', triggerFolders)
|
shouldSkipBuild('lab', triggerFolders)
|
||||||
|
|
|
@ -1,3 +1,3 @@
|
||||||
import { shouldSkipBuild } from '../../scripts/skip-build-base.mjs'
|
import { shouldSkipBuild } from '../../scripts/skip-build-base.mjs'
|
||||||
|
|
||||||
shouldSkipBuild('Org', '../shared . ../../markdown/org')
|
shouldSkipBuild('org', '../shared . ../../markdown/org')
|
||||||
|
|
|
@ -4,4 +4,4 @@ import process from 'node:process'
|
||||||
// For now, never build CMS
|
// For now, never build CMS
|
||||||
process.exit(0)
|
process.exit(0)
|
||||||
|
|
||||||
shouldSkipBuild('Sanity', '.')
|
shouldSkipBuild('sanity', '.')
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue