Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
25 commits
Select commit Hold shift + click to select a range
00782c8
added soanr qube and github actons
rapkalya Apr 30, 2025
60a745a
added common dependencies
rapkalya Apr 30, 2025
e55d666
feature/DTS-46284_LateRefinemnt_SC
Chittauri May 2, 2025
59e23d1
feature/QG_fix_SC
Chittauri May 2, 2025
9a2ce99
HARDCODED THE common version
rapkalya May 2, 2025
debc8b1
added extract stage
rapkalya May 2, 2025
c3884ab
added dependencies
rapkalya May 2, 2025
d06ac87
added cd
rapkalya May 2, 2025
c032792
combined
rapkalya May 2, 2025
a5678fc
test
rapkalya May 2, 2025
93f6372
test
rapkalya May 2, 2025
ea0010e
updated the version
rapkalya May 2, 2025
86bb135
test
rapkalya May 2, 2025
8d5141e
Merge pull request #5 from PublicisSapient/qa-master
shunaray May 2, 2025
9702ccd
Create .gitignore
sandhami May 2, 2025
a68d626
Merge pull request #7 from PublicisSapient/feature/DTS-46284_Late_Ref…
Chittauri May 2, 2025
61d5c02
updated the version common
rapkalya May 2, 2025
33c33b0
added -Dcommon.version=$COMMON_VERSION for common
rapkalya May 5, 2025
a47d2b0
added base branch
rapkalya May 5, 2025
5387c5b
Merge branch 'develop' into test-github-actions
rapkalya May 5, 2025
c283805
Merge pull request #9 from PublicisSapient/test-github-actions
rapkalya May 5, 2025
3d39409
updated the common
rapkalya May 5, 2025
67da0f9
Merge branch 'test-github-actions' of https://github.com/PublicisSapi…
rapkalya May 5, 2025
bd3026d
Merge branch 'develop' into test-github-actions
rapkalya May 5, 2025
73673b5
Merge pull request #12 from PublicisSapient/test-github-actions
rapkalya May 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 2 additions & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
# Global rule:
* @brahmanand1 @spal-sapient @aksshriv1 @shunaray @kunkambl @mampacch @nagendra-battala @Chittauri @gipathak @risshukl0 @ananthpal @manoj-srivastava
115 changes: 115 additions & 0 deletions .github/workflows/Processors_CI_Workflow.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,115 @@
name: Processors_CI_Workflow # Define the name of the workflow

# Define when the workflow should trigger
on:
pull_request:
types:
- labeled # Trigger when a label is added
- unlabeled # Trigger when a label is removed
- synchronize # Trigger when commits are pushed to the PR
- opened # Trigger when a PR is opened
- edited # Trigger when a PR title or description is edited
- ready_for_review # Trigger when a draft PR is marked as ready
- reopened # Trigger when a closed PR is reopened
- unlocked # Trigger when a locked PR is unlocked
branches: [master, develop, qa-master] # Apply to these branches
pull_request_review:
types: [edited, dismissed] # Trigger when a review is edited or dismissed
branches: [master, develop, qa-master]
workflow_dispatch: # Allow manual triggering of the workflow

# Define environment variables
env:
GITHUB_HEAD_NAME: $GITHUB_HEAD_REF # Store the head branch name
sonartoken: ${{ secrets.SONARQUBE_TOKEN }} # Secret for SonarQube authentication
sonarurl: ${{ secrets.SONARURL }} # SonarQube URL stored in secrets

jobs:

# ✅ Building & Testing Processors
processors_ci:
runs-on: ubuntu-latest
steps:
- name: Checkout Repository
uses: actions/checkout@v2

- name: Set Up Java
uses: actions/setup-java@v2
with:
distribution: 'adopt'
java-version: '17'

- name: Cache Maven packages
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-

- name: Clone & Build knowhow-common dependency
run: |
SOURCE_BRANCH="${{ github.head_ref }}"
TARGET_BRANCH="${{ github.event.pull_request.base.ref }}"

echo "Checking if branch '$SOURCE_BRANCH' exists in knowhow-common repo..."
if git ls-remote --heads https://github.com/PublicisSapient/knowhow-common.git $SOURCE_BRANCH | grep $SOURCE_BRANCH; then
BRANCH_TO_CLONE=$SOURCE_BRANCH
else
echo "Branch '$SOURCE_BRANCH' not found. Falling back to target branch '$TARGET_BRANCH'."
BRANCH_TO_CLONE=$TARGET_BRANCH
fi

git clone --branch $BRANCH_TO_CLONE https://github.com/PublicisSapient/knowhow-common.git
cd knowhow-common
mvn clean install -Ddockerfile.skip=true -X

- name: Get common version using Maven Help Plugin
run: |
cd knowhow-common
COMMON_VERSION=$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout)
echo "COMMON_VERSION=$COMMON_VERSION"
echo "COMMON_VERSION=$COMMON_VERSION" >> $GITHUB_ENV

- name: Build & Test Jira Processor
run: |
mvn clean install -Pjira-processor -Ddockerfile.skip=true -Dcommon.version=$COMMON_VERSION

- name: Build & Test Azure Board Processor
run: mvn clean install -Pazure-board-processor -Ddockerfile.skip=true -Dcommon.version=$COMMON_VERSION

