Skip to content

feat: configure semantic-release for Artifactory hybrid versioning#1

Open
PavelKorobchuk wants to merge 2 commits into
auth0:masterfrom
PavelKorobchuk:feat/configure-semantic-release
Open

feat: configure semantic-release for Artifactory hybrid versioning#1
PavelKorobchuk wants to merge 2 commits into
auth0:masterfrom
PavelKorobchuk:feat/configure-semantic-release

Conversation

@PavelKorobchuk

@PavelKorobchuk PavelKorobchuk commented May 12, 2026

Copy link
Copy Markdown

Summary

Configures this repo for the Auth0 Library Pipeline (LP) — the standardized Jenkins CI/CD pipeline used by internal libraries like limitd-redis, token-replay-lib, and dadjokes-library.

Changes

  • Remove publishConfig from package.json — per LP troubleshooting docs, specifying the Artifactory registry in publishConfig interferes with LP's own credential injection
  • Add repositoryUrl to .releaserc.js — prevents semantic-release from falling back to the old mozilla URL
  • Add cic.ci.pipeline: lp tag to opslevel.yml — registers the repo with the Library Pipeline
  • Add project.yaml — LP metadata (language, node version, team channel)
  • Add Makefile — LP-required build targets (install, test, lint, integration)
  • Add RELEASING.md — documents the full publish process and onboarding steps

Context

PR protobufjs#7 added semantic-release configuration, but there was no CI pipeline to execute it. Investigation revealed:

  1. Internal libraries at Auth0/CIC use the Library Pipeline (not GitHub Actions)
  2. LP requires: project.yaml, Makefile, opslevel.yml with cic.ci.pipeline: lp tag
  3. LP handles Artifactory credentials via Jenkins — no repo-level secrets needed
  4. A Jenkins multibranch pipeline job must be provisioned via ESD ticket

The git tag 5.0.1-auth0-1.0.0 was successfully created during local testing.

After Merge

Open an ESD ticket for Platform Build Services to create the Jenkins job:

Once the job exists, the next push to master with a conventional commit will auto-publish to Artifactory.

Test plan

  • npx semantic-release --dry-run succeeds locally with corrected repositoryUrl
  • Confirmed LP pattern matches working repos (opslevel.yml + project.yaml + Makefile)
  • Confirmed publishConfig must be removed per LP docs (causes auth conflicts)
  • After merge + ESD: verify Jenkins LP job picks up the repo and publishes

@PavelKorobchuk PavelKorobchuk force-pushed the feat/configure-semantic-release branch from 2fd6b2f to c816f82 Compare May 12, 2026 19:41
@PavelKorobchuk PavelKorobchuk force-pushed the feat/configure-semantic-release branch from c816f82 to 002a3c9 Compare May 12, 2026 19:46
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants