Skip to content

Update ecosystem for Workers URL migration (Pages → Workers) #127

@onmax

Description

@onmax

Context

Migrating from Cloudflare Pages to Cloudflare Workers involves URL changes:

Before (Pages):

  • https://validators-api-mainnet.pages.dev
  • https://validators-api-testnet.pages.dev
  • https://dev.validators-api-mainnet.pages.dev
  • https://dev.validators-api-testnet.pages.dev

After (Workers):

  • TBD based on Wrangler deployment

Migration Strategy

  1. Redirect Setup: Implement redirects from old Pages URLs to new Workers URLs
  2. Update Ecosystem: Update all references across Nimiq GitHub repos
  3. Deprecation: Plan eventual deletion of Pages URLs after migration period

Tasks

Phase 1: URL Mapping

  • Deploy to Workers and confirm final URLs
  • Document old → new URL mappings
  • Set up redirects from Pages URLs to Workers URLs

Phase 2: Ecosystem Updates (PRs needed)

Search for references to validators-api-*.pages.dev in:

  • nimiq/core-js-albatross - Check if API consumed in tests/examples
  • nimiq/wallet - May reference validator data
  • nimiq/developer-center - Likely has docs referencing API
  • nimiq/nimiq-ts - Check for validator API usage
  • nimiq/pool - Validators API integration?
  • nimiq/validators - Update any self-references in docs/configs
  • Other Nimiq repos - Full org search

Phase 3: Documentation Updates

Phase 4: Monitoring & Cleanup

  • Monitor redirect traffic for 30-60 days
  • Plan Pages URL deprecation timeline
  • Delete old Pages deployments

Search Commands

# Search across Nimiq org
gh search code --owner nimiq "validators-api-mainnet.pages.dev" --json repository,path

# Check specific repos
gh api graphql -f query='
{
  search(query: "org:nimiq validators-api-mainnet.pages.dev", type: CODE, first: 100) {
    edges {
      node {
        ... on Blob {
          repository { nameWithOwner }
          path
        }
      }
    }
  }
}
'

Labels

Add: documentation, breaking-change, ecosystem

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions