library 'first-class-pipeline'

executeFreeleapsPipeline {
  serviceName = 'magicleaps'
  environmentSlug = 'alpha'
  serviceGitBranch = 'master'
  serviceGitRepo = "https://freeleaps@dev.azure.com/freeleaps/magicleaps/_git/magicleaps"
  serviceGitRepoType = 'monorepo' // monorepo, separated
  executeMode = 'fully' // on-demand, fully
  commitMessageLintEnabled = false
  components = [
    [
      name: 'frontend',
      root: 'frontend',
      language: 'javascript',
      dependenciesManager: 'npm',
      npmPackageJsonFile: 'package.json',
      buildCacheEnabled: true,
      buildCommand: 'npm run build',
      lintEnabled: true,
      linter: 'eslint',
      sastEnabled: true,
      sastProvider: 'NodeJsScan',
      imageRegistry: 'docker.io',
      imageRepository: 'sunzhenyucn',
      imageName: 'magicleaps-frontend',
      imageBuilder: 'dind',
      dockerfilePath: 'Dockerfile',
      imageBuildRoot: '.',
      imageReleaseArchitectures: ['amd64', 'arm64'],
      registryCredentialName: 'first-class-pipeline-dev-secret',
      semanticReleaseEnabled: true,
      semanticReleaseBranch: 'master'
    ],
    [
      name: 'backend',
      root: 'backend',
      language: 'python',
      dependenciesManager: 'pip',
      buildCacheEnabled: true,
      lintEnabled: true,
      linter: 'PyLint',
      sastEnabled: true,
      sastProvider: 'Bandit',
      imageRegistry: 'docker.io',
      imageRepository: 'sunzhenyucn',
      imageName: 'magicleaps-backend',
      imageBuilder: 'dind',
      dockerfilePath: 'Dockerfile',
      imageBuildRoot: '.',
      imageReleaseArchitectures: ['amd64', 'arm64'],
      registryCredentialName: 'first-class-pipeline-dev-secret',
      semanticReleaseEnabled: true,
      semanticReleaseBranch: 'master'
    ]
  ]
}