freeleaps-ops/freeleaps/prod/ci/freeleaps2-frontend/Jenkinsfile
zhenyus f99753cdd7 feat: change Jenkins pipeline execution mode to on-demand
Signed-off-by: zhenyus <zhenyus@mathmast.com>
2025-03-07 07:30:39 +08:00

78 lines
2.5 KiB
Groovy

library 'first-class-pipeline'
executeFreeleapsPipeline {
serviceName = 'freeleaps'
environmentSlug = 'prod'
serviceGitBranch = 'master'
serviceGitRepo = "https://freeleaps@dev.azure.com/freeleaps/freeleaps2-frontend/_git/freeleaps2-frontend"
serviceGitRepoType = 'monorepo'
serviceGitCredentialsId = 'freeleaps-azure-devops-credentials'
executeMode = 'on-demand'
commitMessageLintEnabled = false
components = [
[
name: 'chat',
root: 'apps/chat',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildCacheEnabled: true,
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'chat',
imageBuilder: 'dind',
dockerfilePath: '../chat.Dockerfile',
imageBuildRoot: '..',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'freeleaps',
root: 'apps/freeleaps',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildCacheEnabled: true,
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'backend',
imageBuilder: 'dind',
dockerfilePath: '../freeleaps.Dockerfile',
imageBuildRoot: '..',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'frontend',
root: 'frontend',
language: 'javascript',
dependenciesManager: 'pnpm',
pnpmPackageJsonFile: 'package.json',
buildCacheEnabled: true,
buildAgentImage: 'node:lts',
buildCommand: 'pnpm -r build',
buildArtifacts: ['freeleaps/dist'],
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'frontend',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
]
]
}