Skip to content
Branch: master
Go to file
Code

Latest commit

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
api
 
 
 
 
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

README.md

Screwdriver Data Schema

Version Downloads Build Status Open Issues Dependency Status License

Internal data schema of Screwdriver

Description

This contains the structure/validation for all the models/resources of Screwdriver.

It's broken down into five (5) sections:

  • api - API related input/output structure
  • config - Screwdriver.yaml definitions
  • models - Internal data resources (pipeline, job, build, collection etc.)
  • plugins - Plugins (datastore, executor, etc.)
  • core - SCM plugin related output structure

Models

The model represents a combination of what is required to create the resource and what is possible for returning from the resource.

Methodology

Each model contains eight (8) schemas:

  • base - List of all available fields in the model
  • allKeys - List of all fields in the model
  • get - Expected return values from a GET request against this resource
  • create - Expected input values when making a CREATE action against this resource
  • update - Expected input values when making an UPDATE action against this resource
  • keys - List of keys that combine to represent a unique row
  • tableName - Internal name of the table
  • indexes - Secondary indexes to make search/lookup faster

Contributing

Please read Migrations before adding anything to the data-schema

Usage

npm install screwdriver-data-schema

Testing

npm test

License

Code licensed under the BSD 3-Clause license. See LICENSE file for terms.

You can’t perform that action at this time.