Hi Community,
I'm unable to pass parameters from Jenkins to remote shell script.
These (3) parameters are;
${DATABASE}
${SCHEMA}
${COMMENT}
I have a Jenkins project that uses a slave machine (sys-07) to run shell
scripts on a remote host (raloda10).
The shell script on the remote host (raloda10), below, works like a charm
on remote host.
/u01/app/oracle/databases/dev11g05/bod/jenky_bod_gsa.sh
The shell script is denoted in the Jenkins build ala "* SCRIPT " *variable.
In the Jenkins project > configure GUI screens we have the parameterized
build using Build > Execute Shell (below, between 1-EXECUTE SHELL COMMANDS
text)
-----------------------------------------
However the console output (below, between 2-CONSOLE OUTPUT text) shows
that the (3) parameters are not passed to the shell script as the places
where they should be are blank at the runtime.
The remote host target script (below, between 3-REMOTE SCRIPT CONTENTS text
) does not get the (3) parameters from Jenkins build.
I've tried a few workarounds but nothing works.
Any advice or help is greatly appreciated.
Thank you for your time,
Donald
============== 1-EXECUTE SHELL COMMANDS
==================================================================================
*#!/bin/bash/opt/admin/bin/print_jenkins_vars.sh export
ORACLE_USER="oracle" ;export ODA_HOST="raloda10" ;export
SCRIPT="/u01/app/oracle/databases/dev11g05/bod/jenky_bod_gsa.sh" ;export
ORACLE_BASE="/u01/app/oracle" ;export
ORACLE_HOME="/u01/app/oracle/product/11.2.0.4/dbhome_1" ;export
PATH="$ORACLE_HOME/bin:$PATH:$HOME/bin" ;export
LD_LIBRARY_PATH="$ORACLE_HOME/lib" ;echo BUILD_TAG
= ${BUILD_TAG} ;echo ORACLE_USER = ${ORACLE_USER} ;echo
ODA_HOST = ${ODA_HOST} ;echo SCRIPT
= ${SCRIPT} ;echo SOURCE_DATABASE = ${DATABASE}
;echo SOURCE_SCHEMA = ${SCHEMA} ;echo COMMENT
= ${COMMENT} ;echo# echo "========== Running ${SCRIPT} on
${ODA_HOST} =========="; echosudo -i -u ${ORACLE_USER} ssh ${ODA_HOST}
"source /home/oracle/.bash_profile ; ${SCRIPT} ${DATABASE} ${SCHEMA}
${COMMENT}"# echo# echo "========== Running ${SCRIPT} on ${ODA_HOST}
=========="; *
============== 1-EXECUTE SHELL COMMANDS
==================================================================================
============== 2-CONSOLE OUTPUT
==================================================================================
......
*========== Jenkins vars ==========
BUILD_TAG = jenkins-ERROR-GSA-Ad_Hoc-88
ORACLE_USER = oracle
ODA_HOST = raloda10
SCRIPT = /u01/app/oracle/databases/dev11g05/bod/jenky_bod_gsa.sh
SOURCE_DATABASE = DEV11G05
SOURCE_SCHEMA = ASA14101X5
COMMENT = good state archive
Source database of good state schema: ...
Name of good state schema: ...
Directory location: /export/nfs01/ODA//DMP/ARCHIVE//20170803_1157
Comment: ...
grep: /u01/app/oracle/databases//schema//schema_backup_make_new_sod_source.sh:
No such file or directory
LRM-00109: could not open parameter file
'/u01/app/oracle/databases//schema//expdp_.par'
LRM-00113: error when processing file
'/u01/app/oracle/databases//schema//expdp_.par'
mv: cannot stat `/export/nfs01/ODA//DMP/EXPDP**.DMP': No such file or directory
Build step 'Execute shell' marked build as failure
Finished: FAILURE*
============== 2-CONSOLE OUTPUT
==================================================================================
============== 3-REMOTE SCRIPT CONTENTS
==================================================================================
#!/bin/bash
#
export ORACLE_SID=DEV11G05
export ORACLE_BASE=/u01/app/oracle
export ORACLE_HOME=/u01/app/oracle/product/11.2.0.4/dbhome_1
export PATH=$ORACLE_HOME/bin:$PATH:$HOME/bin
export LD_LIBRARY_PATH=$ORACLE_HOME/lib
#
#
#
#
declare daystamp
daystamp=$(date +"%Y%m%d_%H%M")
#
# ------- jenky param covert -------
#
sourcedatabase=${DATABASE}
sourceschema=${SCHEMA}
bodcomment=${COMMENT}
#
echo ${DATABASE}
echo ${SCHEMA}
echo ${COMMENT}
#
# ------- jenky param covert -------
#
#
sourcedatabase=`echo $sourcedatabase | tr '[a-z]' '[A-Z]'`
sourcedatabaselw=`echo $sourcedatabase | tr '[A-Z]' '[a-z]'`
sourceschema=`echo $sourceschema | tr '[a-z]' '[A-Z]'`
targetdatabase=`echo $targetdatabase | tr '[a-z]' '[A-Z]'`
targetdatabaselw=`echo $targetdatabase | tr '[A-Z]' '[a-z]'`
targetdatabaseup=`echo $targetdatabase | tr '[a-z]' '[A-Z]'`
targetdbstatus=`echo $targetdbstatus | tr '[a-z]' '[A-Z]'`
targetschemalower=`echo $targetschema | tr '[A-Z]' '[a-z]'`
targetschemalower=`echo $targetschema | tr '[A-Z]' '[a-z]'`
targetschemaupper=`echo $targetschema | tr '[a-z]' '[A-Z]'`
targetschemapassupper=`echo $targetschemapass | tr '[a-z]' '[A-Z]'`
sourceschemalower=`echo $sourceschema | tr '[A-Z]' '[a-z]'`
sourceschemapassup=`echo $sourceschemapass | tr '[a-z]' '[A-Z]'`
sourceschemaupper=`echo $sourceschema | tr '[a-z]' '[A-Z]'`
gsadir=/export/nfs01/ODA/$sourcedatabase/DMP/ARCHIVE/$sourceschemaupper/$daystamp
bodtype=GSA
echo
echo
echo Source database of good state schema: $sourcedatabase
echo Name of good state schema: $sourceschemaupper
echo Directory location: $gsadir
echo Comment: $bodcomment
echo
echo
#
#
#
#
# ------- make GSA directory --------
#
mkdir -p
/export/nfs01/ODA/$sourcedatabase/DMP/ARCHIVE/$sourceschemaupper/$daystamp
# ls -l
/export/nfs01/ODA/$sourcedatabase/DMP/ARCHIVE/$sourceschemaupper/$daystamp
#
# ------- make GSA directory --------
#
#
#
# ------- get source schema pass -------
#
#
dpline=`grep "expdp"
/u01/app/oracle/databases/$sourcedatabaselw/schema/$sourceschemalower/schema_backup_make_new_sod_source.sh`
sourceschemapass=`echo ${dpline} | cut -d"@" -f1 | cut -d"/" -f2`
echo $sourceschemapass
#
#
# ------- get ource schema pass -------
#
#
#
# ------- expdp to dmp then move to archive -------
#
expdp $sourceschemaupper/$sourceschemapass@$sourcedatabase
parfile=/u01/app/oracle/databases/$sourcedatabaselw/schema/$sourceschemalower/expdp_$sourceschemalower.par
mv /export/nfs01/ODA/$sourcedatabase/DMP/EXPDP*${sourceschemaupper}*.DMP
/export/nfs01/ODA/$sourcedatabase/DMP/ARCHIVE/$sourceschemaupper/$daystamp
#
#
exit
============== 3-REMOTE SCRIPT CONTENTS
==================================================================================
--
You received this message because you are subscribed to the Google Groups
"Jenkins Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To view this discussion on the web visit
https://groups.google.com/d/msgid/jenkinsci-users/515e6a89-aedd-407d-8c18-68b9d04f9b3f%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.