If you're running in Jenkins, you probably need to set up a pipeline
job that uses a Jenkinsfile to configure the Docker containers to be
used. I don't think you can use Docker directly.
There's a bunch of repositories that include Jenkinsfiles to
configure their TCK jobs. The Jakarta
Mail Jenkinsfile might be a good place to start. It uses one
container to run the mail server and another container to run the
TCK itself. You could do the same and run the UDDI registry server
in its own container, or you could just run the server and the TCK
in the same container using the cts-base image that includes the
registry server.
The Jakarta Activation TCK has a simpler Jenkinsfile
if you want to do it with just one container.
Jim Krueger wrote on 8/15/19 2:24 PM:
Hi Bill,
This is running in Jenkins, not on any local machine I
have. So if docker needs to be installed I will need to have
Jenkins install it. I was hoping that the full script would
somehow show how to do this, but it doesn't. If you or
somebody else on this mailing list knows how to get docker
installed in this environment, please share. To the best of
my knowledge I will not have direct authority to do this
outside of the Jenkins jobs submitted via the UI. Thanks
Obviously you have to have docker
installed. Do you?
Here's the full script:
#!/bin/bash -x
for f in *.tar.gz
do
tar zxf "$f" -C $WORKSPACE --strip-components=5
done
ls
touch */*.xml
echo "Version Info:Eclipse GF version used : $GF_BUNDLE_URL"
if [ "${STANDALONETCK_BUILD}" == 'EFTL_JAKARTAEE8_PROMOTED' ]; then
export BUNDLE_URL="download.eclipse.org/ee4j/jakartaee-tck/jakartaee8-eftl/promoted"
export BUNDLE_LIST="eclipse-annotations-tck-1.3.0.zip eclipse-authentication-tck-1.1.0.zip eclipse-authorization-tck-1.5.0.zip eclipse-concurrency-tck-1.0.0.zip eclipse-connectors-tck-1.7.0.zip eclipse-_expression_-language-tck-3.0.0.zip eclipse-faces-tck-2.3.0.zip eclipse-jsonb-tck-1.0.0.zip eclipse-jsonp-tck-1.1.0.zip eclipse-messaging-tck-2.0.0.zip eclipse-pages-tck-2.3.0.zip eclipse-persistence-tck-2.2.0.zip eclipse-restful-ws-tck-2.1.0.zip eclipse-security-tck-1.0.0.zip eclipse-servlet-tck-4.0.0.zip eclipse-soap-tck-1.4.0.zip eclipse-tags-tck-1.2.0.zip eclipse-transactions-tck-1.3.0.zip eclipse-websocket-tck-1.1.0.zip eclipse-xml-registries-tck-1.0.0.zip eclipse-xml-rpc-tck-1.1.0.zip eclipse-xml-ws-tck-2.3.0.zip"
export DSOLTCK_BUNDLE_NAME="eclipse-debugging-tck-1.0.0.zip"
export JAF_BUNDLE_NAME="eclipse-activation-tck-1.2.0.zip"
elif [ "${STANDALONETCK_BUILD}" == 'EFTL_JAKARTAEE8_STAGED' ]; then
export BUNDLE_URL="download.eclipse.org/ee4j/jakartaee-tck/jakartaee8-eftl/staged"
export BUNDLE_LIST="eclipse-annotations-tck-1.3.0.zip eclipse-authentication-tck-1.1.0.zip eclipse-authorization-tck-1.5.0.zip eclipse-concurrency-tck-1.0.0.zip eclipse-connectors-tck-1.7.0.zip eclipse-_expression_-language-tck-3.0.0.zip eclipse-faces-tck-2.3.0.zip eclipse-jsonb-tck-1.0.0.zip eclipse-jsonp-tck-1.1.0.zip eclipse-messaging-tck-2.0.0.zip eclipse-pages-tck-2.3.0.zip eclipse-persistence-tck-2.2.0.zip eclipse-restful-ws-tck-2.1.0.zip eclipse-security-tck-1.0.0.zip eclipse-servlet-tck-4.0.0.zip eclipse-soap-tck-1.4.0.zip eclipse-tags-tck-1.2.0.zip eclipse-transactions-tck-1.3.0.zip eclipse-websocket-tck-1.1.0.zip eclipse-xml-registries-tck-1.0.0.zip eclipse-xml-rpc-tck-1.1.0.zip eclipse-xml-ws-tck-2.3.0.zip"
export DSOLTCK_BUNDLE_NAME="eclipse-debugging-tck-1.0.0.zip"
export JAF_BUNDLE_NAME="eclipse-activation-tck-1.2.0.zip"
fi
rm -rf $WORKSPACE/tckinfo.txt
touch $WORKSPACE/tckinfo.txt
if [ "${STANDALONETCK_BUILD}" != 'EFTL_JAKARTAEE8_BUILD_LATEST' ]; then
IFS=' ' # space is set as delimiter
read -ra FILESLIST <<< ${BUNDLE_LIST}
for i in "${FILESLIST[@]}"
do
BUNDLE_FILE="$(echo -e "${i}" | sed -e 's/^[[:space:]]*//' -e 's/[[:space:]]*$//')"
#wget --progress=bar:force --no-cache ${BUNDLE_URL}/$BUNDLE_FILE -O $BUNDLE_FILE
export NAME=$BUNDLE_FILE
echo '***********************************************************************************' >> $WORKSPACE/tckinfo.txt
echo '*** TCK bundle information ***' >> $WORKSPACE/tckinfo.txt
echo "*** Name: ${NAME} ***" >> $WORKSPACE/tckinfo.txt
echo "*** Download URL: ${BUNDLE_URL}/${NAME} ***" >> $WORKSPACE/tckinfo.txt
#echo '*** Date and size: '`stat -c "date: %y, size(b): %s" ${NAME}`' ***'>> $WORKSPACE/tckinfo.txt
#echo "*** SHA256SUM: "`sha256sum ${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo '*** Date: '`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx stat -c \"%y\" ${NAME} /home/data/httpd/${BUNDLE_URL}`" ***">> $WORKSPACE/tckinfo.txt
echo "*** Size(b): "`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx wc -c /home/data/httpd/${BUNDLE_URL}/${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo "*** SHA256SUM: "`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx sha256sum /home/data/httpd/${BUNDLE_URL}/${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo '*** ***' >> $WORKSPACE/tckinfo.txt
echo '***********************************************************************************' >> $WORKSPACE/tckinfo.txt
#rm -rf $BUNDLE_FILE
done
#wget --progress=bar:force --no-cache ${BUNDLE_URL}/$DSOLTCK_BUNDLE_NAME -O $DSOLTCK_BUNDLE_NAME
#wget --progress=bar:force --no-cache ${BUNDLE_URL}/$JAF_BUNDLE_NAME -O $JAF_BUNDLE_NAME
for tckfile in $DSOLTCK_BUNDLE_NAME $JAF_BUNDLE_NAME
do
export NAME=$tckfile
echo '***********************************************************************************' >> $WORKSPACE/tckinfo.txt
echo '*** TCK bundle information ***' >> $WORKSPACE/tckinfo.txt
echo "*** Name: ${NAME} ***" >> $WORKSPACE/tckinfo.txt
echo "*** Download URL: ${BUNDLE_URL}/${NAME} ***" >> $WORKSPACE/tckinfo.txt
#echo '*** Date and size: '`stat -c "date: %y, size(b): %s" ${NAME}`' ***'>> $WORKSPACE/tckinfo.txt
#echo "*** SHA256SUM: "`sha256sum ${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo '*** Date: '`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx stat -c \"%y\" ${NAME} /home/data/httpd/${BUNDLE_URL}`" ***">> $WORKSPACE/tckinfo.txt
echo "*** Size(b): "`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx wc -c /home/data/httpd/${BUNDLE_URL}/${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo "*** SHA256SUM: "`ssh genie.jakartaee-tck@xxxxxxxxxxxxxxxxxxxxxxxxxxxx sha256sum /home/data/httpd/${BUNDLE_URL}/${NAME} | awk '{print $1}'`' ***' >> $WORKSPACE/tckinfo.txt
echo '*** ***' >> $WORKSPACE/tckinfo.txt
echo '***********************************************************************************' >> $WORKSPACE/tckinfo.txt
#rm -rf $tckfile
done
fi
Jim
Krueger wrote on 8/15/19 6:16 AM:
Thanks Alwin,
I have tried to follow the instructions you sent to
add the dockerfile to my script in jenkins:
docker run --rm -dit -p 8080:8080
jakartaee/cts-base:0.1 bash -c
"/opt/jwsdp-1.3/bin/startup.sh; cat"
However, when I attempt to run I get this error:
+ docker run --rm -dit -p 8080:8080 jakartaee/cts-base:0.1 bash -c '/opt/jwsdp-1.3/bin/startup.sh; cat'
/tmp/jenkins689184042016424581.sh: line 1: docker: not found
Build step 'Execute shell' marked build as failure
I tried to look at the screen shots you sent to see how your jobs bring in this docker image, but they only include the first page of the scripts used.
Can you please copy the full scripts into a file and send that or tell me what I need to add to my script (attached).
Thanks
Hi Jim,
1. Can you also check this wiki
mentioning the step to start UDDI registry using
the cts-base image. If this works for you, this
would be sufficient to run the JAXR tests by using
the registry URL in the test configuration.
2. Screen shots of the job are
attached, but they have specific steps and
properties required to run the jakartaeee-tck/master
pipeline job for all the tcks.
3. I can't find the link to the tar file now, will
get back on that. If other approaches work,
hopefully you won't need that.
Thanks & Regards,
Alwin Joseph
On
14/08/19 9:48 PM, Jim Krueger wrote:
Hi Alwin,
Also, in earlier notes in this chain you
mentioned being able to download the
jwsdp-1.3.tar. Where are you downloading this
from? Do you have a link? Earlier in this
chain I was given the following link, but that
downloads only a .sh or .exe that performs an
install. I link to download the actual .tar
file might be helpful. Thanks
Thanks Alwin,
Can you please provide screenshots from
the jobs specified above (I'm assuming I
will need to mimic these to a point):
Thanks
Hi Jim,
If you are unable to download the
JWSDP, I recommend you follow the
approach to use the docker image.
I have made some preliminary changes
at https://github.com/alwin-joseph/jaxr-api
to use the image(jakartaee/cts-base)
to run the jaxr tck tests. Can you go
through and build up over it. I
suggest you rewrite the test script
docker/jaxrtck.sh by following the tck
run instructions.
Also you need to create a pipeline
job using the Jenkinsfile in your CI
instance for this repo.
Thanks & Regards,
Alwin Joseph
On
14/08/19 12:02 AM, Jim Krueger wrote:
Hi,
1. If you are planning to
create the job by yourself,
you do not need to create
separate docker image with the
jwsdp. You can directly
download the jwsdp-1.3.tar and
install it right before
running the test.
- Install jwsdp : To use
jwsdp-1.3.tar it is also
required to set JAVA_HOME as
j2sdk1.4 in the
jwsdp-shared/bin/setenv.sh
Below is the pseudo
script to install
jwsdp(BASEDIR to be changed as
required)
cp jwsdp-1.3.tar
$BASEDIR/JWSDP/
cp
j2sdk-1_4_2_41-linux-i586.tar.gz
$BASEDIR/JWSDP/
cd $BASEDIR/JWSDP/
tar xvf jwsdp-1.3.tar
tar zxvf
j2sdk-1_4_2_41-linux-i586.tar.gz
chmod -R 777
$BASEDIR/JWSDP/
sed -i
"s#JAVA_HOME=.*#JAVA_HOME=$BASEDIR/JWSDP/j2sdk1.4.2_41#g"
$BASEDIR/JWSDP/jwsdp-1.3/jwsdp-shared/bin/setenv.sh
sed -i
"s#JWSDP_HOME=.*#JWSDP_HOME=$BASEDIR/JWSDP/jwsdp-1.3#g"
$BASEDIR/JWSDP/jwsdp-1.3/jwsdp-shared/bin/setenv.sh
sed -i
"s#ANT_HOME=.*#ANT_HOME=$BASEDIR/JWSDP/jwsdp-1.3/apache-ant#g"
$BASEDIR/JWSDP/jwsdp-1.3/jwsdp-shared/bin/setenv.sh
sed -i
"s#UNINSTALL_JAR_FILE=.*#ANT_HOME=$BASEDIR/JWSDP/jwsdp-1.3/_uninst/uninstall.jar#g"
$BASEDIR/JWSDP/jwsdp-1.3/jwsdp-shared/bin/setenv.sh
- Use the script jaxrtck.sh
to run the standalone jaxr
tests . We invoke the
"./startup.sh" to start the
JWSDP in it.
2. If you provide the
glassfish integrated with the
right APIs we can trigger the
below certification jobs. To
recreate the below it is
required to have a pipeline
job created in the jenkins
instance corresponding to
this Jenkinsfile.
If required I will send the
screen captures mentioning the
steps for the below jobs.
-https://ci.eclipse.org/jakartaee-tck/job/standalonetck-certification/
-https://ci.eclipse.org/jakartaee-tck/job/eftl-standalonetck-certification/
Thanks & Regards,
Alwin Joseph
On
13/08/19 7:15 PM, Jim Krueger
wrote:
Adding Maxim to this
notes chain (This is the
issue you were discussing
this morning with Kevin
Sutter).
Ultimately we are going
to need an automated,
repeatable process for the
JAXR TCK run in Jenkins.
It may be my lack of
experience, but it doesn't
seem like any of the
approaches mentioned thus
far satisfy this
requirement.
Thanks Alwin.
Unfortunately I do not
have authority to view
the Jenkins jobs you
specified. Can you
please send me the
script and/or screen
captures for these?
Thanks
Hi Jim,
We have created
the docker image (jakartaee/cts-base)
with the JWSDP
download and use
that in our Jenkinsfile (image:
jakartaee/cts-base:0.1) to create a pipeline job in jenkins instance. The Jenkinsfile is used for all our standalone
and jakartaee-tck
runs, so will have
more than what you
require.
Considering the
other solution, we
can always trigger
the below jobs to
run JAXR
standalone TCK
runs if the
prepared glassfish
bundle(url) is
provided.
-https://ci.eclipse.org/jakartaee-tck/job/standalonetck-certification/
-https://ci.eclipse.org/jakartaee-tck/job/eftl-standalonetck-certification/
Thanks,
Alwin
On
13/08/19 5:56 PM,
Jim Krueger wrote:
Thanks
Bill. The
question I
have now is
how do we
include this
Dockerfile
image or JWSDP
download as
part of the
Jenkins job
that runs the
JAXR TCK?
Does anyone
have
experience in
this area and
can provide
some pointers?
Thanks,
The Dockerfile
is here:
https://github.com/eclipse-ee4j/jakartaee-tck/blob/master/docker-images/cts-base/Dockerfile
You should be
able to use
the
jakartaee/cts-base
Docker image
if you want.
The JWSDP
download is on
this page:
https://www.oracle.com/technetwork/java/javasebusiness/downloads/java-archive-downloads-jwsdp-419428.html
Yes, the JWSDP
is long since
obsolete.
Components of
JWSDP were
included in
GlassFish long
ago. Some of
the components
needed by the
TCK tests
never found a
new home. If
anyone wants
to rewrite the
TCK to avoid
the
dependency, go
for it!
Kevin
Sutter wrote
on 8/9/19
10:10 AM:
Just talked with David
Blevins on our
Spec Committee
call. He
indicated that
the use of
/opt/jwsdp
might require
a special
docker
image??? And,
us mere
mortals may
not have
access to this
special docker
image? He's
going to
forward the
necessary
information to
this mailing
list. We
might need to
just get
somebody with
necessary
permissions to
run the TCK
for us and
then post the
results.
---------------------------------------------------
Kevin Sutter
STSM,
MicroProfile
and Jakarta EE
architect
e-mail: sutter@xxxxxxxxxx
Twitter:
@kwsutter
phone:
tl-553-3620
(office),
507-253-3620
(office)
LinkedIn: https://www.linkedin.com/in/kevinwsutter
From:
Jim Krueger <jckofbyron@xxxxxxxxx>
To:
jakartaee-tck developer
discussions <jakartaee-tck-dev@xxxxxxxxxxx>
Date:
08/09/2019 11:11 AM
Subject:
[EXTERNAL] Re:
[jakartaee-tck-dev]
any expertise
with the JAXR
TCK bucket?
Sent
by: jakartaee-tck-dev-bounces@xxxxxxxxxxx
I
see that JWSDP
was supposed
to be included
in GlassFish,
but that
doesn't seem
to be the case
(or maybe I'm
missing
something?).
The scripts
Alwin pointed
to appear to
be using JWSDP
1.3. I don't
think we will
be able to
install and
use JWSDP for
the Jakarta
CTS Jenkins
jobs for
Jakarta XML
Registries.
On
Fri, Aug 9,
2019 at 10:06
AM Kevin
Sutter <sutter@xxxxxxxxxx> wrote:
Thanks,
Alwin! That
might help.
Since we're
running this
as part of the
Platform, then
I would hope
that we can
use the
registry
server as
defined by the
Platform.
We're also
confused by
the
"requirement"
for JWSDP. I
read somewhere
that jwsdp was
old technology
and should no
longer be
used. But,
the
configuration
files all seem
to expect this
to be setup.
Any ideas
about that?
---------------------------------------------------
Kevin Sutter
STSM,
MicroProfile
and Jakarta EE
architect
e-mail: sutter@xxxxxxxxxx Twitter: @kwsutter
phone:
tl-553-3620
(office),
507-253-3620
(office)
LinkedIn: https://www.linkedin.com/in/kevinwsutter
From: Alwin Joseph <alwin.joseph@xxxxxxxxxx>
To: jakartaee-tck developer
discussions
<jakartaee-tck-dev@xxxxxxxxxxx>, Kevin Sutter <sutter@xxxxxxxxxx>
Date: 08/09/2019 09:44 AM
Subject:
[EXTERNAL] Re:
[jakartaee-tck-dev]
any expertise
with the JAXR
TCK bucket?
Hi Kevin,
We use the
script run_jakartaeetck.shwith jaxr argument to run the JAXR tests
in
JakartaeeTCK
bundle from
the jenkins
jobs.
JAXR tests
require a UDDI
registry
server to be
setup(configuration
added to the
ts.jte). We
have included
a registry
server in the
docker image (jakartaee/cts-base) which we use to run the tests and start the
server before
we run the
tests.
Thanks &
Regards,
Alwin Joseph
On 09/08/19
7:08 PM, Kevin
Sutter wrote:
We're trying
to run the
JAXR subbucket
from the
Platform TCK.
The
documentation
doesn't seem
to match up
with the
content of the
build.properties and the ts.jte file, along with some possible sample
"vendor
implementation"
configuration
files. If
anybody has
any experience
with the
configuration
required to
run this
bucket, we'd
appreciate
some help.
Thanks!
---------------------------------------------------
Kevin Sutter
STSM,
MicroProfile
and Jakarta EE
architect
e-mail: sutter@xxxxxxxxxx Twitter: @kwsutter
phone:
tl-553-3620
(office),
507-253-3620
(office)
LinkedIn: https://www.linkedin.com/in/kevinwsutter
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your
delivery
options,
retrieve your
password, or
unsubscribe
from this
list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your
delivery
options,
retrieve your
password, or
unsubscribe
from this
list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your
delivery
options,
retrieve your
password, or
unsubscribe
from this
list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your
delivery
options,
retrieve your
password, or
unsubscribe
from this
list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
_______________________________________________
jakartaee-tck-dev mailing list
jakartaee-tck-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://www.eclipse.org/mailman/listinfo/jakartaee-tck-dev
|