Skip to content

build graphcool.yml and types.graphql from predefined folder structure

Notifications You must be signed in to change notification settings

gabrielpoamaneagra/graphcool-compose

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

graphcool-compose

Command line tool that composes the graphcool.yml and types.graphql following a predefined folder structure. Allows you to structure your project into modules, each with its own resolvers, permission queries, graphcool.yml file and types.graphql file

Installation

$ npm install -g graphcool-compose

or

$ yarn global add graphcool-compose

Usage

build for default target
$ graphcool-compose
build for specific target
$ graphcool-compose --target qa
build and call graphcool deploy
$ graphcool-compose --target qa --deploy
build and call graphcool deploy --force
$ graphcool-compose --target qa --deploy --force

Prerequisites

A valid graphcool project is assumed (folder with a .graphcoolrc)

File Structure

see example here

graphcool-compose assumes a specific folder structure

|-- environemnts
    |-- default.yml
    |-- target1.yml
    |-- target2.yml
    ...
|-- src
    |-- module1
        |-- resolvers
            |-- resolver1.graphql
            |-- resolver1.ts
            |-- resolver2.graphql
            |-- resolver2.js
        |-- permissions
            |-- type1.graphql
            |-- type2.graphql
        |-- graphcool.yml
        |-- types.graphql
    |-- module2
        |-- types.graphql
|-- .graphcoolrc

File Structure Details

folder details
environemnts environment vars will be set for every resolver. default.yml will be merged with the target specific file
src/moduleX every module will have it's own folder in the src
src/moduleX/resolvers the resolver files - a resolverName.graphql + resolverName.ts (or.js) pair
src/moduleX/permissions the graphql files that hold the permission queries
src/moduleX/graphcool.yml basically permissions, just like in the graphcool.yml; note that the query paths are relative, will be resolved by graphcool-compose
src/moduleX/types.graphql these files will just be merged in the root/types.graphql file

About

build graphcool.yml and types.graphql from predefined folder structure

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published