Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Develop #18

Open
wants to merge 51 commits into
base: master
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
51 commits
Select commit Hold shift + click to select a range
7d3803f
minor adjustments
Apr 5, 2017
df0feae
consistent naming
Apr 5, 2017
3eab751
adjusted Jenkinsfile.unix to use new targets and structure
Apr 6, 2017
4055cba
moved ENV.groovy here from sagdevops-ci-assets, since this file is pr…
Apr 6, 2017
2d83b26
cleanup and readme
Apr 7, 2017
a5bf89a
artifactory integration
Apr 12, 2017
83923dc
artifactory integration
Apr 12, 2017
4737027
artifactory integration
Apr 12, 2017
0218672
fix test issue
Apr 12, 2017
6fdcca3
added default parameters to ENV.groovy
Apr 12, 2017
4ee7229
added additional test package for varsub
Apr 18, 2017
9fb0bc6
removed dependency to WxConfig
Apr 18, 2017
a50a824
removed jdbc adapter for simpler tests
Apr 18, 2017
fbb62a5
added http port to test package for varsub demonstration
Apr 18, 2017
4cfc1e6
added dummy config assets for varsub
Apr 18, 2017
72322ad
added dummy config assets for varsub
Apr 18, 2017
5787add
added http port to test package for varsub demonstration
Apr 18, 2017
8333810
added http port to test package for varsub demonstration
Apr 18, 2017
eb225d9
enabled varsub by adding default config folder to Packages asset dir
Apr 19, 2017
7e881c8
enabling varsub for is configuration assets
Apr 19, 2017
41137c6
removed class files ffrom IS package code/classes folder
Apr 19, 2017
7edb01d
removed class files ffrom IS package code/classes folder
Apr 19, 2017
eb22742
changed deployment to QA env to contain one server only, see SR 5278431
Apr 19, 2017
db524ff
removed varsub templates from henning_sagdevops-ci-assets and moved t…
Apr 19, 2017
8f4fb32
added Jenkinsfile which demonstrates how to donwload a fbr artifact f…
Apr 19, 2017
b4cb403
unified and simplified configuration. Added parameter to Jenkinsfile …
Apr 19, 2017
afb2c31
added extensive documentation
Apr 20, 2017
51b44ed
extended documentation
Apr 20, 2017
8d56583
first version using splitDelpoymentSets
Apr 25, 2017
7c57f76
added property to control the deployer project name prefix
Apr 26, 2017
744c7ff
added property to control the deployer project name prefix
Apr 26, 2017
5b57c25
clean up Jenkinsfiles for Artifactory integration
May 4, 2017
c88fbc3
clean up Jenkinsfiles
May 4, 2017
55022bf
cleanupproperties naming: prefixed asset locations with 'config.assets.'
May 17, 2017
406a2d4
moved config property config.deployer.doVarSub to webmethods-sample-p…
May 17, 2017
8c1af23
updated documentation
May 18, 2017
0a68774
updated documentation
May 18, 2017
f03365b
added config parameter for default project name 'config.project.proje…
May 24, 2017
446a0ed
updated SimpleTestPackage test asset to contain jms and messaging tri…
May 24, 2017
9c17096
updated documentation
May 24, 2017
abb29a8
fix Jenkinsfile.win, replace sh by bat
May 25, 2017
394b8b5
adjust Jenkinsfile to explicitly set ANT_HOME in order to avoid class…
May 25, 2017
10991e3
adjust Jenkinsfile to explicitly set ANT_HOME in order to avoid class…
May 25, 2017
11aa528
changed default project.properties setting for trigger quiesce mode t…
May 25, 2017
d5ea9cd
enhancements for tests
May 31, 2017
c634b98
added static code analysis to Jenkinsfile.win
May 31, 2017
aa7e7bd
chnaged report directory to use jenkins workspace dir as root
May 31, 2017
9c26b4e
chnaged report directory to use jenkins workspace dir as root
May 31, 2017
2ec54f2
refactoring to handle empty test results
May 31, 2017
d225f48
added option to inject externally defined environment and thus overri…
Jun 1, 2017
47ac78e
merge with new progress
AngelSAG Jun 13, 2017
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
7 changes: 7 additions & 0 deletions .classpath
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<classpath>
<classpathentry kind="src" path="src"/>
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
<classpathentry kind="con" path="com.sag.gcs.wmtestsuite.runtime.WmTestSuiteContainer"/>
<classpathentry kind="output" path="bin"/>
</classpath>
7 changes: 7 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
/logs
/bin/
/assets/IS/Packages/config/*
/assets/IS/Packages/*/code/classes/**/*.class
/**/*.bak*
assets/IS/Tests/*/resources/reports/**/*.*
ENV99.groovy
17 changes: 17 additions & 0 deletions .project
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>henning_webmethods-sample-project-layout</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.jdt.core.javabuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.jdt.core.javanature</nature>
</natures>
</projectDescription>
131 changes: 131 additions & 0 deletions ENV.groovy
Original file line number Diff line number Diff line change
@@ -0,0 +1,131 @@
IntegrationServer {
defaults =
[version : "9.12",
installDeployerResource: 'false',
test : 'false',
executeACL : 'Administrators',
useSSL : 'false']
}

