graphql-slack-updater
graphql-slack-updater copied to clipboard
A weekly Travis task that sends our GraphQL updates to Slack
Deprecated in favour of a Peril scheduled task.
GraphQL slack updater
Provides a weekly slack update for changes to GraphQL servers in Artsy.
Meta
- State: production
- Production: travis-ci.org/artsy/graphql-slack-updater
- Point People: @orta
Why?
There are 5 GraphQL APIs in differing states of production at Artsy. This repo let's us use the type system in GraphQL to keep everyone up to date with the differences in APIs. It's inspired by GitHub's GraphQL CHANGELOG but this is a weekly Slack message.
This is currently built just for Artsy infrastructure. It's probably not too hard to turn into something more generic so that others can use it. Just let us know in the issues that it's worth the extra abstraction.
How it works?
This repo uses the Travis CI scheduled tasks feature to execute a weekly notification for changes to our GraphQL APIs.
On a CI run:
- It downloads our last GraphQL APIs from S3.
- Clones our GraphQL repos (see servers/) and requests a .graphql file for their schema
- It compares the schemas and sends a slack message using graphql-schema_comparator.
- It uploads the generated .graphql files to S3 so that next week we can compare it with the new one.
ENV Vars
AWS_ACCESS_KEY- The AWS access key for a user with READ/PUT/LIST access to your S3 bucketAWS_SECRET_KEY- The AWS secret for that userSLACK_WEBHOOK_URL- The internal webhook URL for the CI run