Skip to content

Conversation

@CryptoRodeo
Copy link
Contributor

@CryptoRodeo CryptoRodeo commented Oct 15, 2025

Hey, I just made a Pull Request!

Remove the deprecated jenkins NPM package and replace it with a built-in lightweight client.

The goal of this client is for it to be "drop-in" and minimize changes where the original client was called.

Should fix #4984

Basic Jenkins plugin operations

These still work as expected (at least for me 😄)

jenkins-backstage-demo-basic.mp4

Scaffolder functionality

The Scaffolder still works the same:

jenkins-scaffolder-demo-basic.mp4

For reference here is the template I used:

apiVersion: scaffolder.backstage.io/v1beta3
kind: Template
metadata:
  name: debug-jenkins
  title: Debug Jenkins
spec:
  owner: guests
  type: service
  system: examples
  lifecycle: experimental
  steps:
    - id: create
      name: Create Jenkins job
      action: jenkins:job:create
      input:
        jobName: demo
        jobXml: |
          <flow-definition plugin="workflow-job">
            <definition class="org.jenkinsci.plugins.workflow.cps.CpsFlowDefinition" plugin="workflow-cps">
              <script>pipeline { agent any; stages { stage('hi'){steps{ echo 'hello' } } } }</script>
              <sandbox>true</sandbox>
            </definition>
          </flow-definition>

    - id: clone
      name: Clone Jenkins Job
      action: jenkins:job:copy
      input:
        sourceJobName: demo
        targetJobName: demoClone

    - id: build
      name: Trigger build
      action: jenkins:job:build
      input:
        jobName: demo

    - id: disable
      name: Disable job
      action: jenkins:job:disable
      input:
        jobName: demo

    - id: enable
      name: Re-enable job
      action: jenkins:job:enable
      input:
        jobName: demo

    - id: destroy
      name: Destroy job
      action: jenkins:job:destroy
      input:
        jobName: demo

    - id: destroy copy
      name: Destroy job copy
      action: jenkins:job:destroy
      input:
        jobName: demoClone

✔️ Checklist

  • A changeset describing the change and affected packages. (more info)
  • Added or updated documentation
  • Tests for new functionality and regression tests for bug fixes
  • Screenshots attached (for UI changes)
  • All your commits have a Signed-off-by line in the message. (more info)

@backstage-goalie
Copy link
Contributor

backstage-goalie bot commented Oct 15, 2025

Changed Packages

Package Name Package Path Changeset Bump Current Version
@backstage-community/plugin-jenkins-backend workspaces/jenkins/plugins/jenkins-backend minor v0.20.0
@backstage-community/plugin-jenkins-common workspaces/jenkins/plugins/jenkins-common minor v0.12.0
@backstage-community/plugin-scaffolder-backend-module-jenkins workspaces/jenkins/plugins/scaffolder-backend-module-jenkins minor v0.14.0

@CryptoRodeo
Copy link
Contributor Author

So far no issues connecting to my Jenkins instance:

basic-jenkins-test.mp4

Jenkins scaffolder also works:

jenkins-scaffolder-test.mp4

@CryptoRodeo CryptoRodeo self-assigned this Oct 17, 2025
@CryptoRodeo CryptoRodeo force-pushed the feat/new-jenkins-client branch from f2aa3e7 to 73778d2 Compare October 18, 2025 01:56
Remove the deprecated 'jenkins' package and replace it with a built-in,
light-weight client.

Signed-off-by: Bryan Ramos <bramos@redhat.com>
@CryptoRodeo CryptoRodeo force-pushed the feat/new-jenkins-client branch from 73778d2 to 72bb011 Compare October 18, 2025 02:01
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
@CryptoRodeo CryptoRodeo marked this pull request as ready for review October 20, 2025 17:05
@CryptoRodeo CryptoRodeo requested a review from a team as a code owner October 20, 2025 17:05
@CryptoRodeo CryptoRodeo requested a review from 04kash October 20, 2025 17:05
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Signed-off-by: Bryan Ramos <bramos@redhat.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

🐛 Jenkins: Deprecated jenkins@1.1.0 NPM package

2 participants