ProcessModel {
defaults =
[version: '9.12',
test : 'true',
useSSL : 'false']
}

MyWebmethodsServer {
defaults =
[
version : '9.12',
excludeCoreTaskEngineDependencies: 'true',
cacheTimeOut : 900,
includeSecurityDependencies : 'true',
rootFolderAliases : 'folder.public',
maximumFolderObjectCount : 10000,
enableAddtionalLogging : 'true',
maxFolderDepth : 25,
test : 'true',
useSSL : 'false'
]
}


environments {
DEV {
IntegrationServers {
is_node1 {
host = "localhost"
port = "8094"
username = "Administrator"
pwd = "manage"
}
}
}
TEST {
IntegrationServers {
is_node1 {
version = "9.9" // overwrite global version property
host = "localhost"
port = "5599"
username = "Administrator"
pwd = "manage"
}
}
}
QA {
IntegrationServers {
is_node1 {
version = "9.9" // overwrite global version property
host = "localhost"
port = "5599"
username = "Administrator"
//pwd = "manage"
pwdHandle = "ADMIN_IS_QA"
}
is_node2 {
version = "9.9" // overwrite global version property
host = "localhost"
port = "5699"
username = "Administrator"
//pwd = "manage"
pwdHandle = "ADMIN_IS_QA"
}
}
}
PRE_PROD_WITH_MWS_AND_BPM {
IntegrationServers {
is_node1 {
host = "localhost"
port = "8080"
username = "Administrator"
pwd = "manage"
}
is_node2 {
host = "localhost"
port = "8080"
username = "Administrator"
pwd = "manage"
}
}
ProcessModels {
bpm_node1 {
host = "localhost"
port = "5555"
username = "Administrator"
pwd = "manage"
}
bpm_node2 {
host = "localhost"
port = "5555"
username = "Administrator"
pwd = "manage"
}
}
MWS {
mws_node1 {
host = "localhost"
port = "5555"
username = "Administrator"
pwd = "manage"
}
}
}
PROD {
IntegrationServers {
is_node1 {
host = "localhost"
port = "8080"
username = "Administrator"
useSSL = "true"
}
is_node2 {
host = "localhost"
port = "8080"
username = "Administrator"
pwd = "manage"
useSSL = "true"
}
}
}
}
55 changes: 55 additions & 0 deletions Jenkinsfile.artifacctoryUpload.unix
Original file line number Diff line number Diff line change
@@ -0,0 +1,55 @@
pipeline {
agent any

environment {
// currentDir can be set to specific dir for non github testing
currentDir = "."
artifactoryServerName = "localArtifactory"
artifactoryFileSpecName = "${env.JOB_NAME}.${env.BUILD_NUMBER}.filespec.json"
artifactoryUploadFileSpecName = "upload.${artifactoryFileSpecName}"
artifactoryDownloadFileSpecName = "download.${artifactoryFileSpecName}"
fbrType = "artifactory"
ANT_HOME="${env.SAG_HOME}/common/AssetBuildEnvironment/ant"
cmd = "${ANT_HOME}/bin/ant -f ${currentDir}/build.xml -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -Dbda.projectName=${env.JOB_NAME} -Dconfig.build.fbr.type=${fbrType}"
}

stages {
stage('Build'){
steps {
echo "Build stage"
sh "${cmd} build"
}
}
stage('DeployToTest') {
steps {
echo "Deploy stage"
sh "${cmd} deploy"
echo "Executing tests"
sh "${cmd} test"
junit 'report/'
}
}
stage('Publish') {
steps {
echo "Publish stage"
sh "${cmd} -Dbda.artifactoryFileSpecName=${artifactoryUploadFileSpecName} prepareArtifactoryUploadSpec"
script {
def server = Artifactory.server "${artifactoryServerName}"
def uploadSpec = readFile "${artifactoryUploadFileSpecName}"
def buildInfo = Artifactory.newBuildInfo()
buildInfo.env.capture = true
buildInfo.env.collect()
// Upload to Artifactory.
server.upload spec: uploadSpec, buildInfo: buildInfo
server.publishBuildInfo buildInfo
}
}
}
stage('QA') {
steps {
echo "QA stage"
sh "${cmd} deploy"
}
}
}
}
72 changes: 72 additions & 0 deletions Jenkinsfile.artifactoryDownload.unix
Original file line number Diff line number Diff line change
@@ -0,0 +1,72 @@
pipeline {
agent any

environment {
// currentDir can be set to specific dir for non github testing
currentDir = "."
artifactoryServerName = "localArtifactory"
artifactoryFileSpecName = "${env.JOB_NAME}.${env.BUILD_NUMBER}.filespec.json"
artifactoryUploadFileSpecName = "upload.${artifactoryFileSpecName}"
artifactoryDownloadFileSpecName = "download.${artifactoryFileSpecName}"
fbrType = "artifactory"
ANT_HOME="${env.SAG_HOME}/common/AssetBuildEnvironment/ant"
cmd = "${ANT_HOME}/bin/ant -f ${currentDir}/build.xml -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -Dbda.projectName=${env.JOB_NAME} -Dconfig.build.fbr.type=${fbrType}"
}

stages {
stage('Build'){
steps {
echo "Build stage"
sh "${cmd} build"
}
}
stage('DeployToTest') {
steps {
echo "Deploy stage"
sh "${cmd} deploy"
echo "Executing tests"
sh "${cmd} test"
junit 'report/'
}
}
stage('Publish') {
steps {
echo "Publish stage"
sh "${cmd} -Dbda.artifactoryFileSpecName=${artifactoryUploadFileSpecName} prepareArtifactoryUploadSpec"
script {
def server = Artifactory.server "${artifactoryServerName}"
def uploadSpec = readFile "${artifactoryUploadFileSpecName}"
def buildInfo = Artifactory.newBuildInfo()
buildInfo.env.capture = true
buildInfo.env.collect()
// Upload to Artifactory.
server.upload spec: uploadSpec, buildInfo: buildInfo
server.publishBuildInfo buildInfo
}
}
}
stage('Download') {
steps {
echo "Download stage"
sh "${cmd} -Dbda.artifactoryFileSpecName=${artifactoryDownloadFileSpecName} prepareArtifactoryDownloadSpec"
script {
def server = Artifactory.server "${artifactoryServerName}"
def downloadSpec = readFile "${artifactoryDownloadFileSpecName}"
def buildInfo = Artifactory.newBuildInfo()
buildInfo.env.capture = true
buildInfo.env.collect()

// download from Artifactory.
server.download spec: downloadSpec, buildInfo: buildInfo
server.publishBuildInfo buildInfo
}
}
}
stage('QA') {
steps {
echo "QA stage"
sh "${cmd} deploy"
}
}
}
}
60 changes: 39 additions & 21 deletions Jenkinsfile.unix
100644 → 100755
Original file line number Diff line number Diff line change
@@ -1,22 +1,40 @@
pipeline {
agent any

stages {
stage('Build'){
steps {
sh "${env.SAG_HOME}/common/AssetBuildEnvironment/ant/bin/ant -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -DprojectName=${env.JOB_NAME} build"
}
}
stage('Deploy') {
steps {
sh "${env.SAG_HOME}/common/AssetBuildEnvironment/ant/bin/ant -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -DprojectName=${env.JOB_NAME} deploy"
}
}
stage('Test') {
steps {
sh "${env.SAG_HOME}/common/AssetBuildEnvironment/ant/bin/ant -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -DprojectName=${env.JOB_NAME} test"
junit 'report/'
}
}
}
}
agent any

