flxbl docs
slackGitHub
  • flxbl
  • sfp
  • sfops
  • Overview
  • Features
  • Environments
    • Creating an Environment
    • Authenticating to Environments
    • Review Environments
      • Configuring Review Sandboxes
      • Creation and Allocation of Review Sandboxes
  • Project Workflows
    • sfops - Execute Issue Ops
    • sfops - On Pull Request Comments
    • sfops - Close Issues
    • sfops - Execute Every 30 mins
    • sfops - Daily Job Executor
    • sfops - Review Sandbox - Creator
    • sfops - On Push to Branch
    • sfops - Execute Releases to any env
    • sfops - Execute Releases
  • IssueOps
    • Access
      • Request elevated previlege in production
    • Release
      • Release a Domain
      • Hotfix Workflow
  • Changelog
    • November24
    • January25
    • May25
    • August25
  • DevCentral
    • Customising Menu
    • Extending using Custom Forms and Issue Ops Actions
  • self managed instances
    • Setup for self managed instances
      • 1. Create repositories
      • 2. Create a GitHub App
      • 3. Setting up sfops repository
      • 4. Trigger the workflows
      • 5. Setting up project repository
      • 6. Fetching upstream changes
        • 6.1 Manual Process for Updating sfops from Upstream
    • Update Instructions
      • Updating to v31.5.0
      • Updating to v30.3.1 and above
      • Updating to v29.0.0
    • Workflow details
      • Sync Upstream Repository and Create Pull Request
  • Legal
    • Terms of Service for sfops
Powered by GitBook
On this page
  1. self managed instances
  2. Update Instructions

Updating to v31.5.0

Last updated 4 days ago

CtrlK
  • 📋 Required Migration Steps
  • 1. Pull Latest sfops Release from Upstream
  • 2. Configure NPM Settings
  • 3. Update Workflow Files
  • 3. For Custom NPM Registry
  • 4. For GitHub Packages Users (Default)
  • ⚠️ Breaking Change Warning
  • 🔄 Rollback Plan (if necessary)
  • ✅ Validation Checklist

📋 Required Migration Steps

1. Pull Latest sfops Release from Upstream

Sync your fork with the official sfops v31.5.0 release:

# Add upstream repository (one-time setup)
git remote add upstream https://source.flxbl.io/flxbl/sfops

# Fetch and create PR for v31.5.0
git fetch upstream --tags
git checkout -b sfops-v31.5.0-update
git merge v31.5.0
git push origin sfops-v31.5.0-update

# Create PR via GitHub UI and merge it to main

2. Configure NPM Settings

Add NPM_SCOPE Variable (Optional)

Note: Only required if you want to use a custom NPM scope different from your GitHub organization name. If not set, it defaults to your GitHub org name, which is usually fine.

If you need a custom scope:

  • Go to Settings → Secrets and variables → Actions → Variables

  • Add new repository variable: NPM_SCOPE

  • Value: your custom npm scope (e.g., @customscope)

Add NPM_RC Secret (Only for Non-GitHub Registries)

Skip this if using GitHub Packages (default). Only needed for JFrog, GitLab, Azure Artifacts, etc.

  • Go to Settings → Secrets and variables → Actions → Secrets

  • Add new repository secret: NPM_RC

  • Value should contain your registry configuration (see Step 4 for details)

3. Update Workflow Files

Update the following workflow files to include the npm-scope input:

  • sfops-cron-env-operations-prepare-scratch-ci-pool.yml

  • sfops-cron-env-operations-prepare-scratch-dev-pool.yml

  • sfops-open-issue.yml

  • sfops-open-release-any-envs.yml

  • sfops-open-release-issue.yml

  • sfops-push-to-branch.yml

Add the npm-scope parameter to the with section and ensure NPM_RC is in secrets:

jobs:
  build-test-publish:
    name: 'Build Test & Publish'
    uses: nisa/sfops-gh-actions/.github/workflows/push-to-branch.yml@main
    with:
      # ... existing inputs ...
      npm-scope: ${{ vars.NPM_SCOPE }}  # Add this line
    secrets:
      # ... existing secrets ...
      NPM_RC: ${{ secrets.NPM_RC }}  # Add this line if not already present

3. For Custom NPM Registry

If you want to use a non-GitHub NPM registry (JFrog, GitLab, Azure Artifacts, etc.):

Add NPM_RC Secret

  1. Go to Settings → Secrets and variables → Actions → Secrets

  2. Add new repository secret: NPM_RC

  3. Value should contain your registry configuration:

@yourscope:registry=https://your-registry-url/
//your-registry-url/:_authToken=${NPM_TOKEN}

Verify Scope in NPM_RC

Ensure your NPM_RC secret includes the scope configuration that matches your NPM_SCOPE variable.

4. For GitHub Packages Users (Default)

If you're using GitHub Packages (the default), you only need to:

  • Add the NPM_SCOPE variable (Step 1)

  • Update workflow files (Step 2)

  • No additional configuration needed

⚠️ Breaking Change Warning

The setup-npm-registry action now validates that custom npmrc configurations include the required scope. Workflows will fail if:

  • NPM_SCOPE variable is missing

  • Custom NPM_RC secret doesn't include the matching scope configuration

🔄 Rollback Plan (if necessary)

Pin workflows to previous version: uses: flxbl-io/sfops/.github/workflows/[email protected]

✅ Validation Checklist