Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

chore: add operational metadata now.yaml file #1

Open
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

jveldboom
Copy link

Description

As a part of DTC-wide effort to improve and assign the operational metadata for GitHub repositories, we are launching this program which will help map GitHub repositories back to their omd_service and omd_microservice. This will enable us to link it back to its owner and provide other details.

In the near future, the data model used in the now.yaml will be reflected in ServiceNow. ServiceNow will receive webhook events once the yaml file is changed via a commit and will process the new file if it is committed in the main or master branch. Once this sync is enabled, ServiceNow will check if the values defined in the file are present in the CMDB - if they are not, the update is rejected and a notification will be triggered.

Henceforth teams would be able to establish a trustworthy and always up-to-date understanding of our technology ecosystem.

Please reach out in #proj-gpso-omd for any help or questions.

Required Updates

The now.yaml file that is being added in this pull-request is only a template. The team reviewing this pull-request needs to update the YAML file following these steps.

  1. Pull down the now-yaml branch to edit the now.yaml file and directory names for multi-service repos.
    • For repos with a single service, only the now.yaml file needs to be updated.
    • For repos with multiple services, each service must have a directory under .omd with the now.yaml file in it. (see below for example directory structure)
  2. Locate this repo's service name(s) from the omd_service column in the Temporary OMD Service Listing
    • If you do not see your service listed in the spreadsheet, please reach out in the #proj-gpso-omd channel
  3. Update the now.yaml file's omd_service.name properties with the repo service name(s).
  4. If the application consists of microservices, update the omd_microservice.name with the name of the microservice. The microservice name should be unique within an application.
  5. If the microservice has other dependent services, update the omd_microservice.designated_dependencies property with the list.

Example now.yaml

With dependant microservices

omd_service:
  - name: gauth # mandatory - predefined in the Temporary OMD Service Listing doc (https://docs.google.com/spreadsheets/d/1FNbvrvN4OhiQBhxw9XkGDcMoaPZQZKxV/)

omd_microservice:
  name: gauth-broker # mandatory - predefined in the Temporary OMD Service Listing doc (https://docs.google.com/spreadsheets/d/1FNbvrvN4OhiQBhxw9XkGDcMoaPZQZKxV/)
  designated_dependencies: # not mandatory - omd_microservices or omd_services that the current microservice depends on.
    - users
    - istio-ingressgateway
    - gauth-catalog
    - gauth-generic-partner
    - gauth-authn

Without dependant microservices

omd_service:
  - name: apple-dtc # mandatory - predefined in the Temporary OMD Service Listing doc (https://docs.google.com/spreadsheets/d/1FNbvrvN4OhiQBhxw9XkGDcMoaPZQZKxV/)

omd_microservice:
  name: dplus-ios # mandatory - predefined in the Temporary OMD Service Listing doc (https://docs.google.com/spreadsheets/d/1FNbvrvN4OhiQBhxw9XkGDcMoaPZQZKxV/)

Example Multi-Service Directory Structure

Example of a repo that represents 3 services

.omd
  - service-a
    - now.yaml
  - service-b
    - now.yaml
  - service-c
    - now.yaml

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.

1 participant