environment {
// currentDir can be set to specific dir for non github testing
currentDir = "."
fbrType = "local"
reportDir = "report"
// set ANT_HOME and overwrite any system set ANT_HOME var
ANT_HOME="${env.SAG_HOME}/common/AssetBuildEnvironment/ant"
cmd = "${ANT_HOME}/bin/ant -f ${currentDir}/build.xml -DSAGHome=${env.SAG_HOME} -DSAG_CI_HOME=${env.SAG_CI_HOME} -Dbda.projectName=${env.JOB_NAME} -Dconfig.build.fbr.type=${fbrType}"
}

stages {
stage('Build'){
steps {
echo "Build stage"
sh "${cmd} staticCodeAnalysis -Dbda.targetEnv=BUILD"
// empty results are allowed because isccr may be disabled
junit allowEmptyResults: true, testResults: "${reportDir}/TEST-*.xml"
sh "${cmd} build -Dbda.targetEnv=BUILD"
}
}
stage('DeployToTest') {
steps {
echo "Deploy stage"
sh "${cmd} deploy -Dbda.targetEnv=TEST"
echo "Executing tests"
sh "${cmd} test -Dbda.targetEnv=TEST"
junit "${reportDir}/TEST-*.xml"
}
}
stage('QA') {
steps {
echo "QA stage"
sh "${cmd} deploy -Dbda.targetEnv=QA"
}
}
}
}
Loading