screwdriver-data-schema

23.2.1 • Public • Published

Screwdriver Data Schema

Version Downloads Build Status Open Issues 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.

Readme

Keywords

Package Sidebar

Install

npm i screwdriver-data-schema

Weekly Downloads

812

Version

23.2.1

License

BSD-3-Clause

Unpacked Size

226 kB

Total Files

135

Last publish

Collaborators

  • sd-buildbot
  • petey
  • d2lam
  • fenrirunbound
  • tkyi
  • stjohnjohnson
  • minz1027
  • screwdriver