Skip to content

[PBI] Jenkins Update Center Publishing & Open-Source Governance #468

@cjlapao

Description

@cjlapao

Description

Execute the open-source governance process to host the plugin under the jenkinsci GitHub organisation and publish the first release to the official Jenkins Update Center. This makes the plugin installable by any Jenkins administrator worldwide via the Plugin Manager with a single click.

User Story

As a Jenkins administrator anywhere in the world, I want to find and install the Parallels DevOps Service plugin directly from the Jenkins Plugin Manager so that I don't have to manually download or upload .hpi files.

Acceptance Criteria

  • Governance checklist complete: All items from the Jenkins hosting request checklist are satisfied:
    • Plugin uses an Apache 2.0 (or compatible) licence.
    • pom.xml has a valid <url>, <scm>, <developers> and <licenses> section.
    • No proprietary dependencies; all deps are available from Maven Central or Jenkins' own artifact repository.
    • README.md and CONTRIBUTING.md are present and informative.
  • Hosting request submitted: A GitHub issue is filed in jenkinsci/jep (or the current hosting request tracker) referencing the Parallels org repo.
  • Repository forked/transferred to jenkinsci: Code is mirrored or transferred to github.com/jenkinsci/parallels-devops-plugin (exact name TBD per Jenkins naming convention).
  • maven-release-plugin configured: pom.xml includes the Maven Release Plugin; a mvn release:prepare release:perform can tag and push a release.
  • First release tagged: v1.0.0 is tagged in Git; the release publish GitHub Actions workflow pushes the .hpi to the Jenkins artifact repository (via maven-release-plugin + jenkins-infra credentials).
  • Update Center entry verified: Within the standard propagation window (24–72h), the plugin appears in the Jenkins Update Center and can be installed via Manage Jenkins → Plugins.

Definition of Done

  • Code implemented following best practices.
  • Unit tests written and passing.
  • Code reviewed and approved.
  • Merged into the main branch.
  • Documentation updated (if applicable).
  • Deployed to staging/production environment.

Assumptions and Constraints

  • Assumption 1: All prior PBIs are complete and the plugin is feature-stable for a 1.0.0 release.
  • Assumption 2: Parallels has authority to release this plugin under Apache 2.0 and has confirmed no proprietary prl-devops-service internals are bundled in the plugin code.
  • Assumption 3: A Parallels employee or designated maintainer has (or can obtain) the necessary Jenkins infra credentials for Maven Central/Jenkins repository publishing.
  • Constraint 1: The Jenkins hosting review process is run by the Jenkins core team and has an unpredictable lead time (days to weeks); this PBI may span multiple sprints for the governance steps.
  • Constraint 2: Plugin artifact ID and display name must follow Jenkins naming conventions and not conflict with existing plugins.

Dependencies

No response

Additional Notes

Jenkins Update Center publishing flow

1. File hosting request at jenkinsci/jep
        │
        ▼
2. Jenkins infra team reviews & approves
        │
        ▼
3. Repo transferred/mirrored to jenkinsci org
        │
        ▼
4. mvn release:prepare (tags v1.0.0)
        │
        ▼
5. mvn release:perform (publishes to jenkins-ci.org Maven repo)
        │
        ▼
6. Jenkins Update Center crawler picks up new release
        │
        ▼
7. Plugin appears in Plugin Manager (~24-72h)

Useful references

Metadata

Metadata

Labels

pbiProduct Backlog Item

Type

No fields configured for Task.

Projects

Status

👀 Code Review

Relationships

None yet

Development

No branches or pull requests

Issue actions