Rely.io
  • 📌What is Rely.io?
  • 💡How Rely.io works
  • 📑Getting Started Guide
    • Create an account for your organization
    • Add your first plugin
    • Import services into the Service Catalog
    • Make the Software Catalog your own
    • What's Next?
  • 🌈Basic Concepts
    • Entities
    • Blueprints
    • Property Data Types
    • Catalogs
    • Data Model
    • Plugins
    • User Blueprints vs Plugin Blueprints
    • Actions and Automations
      • Automation Rules
      • Self-Service Actions
    • Home Pages
    • Scorecards
  • 📚Guides & Tutorials
    • Enhancing Deployment Visibility through Gitlab Pipelines and Rely's API
  • 🖥️Software Catalog
    • Overview and Use Cases
    • Usage Guide
      • Creating a new Entity
      • Updating an Entity
      • Tracking Entity Changes
      • Customizing an Entity's Page
      • Customizing a Catalog
      • Creating a new Blueprint & Catalog
      • Updating a Blueprint
      • Tracking Blueprint Changes
    • Relevant Guides
    • Troubleshooting
  • 🥇Scorecards
    • Overview and Use Cases
    • Usage Guide
      • Creating a Scorecard
      • Updating a Scorecard
      • Evaluating Performance
    • Scorecard Examples
      • Production Readiness Scorecard Example
      • DORA Metrics Scorecard Example
      • Operational Maturity Example
  • 🎨Home Pages
    • Overview and Use Cases
    • Usage Guide
      • Creating a New Tab
  • ⚡Self-Service Actions
    • Overview and Use Cases
    • Usage Guide
      • Configuring your Self Service Agent
      • Managing your Actions Catalog
      • Self-Service Actions as Code
      • Running Actions
      • Tracking Action Runs
  • ↗️Plugins & Automation
    • What happens when you install a Plugin?
    • Self-Hosting Plugins using Galaxy
    • 🤖Automation Rules
      • Overview and Use Cases
      • Usage Guide
        • Creating an Automation Rule
        • Updating an Automation Rule
        • Tracking Automation Changes
        • Managing Automation Suggestion
    • 🔌Plugin Installation Guides
      • ⭐AWS
      • Bitbucket
      • ⭐Flux
      • GitHub
      • GitLab
      • ⭐Google Cloud Platform (GCP)
      • ⭐Kubernetes
      • ⭐OpsGenie
      • ⭐PagerDuty
      • ⭐Snyk
      • ⭐SonarQube
  • 🌐Public API
    • Audit Logs
    • Automations & Self-Service Actions
    • Automation Suggestions
    • Blueprints
    • Dashboards & Views
    • Entities
    • Scorecards
    • Self-Service Action Runs
    • Time Series
    • Users
    • Webhooks
  • ⚙️Invite Users
  • 🛡️Security & Compliance
    • Single Sign-On (SSO)
      • SAML with Google Workspace
      • SAML with Microsoft Entra ID
      • SAML with Okta
      • OIDC with Okta
      • OIDC with Google Workspace
  • 🏥Troubleshooting
  • ❓FAQ
Powered by GitBook
On this page
  • Rely Migration Plugin for Backstage
  • Features
  • Installation
  • How to Use
  • Configuration Details
  • Development and Local Testing

Was this helpful?

  1. Plugins & Automation
  2. Plugin Installation Guides

Backstage

This plugin is part of Pro and Enterprise plan only

Rely Migration Plugin for Backstage

Welcome to the rely-migration-plugin for Backstage by Rely.io. This plugin seamlessly integrates with Backstage to export essential data to the Rely.io Identity Data Provider (IDP). It offers two modes of operation: a one-time data export via a dedicated endpoint, and an automated, scheduled data export using a cron job.

Feel free to reference the NPM package page for more detailed information.

Features

  • One-time Export: Easily migrate your data to Rely.io with a single API call.

  • Scheduled Export: Set up a cron job to regularly export data, ensuring continuous synchronization with Rely.io.

Installation

To get started with the Rely Migration Plugin, follow these installation steps:

  1. Install the Plugin:

    cd packages/backend && yarn add @rely/backstage-plugin-rely-migration-plugin-backend
  2. Create the Plugin File: In your Backstage backend, create a new file at packages/backend/src/plugins/rely.ts with the following content:

    import { PluginEnvironment } from '../types';
    import { createRouter } from '@rely/backstage-plugin-rely-migration-plugin-backend';
    import { parseConfigs } from '@rely/backstage-plugin-rely-migration-plugin-backend';
    
    export default async function createPlugin(env: PluginEnvironment) {
      const routerOptions = await parseConfigs(env);
      return await createRouter(routerOptions);
    }
  3. Update the Backend Index: Modify packages/backend/src/index.ts to include the Rely plugin:

    import rely from './plugins/rely';
    ...
    const relyEnv = useHotMemoize(module, () => createEnv('rely'));
    ...
    apiRouter.use('/rely', await rely(relyEnv));
  4. Configure Proxy and Rely in app-config.yaml: Add the following configuration to your app-config.yaml:

    proxy:
      '/rely':
        target: https://magneto.rely.io
        headers:
          Authorization: Bearer <WEBHOOK_API_TOKEN_ON https://webapp.rely.io/settings>
    
    rely:
      # Enable/disable gzip
      cron:
        enabled: true
        schedule: '0 * * * *'
      # Define entity filters for data export
      entityFilters: []
        # Example filters:
        # - kind: ['API', 'Component']
        # - metadata.name: 'a'
        #   metadata.namespace: 'b'

How to Use

  • One-time Export: Trigger the endpoint <backstage-hostname>/api/rely/migrate to start a one-time export.

  • Scheduled Export: If the cron job is enabled in the configuration, the plugin will automatically export data at specified intervals.

Configuration Details

  • cron.enabled: Enable or disable the cron job for scheduled exports.

  • cron.schedule: Define the cron schedule for automated data exports.

Development and Local Testing

  • Running in the Backstage App: Start the Backstage app (yarn start at the root) and navigate to /rely-migration-plugin.

  • Isolated Plugin Development: Run yarn start in the plugin directory for faster iteration, startup, and hot reloads. This setup is intended for local development only.


Thank you for choosing Rely.io for your identity management solutions. We are committed to providing seamless integration and top-notch support for Backstage users. For any issues or contributions, please feel free to open an issue or pull request in our repository.

Last updated 7 months ago

Was this helpful?

entityFilters: Specify filters for the entities to be exported. For more details on structuring these filters, refer to the .

↗️
🔌
⭐
Backstage EntityFilterQuery documentation