- name: Build & Test DevOps Processor
run: mvn clean install -Pdevops-processor -Ddockerfile.skip=true -Dcommon.version=$COMMON_VERSION

- name: Build & Test Azure Pipeline Repo Processor
run: mvn clean install -Pazure-pipeline-repo -Ddockerfile.skip=true -Dcommon.version=$COMMON_VERSION

- name: SonarQube Analysis - Processors
run: |
mvn sonar:sonar -Dsonar.projectKey=ENGINEERING.KPIDASHBOARD.PROCESSORS \
-Dsonar.projectName=ENGINEERING.KPIDASHBOARD.PROCESSORS \
-Dsonar.branch.name=${{ env.GITHUB_HEAD_NAME }} \
-Dsonar.host.url=${{ secrets.SONARQUBE_HOST }} \
-Dcommon.version=$COMMON_VERSION \
-Dsonar.login=${{ secrets.SONARQUBE_TOKEN }} -f pom.xml

- name: Check SonarQube Quality Gate - Processors
run: |
chmod +x SonarQG.sh
./SonarQG.sh ./target/sonar/report-task.txt

# ✅ Final Job to Ensure Completion
GitHub_CI_Complete:
needs: [processors_ci]
if: always()
runs-on: ubuntu-latest
steps:
- name: Check Job Status
run: |
if [[ "${{ needs.processors_ci.result }}" == "failure" || \
"${{ needs.processors_ci.result }}" == "cancelled" ]]; then
echo "❌ One or more jobs failed or were cancelled. Failing CI."
exit 1
else
echo "✅ All relevant jobs have passed."
fi
212 changes: 212 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,212 @@
# Created by .ignore support plugin (hsz.mobi)
### Gradle template
.gradle
build/

# Ignore Gradle GUI config
gradle-app.setting

# Avoid ignoring Gradle wrapper jar file (.jar files are usually ignored)
!gradle-wrapper.jar


### JetBrains template
# Covers JetBrains IDEs: IntelliJ, RubyMine, PhpStorm, AppCode, PyCharm

*.iml

## Directory-based project format:
.idea/
# if you remove the above rule, at least ignore the following:

# User-specific stuff:
# .idea/workspace.xml
# .idea/tasks.xml
# .idea/dictionaries

# Sensitive or high-churn files:
# .idea/dataSources.ids
# .idea/dataSources.xml
# .idea/sqlDataSources.xml
# .idea/dynamic.xml
# .idea/uiDesigner.xml

# Gradle:
# .idea/gradle.xml
# .idea/libraries

# Mongo Explorer plugin:
# .idea/mongoSettings.xml

## File-based project format:
*.ipr
*.iws

## Plugin-specific files:

# IntelliJ
/out/

# mpeltonen/sbt-idea plugin
.idea_modules/

# JIRA plugin
atlassian-ide-plugin.xml

# Crashlytics plugin (for Android Studio and IntelliJ)
com_crashlytics_export_strings.xml
crashlytics.properties
crashlytics-build.properties


### Eclipse template
*.pydevproject
.metadata
bin/
tmp/
*.tmp
*.bak
*.swp
*~.nib
local.properties
.settings/
.loadpath

# Eclipse Core
# Eclipse Core
.project

# External tool builders
.externalToolBuilders/

# Locally stored "Eclipse launch configurations"
*.launch

# CDT-specific
.cproject

# JDT-specific (Eclipse Java Development Tools)
.classpath

# PDT-specific
.buildpath

# sbteclipse plugin
.target

# TeXlipse plugin
.texlipse


### Java template
*.class

# Mobile Tools for Java (J2ME)
.mtj.tmp/

# Package Files #
*.jar
*.war
*.ear

# virtual machine crash logs, see http://www.java.com/en/download/help/error_hotspot.xml
hs_err_pid*


### Maven template
target/
pom.xml.tag
pom.xml.releaseBackup
pom.xml.versionsBackup
pom.xml.next
release.properties
dependency-reduced-pom.xml
buildNumber.properties
.mvn/timing.properties


### Grails template
# .gitignore for Grails 1.2 and 1.3
# Although this should work for most versions of grails, it is
# suggested that you use the "grails integrate-with --git" command
# to generate your .gitignore file.

# web application files
/web-app/WEB-INF/classes

# default HSQL database files for production mode
/prodDb.*

# general HSQL database files
*Db.properties
*Db.script

# logs
/stacktrace.log
/test/reports
/logs
/**/logs

# project release file
/*.war

# plugin release files
/*.zip
/plugin.xml

# older plugin install locations
/plugins
/web-app/plugins

# "temporary" build files
/target
.DS*

/**/.pmd
/**/.ruleset

application-local.properties
customapi/test-output/

**/.factorypath

customapi/.eclipse-pmd


# compiled output
/**/dist
/**/tmp
/**/out-tsc
/**/coverage
/**/.scannerwork


# dependencies
/**/node_modules

# IDEs and editors
.c9/
*.sublime-workspace

# IDE - VSCode
.vscode/*
!.vscode/settings.json
!.vscode/tasks.json
!.vscode/launch.json
!.vscode/extensions.json

# misc
/**/.sass-cache
/**/connect.lock
/**/UI/libpeerconnection.log
npm-debug.log
yarn-error.log
testem.log
**/UI/typings

# System Files
.DS_Store
Thumbs.db
package-lock.json

.github/CODEOWNERS
Loading