feat: add devops and reconciler services to CI/CD pipeline

- Create freeleaps-service-hub directory structure with alpha, prod, helm-pkg
- Create freeleaps-devops-reconciler directory structure with alpha, prod, helm-pkg
- Add .gitkeep files in prod directories
- Add Jenkinsfile for devops service in freeleaps-service-hub/alpha/ci/
- Add Jenkinsfile for reconciler service in freeleaps-devops-reconciler/alpha/ci/
- Remove old CI/CD configurations that were reverted to original state
This commit is contained in:
Nicolas 2025-07-21 09:41:27 +08:00
parent f6c515157c
commit 233d88467b
6 changed files with 144 additions and 40 deletions

View File

@ -2,9 +2,9 @@ library 'first-class-pipeline'
executeFreeleapsPipeline {
serviceName = 'freeleaps'
environmentSlug = 'prod'
serviceGitBranch = 'master'
serviceGitRepo = "https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps2-reconciler.git"
environmentSlug = 'alpha'
serviceGitBranch = 'dev'
serviceGitRepo = "https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-devops-reconciler.git"
serviceGitRepoType = 'monorepo'
serviceGitCredentialsId = 'freeleaps-repos-gitea-credentails'
executeMode = 'fully'
@ -12,7 +12,7 @@ executeFreeleapsPipeline {
components = [
[
name: 'reconciler',
root: 'apps/reconciler',
root: '.',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',

View File

@ -0,0 +1,140 @@
library 'first-class-pipeline'
executeFreeleapsPipeline {
serviceName = 'freeleaps'
environmentSlug = 'alpha'
serviceGitBranch = 'dev'
serviceGitRepo = "https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps-service-hub.git"
serviceGitRepoType = 'monorepo'
serviceGitCredentialsId = 'freeleaps-repos-gitea-credentails'
executeMode = 'fully'
commitMessageLintEnabled = false
components = [
[
name: 'authentication',
root: 'apps/authentication',
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: 'authentication',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'centralStorage',
root: 'apps/central_storage',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
buildCacheEnabled: true,
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'central_storage',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'content',
root: 'apps/content',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
buildCacheEnabled: true,
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'content',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'notification',
root: 'apps/notification',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
buildCacheEnabled: true,
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'notification',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'payment',
root: 'apps/payment',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildAgentImage: 'python:3.10-slim-buster',
buildArtifacts: ['.'],
buildCacheEnabled: true,
lintEnabled: false,
sastEnabled: false,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'payment',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
],
[
name: 'devops',
root: 'apps/devops',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildCacheEnabled: true,
buildAgentImage: 'python:3.12-slim',
buildArtifacts: ['.'],
lintEnabled: true,
sastEnabled: true,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'devops',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
]
]
}

View File

@ -1 +0,0 @@

View File

@ -1,35 +0,0 @@
library 'first-class-pipeline'
executeFreeleapsPipeline {
serviceName = 'freeleaps'
environmentSlug = 'prod'
serviceGitBranch = 'master'
serviceGitRepo = "https://gitea.freeleaps.mathmast.com/freeleaps/freeleaps2-devops.git"
serviceGitRepoType = 'monorepo'
serviceGitCredentialsId = 'freeleaps-repos-gitea-credentails'
executeMode = 'fully'
commitMessageLintEnabled = false
components = [
[
name: 'devops',
root: 'apps/devops',
language: 'python',
dependenciesManager: 'pip',
requirementsFile: 'requirements.txt',
buildCacheEnabled: true,
buildAgentImage: 'python:3.12-slim',
buildArtifacts: ['.'],
lintEnabled: true,
sastEnabled: true,
imageRegistry: 'docker.io',
imageRepository: 'freeleaps',
imageName: 'devops',
imageBuilder: 'dind',
dockerfilePath: 'Dockerfile',
imageBuildRoot: '.',
imageReleaseArchitectures: ['linux/amd64', 'linux/arm64/v8'],
registryCredentialsId: 'freeleaps-devops-docker-hub-credentials',
semanticReleaseEnabled: true
]
]
}