Shared library development in local

Developing shared libraries using Jenkins environment is a bit cumbersome. Change something commit and build and repeat. I found some suggestions like using re-play function on UI but developing script in a text box in a web page not convenient.
Is there any other way/s?

Thank you.

1 Like

You could try this: File System SCM

Saves having to commit and push.

@timja thank you very much for your reply. Yes that could cut one corner but still clunky. Make a change, build etc.
Lack of development environment for Jenkins groovy scripts increase development time significantly. There should be a way but what :slight_smile:

This may seem quite contrarian, but if a Jenkins user is spending a lot of time inside the development of a Pipeline script, then I think that they may be placing too much logic in the Pipeline script.

When logic is placed in the Pipeline script, it can only be verified from a running Pipeline. When that logic is placed in a shell script, batch file, or other scripting language, then it can be developed and diagnosed from the environments that are commonly used for shell scripts, batch files, and other scripting languages.

Jesse Glick gave a talk in 2017 that shares that as one of his guiding principles. Slides and demo code from the talk are available in a GitHub repository.

There are tasks that are best performed directly in Jenkins Pipeline, like declaring parallel stages, but many users mistakenly use facilities in Pipeline that would be better if they were implemented in a shell script or batch file.

@MarkEWaite Thank you for your reply specially for on Sunday and sharing that video. It’s quite insightful and I understand the importance of keeping things simple.
I have no intention to create complex logic/s in pipeline scripts declarative or scripted. For the things require complex logic I am using container to run Python/Java etc.

I just want to use the basic functions comes with Pipeline Utility Steps in a convenient way. Writing & debugging.

I guess I will keep using “re-play” button :slight_smile:

Thank you,

There is a replay-pipeline CLI command which may be better suited to testing library changes made in a local text editor.

1 Like

@jglick thank you very much. This is way easier!

1 Like