Compare commits

..

No commits in common. "2f7c629aa79202652e04d38e5c89b1a1bc6f2e91" and "4989ff9883945a4d6b0e93fd966cc4f74a2783aa" have entirely different histories.

2 changed files with 58 additions and 31 deletions

79
Jenkinsfile vendored
View File

@ -10,7 +10,6 @@ pipeline {
stages { stages {
stage('Build & Test') { stage('Build & Test') {
agent { label getAgentLabel() } agent { label getAgentLabel() }
environment { environment {
@ -20,11 +19,15 @@ pipeline {
stages { stages {
stage('Cleanup Workspace') { stage('Cleanup Workspace') {
steps { cleanWs() } steps {
cleanWs()
}
} }
stage('Checkout') { stage('Checkout') {
steps { checkout scm } steps {
checkout scm
}
} }
stage('Inject Environment File') { stage('Inject Environment File') {
@ -37,20 +40,22 @@ pipeline {
} }
} }
steps { steps {
configFileProvider([ configFileProvider(
configFile( [configFile(
fileId: getEnvFileId(), fileId: getEnvFileId(),
targetLocation: 'src/environments/environment.ts', targetLocation: 'src/environments/environment.ts',
replaceTokens: true replaceTokens: true
) )]
]) { ) {
echo "Injected environment for ${env.BRANCH_NAME}" echo "Injected environment for ${env.BRANCH_NAME}"
} }
} }
} }
stage('Install Dependencies') { stage('Install Dependencies') {
steps { sh 'npm ci' } steps {
sh 'npm ci'
}
} }
stage('Run Tests') { stage('Run Tests') {
@ -60,7 +65,6 @@ pipeline {
branch pattern: "bug/.*", comparator: "REGEXP" branch pattern: "bug/.*", comparator: "REGEXP"
branch 'develop' branch 'develop'
branch 'prod' branch 'prod'
changeRequest()
} }
} }
steps { steps {
@ -73,20 +77,24 @@ pipeline {
anyOf { anyOf {
branch 'develop' branch 'develop'
branch 'prod' branch 'prod'
changeRequest()
} }
} }
steps { steps {
sh 'ng build --configuration production --base-href /admin/' sh '''
ng build --configuration production --base-href /admin/
'''
} }
} }
} }
} }
stage('Production Approval') { stage('Production Approval') {
when { branch 'prod' } when {
branch 'prod'
}
steps { steps {
input message: 'Approve deployment to PRODUCTION?', ok: 'Deploy' input message: "Approve deployment to PRODUCTION?", ok: "Deploy"
} }
} }
@ -120,13 +128,18 @@ pipeline {
""" """
} }
} }
} }
} }
} }
post { post {
success { echo "Deployment successful for ${env.BRANCH_NAME}" } success {
failure { echo "Deployment failed for ${env.BRANCH_NAME}" } echo "Deployment successful for ${env.BRANCH_NAME}"
}
failure {
echo "Deployment failed for ${env.BRANCH_NAME}"
}
} }
} }
@ -135,27 +148,41 @@ pipeline {
// //
def getAgentLabel() { def getAgentLabel() {
return env.BRANCH_NAME == 'prod' ? 'oracle-prod' : 'built-in' if (env.BRANCH_NAME == 'prod') {
return 'oracle-prod'
} else {
return 'built-in'
}
} }
def getEnvFileId() { def getEnvFileId() {
return env.BRANCH_NAME == 'prod' ? 'admin-prod-properties' : 'admin-uat-properties' if (env.BRANCH_NAME == 'prod') {
return 'admin-prod-properties'
} else {
return 'admin-uat-properties'
}
} }
def getDeployPath() { def getDeployPath() {
return env.BRANCH_NAME == 'prod' if (env.BRANCH_NAME == 'prod') {
? "/var/www/bangararaju.kottedi.in/admin" return "/var/www/bangararaju.kottedi.in/admin"
: "/var/www/bangararaju.kottedi.in/admin" } else {
return "/var/www/bangararaju.kottedi.in/admin"
}
} }
def getHealthUrl() { def getHealthUrl() {
return env.BRANCH_NAME == 'prod' if (env.BRANCH_NAME == 'prod') {
? "https://bangararaju.kottedi.in/admin" return "https://bangararaju.kottedi.in/admin"
: "https://bangararaju-uat.kottedi.in/admin" } else {
return "https://bangararaju-uat.kottedi.in/admin"
}
} }
def getChromeBin() { def getChromeBin() {
return env.BRANCH_NAME == 'prod' if (env.BRANCH_NAME == 'prod') {
? "/snap/bin/chromium" return "/snap/bin/chromium"
: "/usr/bin/chromium" } else {
return "/usr/bin/chromium"
}
} }

View File

@ -8,12 +8,12 @@ import { provideHttpClientTesting } from '@angular/common/http/testing';
declare const beforeEach: (fn: () => void) => void; declare const beforeEach: (fn: () => void) => void;
getTestBed().initTestEnvironment( getTestBed().initTestEnvironment(
BrowserTestingModule, BrowserTestingModule,
platformBrowserTesting() platformBrowserTesting()
); );
beforeEach(() => { beforeEach(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
providers: [provideZonelessChangeDetection(), provideHttpClient(), provideHttpClientTesting()] providers: [provideZonelessChangeDetection(), provideHttpClient(), provideHttpClientTesting()]
}); });
}); });