newrelic / nr1-catalog

New Relic One Catalog repo of repos
Apache License 2.0
6 stars 27 forks source link
bp-xr-approved

Community Project header

nr1-catalog

This project is very much in development and not ready for public contribution. It's just being developed in the open.

New Relic One Catalog repo of repos. PR's to this repo trigger the review process for either adding a New Relic One project via the NR1 CLI or upgrading an existing NR1 project.

Usage

This repository is meant to be a repository of submodules that each represent a codebase designed to fit into the New Relic One Catalog. The repository contains three main components:

  1. A collection of submodules each containing an New Relic One application.
  2. GitHub Action automation to handle the verification of PR's and promotion of submodules on a merge to master.
  3. Documentation on the standard(s) for New Relic One Catalog projects.

That functionality manifests in three distinct use cases.

Use Case 1: PR with a new submodule

Actors: Application Developer(s), New Relic Open Source Maintainers

To submit a new New Relic One project (application, etc.) for consideration and review:

cd nr1-catalog/apps
git submodule add [YOUR REPO URL]
# example: git submodule add https://github.com/newrelic/nr1-browser-analyzer.git
git commit -a -m "feat: Adding [YOUR REPO NAME] to nr1-catalog."

From there, New Relic Open Source Maintainers will validate (using a combination of tooling and manual review):

Once your PR has been approved and merged it will publish your app to Production.

The catalog maintainers will then update your nerdpack's subscription model to GLOBAL*

*for maintainers: see the hero FAQ doc

To have your app available in the Staging and EU environments: Reach out to the platform services team with your app name, UUID (found in this repo's globals.json file), and desired version so they can tag it in Staging and EU.

Use Case 2: PR to an existing submodule

Actors: Application Developer(s), New Relic Open Source Maintainers

This step verifies the same requirements as Use Case 1, but the review process is focused on the difference between versions.

Use Case 3: Merge of a PR to the master Catalog

Actor: New Relic Open Source Maintainers

When a New Relic Open Source Maintainer merges a PR to master, the referenced submodule is not only checked out, built, and associated to it's global uuid; but the following also occurs:

Use Case 4: Removal of an Application from the NR1 Catalog

Actor: Application Developer(s), New Relic Open Source Maintainers

Please refer to this WIKI for details on this process.