skeet
Version:
Full-stack TypeScript Serverless Framework
49 lines (44 loc) • 1.19 kB
text/typescript
import { execSyncCmd } from '@/lib/execSyncCmd'
export const runEnableAllPermission = async (projectId: string) => {
await enableServiceListPermission(projectId, serviceList)
}
export const enableServiceListPermission = async (
projectId: string,
serviceList: Array<string>
) => {
serviceList.forEach(async (serviceName) => {
await enablePermission(projectId, serviceName)
})
}
export const enablePermission = async (
projectId: string,
serviceName: string
) => {
const serviceEnableCmd = [
'gcloud',
'services',
'enable',
serviceName,
'--project',
projectId,
]
await execSyncCmd(serviceEnableCmd)
}
export const serviceList = [
'compute.googleapis.com',
'iam.googleapis.com',
'dns.googleapis.com',
'sqladmin.googleapis.com',
'sql-component.googleapis.com',
'servicenetworking.googleapis.com',
'containerregistry.googleapis.com',
'run.googleapis.com',
'vpcaccess.googleapis.com',
'cloudscheduler.googleapis.com',
'cloudresourcemanager.googleapis.com',
'translate.googleapis.com',
'firestore.googleapis.com',
'cloudfunctions.googleapis.com',
'cloudbuild.googleapis.com',
'cloudtasks.googleapis.com',
]