jakartaee / rest

Jakarta RESTful Web Services
Other
353 stars 114 forks source link

Migrate TCK Generation CI job to https://ci.eclipse.org/rest/ #1083

Closed alwin-joseph closed 3 months ago

alwin-joseph commented 2 years ago

The migrated jaxrs TCK is currently built and bundled using CI job https://ci.eclipse.org/jakartaee-tck/job/jakarta-rest-tck-build that exists in jakartaee-tck CI and the eftl licensed bundle copied to https://download.eclipse.org/ee4j/jakartaee-tck/jakartaee10/staged/eftl/. It also creates SHASUM file for each newly generated TCK bundle.

Ideally the tck building job should be present at https://ci.eclipse.org/rest/ CI instance, and the bundle copied over to jaxrs-api project owned Eclipse directory (probably a new folder at https://download.eclipse.org/ee4j/ ).

The jobs https://ci.eclipse.org/jakartaee-tck/job/jakarta-rest-tck-build and https://ci.eclipse.org/jakartaee-tck/job/jakarta-rest-tck-build-epl may be recreated at https://ci.eclipse.org/rest with any expected modifications.

alwin-joseph commented 2 years ago

Below should be done as part of this issue

  1. Get new folder created at https://download.eclipse.org/ee4j/ as https://download.eclipse.org/ee4j/jaxrs . We can check if the below command works when run in a CI job. If it does not we would need help from Eclipse infra team(use bugzilla) for creating new directory at /home/data/httpd/download.eclipse.org/ee4j/jaxrs

ssh -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null genie.jaxrs@projects-storage.eclipse.org mkdir -p /home/data/httpd/download.eclipse.org/ee4j/jaxrs

CI job config :

  1. Run mvn clean install from $WORKSPACE(/jaxrs-api) The Job can be a maven project where mvn command is executed or run the mvn command in shell script separately.

  2. In shell script execute below to generate EFTL bundle.

    cd $WORKSPACE/jaxrs-tck-docs/
    sh tckbundle.sh

Note: To generate EPL bundle below can be executed

cd $WORKSPACE/jaxrs-tck-docs/
sh tckbundle.sh epl

The tckbundle.sh accepts the bundle license as first argument(eftl/EFTL or epl/EPL). By default it generates EFTL bundle if no argument is passed.

  1. The bundle will be generated at $WORKSPACE/bundle. The same will need to be copied to any folder within https://download.eclipse.org/ee4j/jaxrs .

  2. Generate SHASUM file and copy the same to https://download.eclipse.org/ee4j/jaxrs

spericas commented 2 years ago

Any volunteers to do this?

mkarg commented 2 years ago

Why do we need a new job? Shouldn't we build and publish the TCK as part of the existing API job?

alwin-joseph commented 2 years ago

Why do we need a new job? Shouldn't we build and publish the TCK as part of the existing API job?

There are more tasks that need to be done for the TCKs apart from the usual mvn install.

Below can be accomplished by running jaxrs-tck-docs/tckbundle.sh.

Below are accomplished via the Jenkins job currently.

If all the above can be done via the API job we do not need another Jenkins job. Along with this, the latest TCK jar should be uploaded to the maven repository.

mkarg commented 2 years ago

At the moment I do not see any reason for a second Jenkins job. I can look into extending the existing one, but unfortunately this will take a while as my desk is full already.

alwin-joseph commented 1 year ago

It would be great if this issue is addressed sooner so that the next releases(post-3.1.1) of REST TCK (EFTL & EPL) can be done at REST Jenkins.

alwin-joseph commented 3 months ago

New folder has been created at https://download.eclipse.org/ee4j/restful-ws to copy the restful-ws TCK, gitlab issue: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/4440 .

New Jenkins job https://ci.eclipse.org/rest/job/TCK_EFTL_build_and_stage can be used to build and stage new TCK bundles from main branch.

cc @jansupol @spericas @jim-krueger @jamezp

jim-krueger commented 3 months ago

Awesome! Thanks Alwin!!

On Mar 19, 2024, at 7:19 AM, Alwin Joseph @.***> wrote:

New folder has been created at https://download.eclipse.org/ee4j/restful-ws to copy the restful-ws TCK, gitlab issue: https://gitlab.eclipse.org/eclipsefdn/helpdesk/-/issues/4440 .

New Jenkins job https://ci.eclipse.org/rest/job/TCK_EFTL_build_and_stage can be used to build and stage new TCK bundles from main branch.

cc @jansupol https://github.com/jansupol @spericas https://github.com/spericas @jim-krueger https://github.com/jim-krueger @jamezp https://github.com/jamezp — Reply to this email directly, view it on GitHub https://github.com/jakartaee/rest/issues/1083#issuecomment-2007020524, or unsubscribe https://github.com/notifications/unsubscribe-auth/AHSLZQHVN44MLLFE2KATUSDYZAUNXAVCNFSM5L4DIGOKU5DIOJSWCZC7NNSXTN2JONZXKZKDN5WW2ZLOOQ5TEMBQG4YDEMBVGI2A. You are receiving this because you were mentioned.