1- import { adminGroupPath } from '@cpn-console/shared'
21import type { Project , StepCall } from '@cpn-console/hooks'
32import { generateProjectKey , parseError } from '@cpn-console/hooks'
43import type { VaultProjectApi } from '@cpn-console/vault-plugin/types/vault-project-api.js'
@@ -27,13 +26,17 @@ const projectPermissions = [
2726 'user' ,
2827]
2928
30- export async function initSonar ( ) {
29+ export async function initSonar ( config ?: { adminGroupPath ?: string } ) {
30+ const adminGroupPath = config ?. adminGroupPath
31+ if ( ! adminGroupPath ) {
32+ throw new Error ( 'adminGroupPath is required' )
33+ }
3134 await setTemplatePermisions ( )
32- await createAdminGroup ( )
33- await setAdminPermisions ( )
35+ await createAdminGroup ( adminGroupPath )
36+ await setAdminPermisions ( adminGroupPath )
3437}
3538
36- async function createAdminGroup ( ) {
39+ async function createAdminGroup ( adminGroupPath : string ) {
3740 const axiosInstance = getAxiosInstance ( )
3841 const adminGroup = await findGroupByName ( adminGroupPath )
3942 if ( ! adminGroup ) {
@@ -48,7 +51,7 @@ async function createAdminGroup() {
4851 }
4952}
5053
51- async function setAdminPermisions ( ) {
54+ async function setAdminPermisions ( adminGroupPath : string ) {
5255 const axiosInstance = getAxiosInstance ( )
5356 for ( const permission of globalPermissions ) {
5457 await axiosInstance ( {
0 commit comments