Skip to content

Standard metadata files required of all DG repos, auto-scraped & validated.

Notifications You must be signed in to change notification settings

DigitalGlobe/standard-repo-metadata

Repository files navigation

Standard Digitalglobe Code Repo Metadata

All Digitalglobe code repos must contain a small metadata file, maintained by the developers or owners of the code, that helps some basic info about the code & service that it runs.

Contents of this repo:

Service information file.

Name: <service-name>.info.yml
Required: true
Contents: Contains metadata about the service or component including points of contact, data classification, URLs, documentation, etc.

Service API Specification

Name: <service-name>.swagger.yml
Required: required for RESTful services
Contents: A Swagger 2.0 API specification for the service

Pipeline Controls

Name: pipeline-controls.yml
Required: required for items deployed via the common pipeline.
Contents: Complete documentation available in the Wiki

CI/CD Deployment information

Name: <service-name>.deployment-variables.yml
Required: required for items deployed via the common pipeline.
Contents: This will contain processing instructions for the CI/CD pipeline.
Items such as the following will be specificed in this file

  • OAuth2 Scopes required by the service at runtime
  • Should the service be deployed to prod (we have some test-helpers and such that dont get deployed to prod.)
  • Database requirements
  • S3 requirements
  • Export & installation restrictions

Multiple services in a single repo

Repeat all required files for the second service, just use the second services name in place of <service-name>

Validation

Yaml files can be validated using the yaml-schema file and using it like a jsonschema document:

import yaml
from jsonschema import validate

# load yaml schema:
with open('yaml-schema.yml','r') as f:
    yaml_schema = yaml.load(f.read())

# load yaml example:
with open('pet-store.info.yml', 'r') as f:
    example_yaml = yaml.load(f.read())

validate(example_yaml, yaml_schema)

About

Standard metadata files required of all DG repos, auto-scraped & validated.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 4

  •  
  •  
  •  
  •