Skip to content

Releases: apollographql/rover

v0.0.1-rc.5

01 Feb 18:30
665b28e
Compare
Choose a tag to compare
v0.0.1-rc.5 Pre-release
Pre-release

Disclaimer: Rover is still in an experimental stage and should not be used in production. This release is intended for use by internal teams at Apollo.

Installation

You can install Rover by running

Linux and MacOS

curl -sSL https://raw.githubusercontent.com/apollographql/rover/v0.0.1-rc.5/installers/binstall/scripts/nix/install.sh | VERSION=v0.0.1-rc.5 sh

Windows

iwr 'https://raw.githubusercontent.com/apollographql/rover/v0.0.1-rc.5/installers/binstall/scripts/windows/install.ps1' | iex

Alternatively, you can download the binary for your operating system and manually adding its location to your PATH.


0.0.1-rc.5

This release primarily introduces rover subgraph list, allows for git context for push and check subcommands, and improves errors returned by Rover.

Git context

Rover now infers information about currently used git branch, remote URL, and current user for push and check subcommands. If there is a need to override current git context, you may do so with the following environment variables:

  • APOLLO_VCS_BRANCH
  • APOLLO_VCS_COMMIT
  • APOLLO_VCS_COMMITTER
  • APOLLO_VCS_REMOTE_URL

rover subgraph list

This adds the ability to view all available subgraphs for a federated graph given a GRAPH_REF:

rover subgraph check Cats-m30w
Subgraphs:
+----------+----------------------------------------+----------------------------+
| Name     | Routing Url                            | Last Updated               |
+----------+----------------------------------------+----------------------------+
| reviews  | https://acephei-reviews.herokuapp.com  | 2020-10-21 12:23:28 -04:00 |
+----------+----------------------------------------+----------------------------+
| books    | https://acephei-books.herokuapp.com    | 2020-09-20 13:58:27 -04:00 |
+----------+----------------------------------------+----------------------------+
| accounts | https://acephei-accounts.herokuapp.com | 2020-09-20 12:23:36 -04:00 |
+----------+----------------------------------------+----------------------------+
| products | https://acephei-products.herokuapp.com | 2020-09-20 12:23:28 -04:00 |
+----------+----------------------------------------+----------------------------+
View full details at https://studio.apollographql.com/graph/acephei/service-list

Simplification to rover config flow

All previous profile config commands were collapsed into rover config:

rover-config 0.0.1-rc.5
Configuration profile commands

USAGE:
    rover config [OPTIONS] <SUBCOMMAND>

FLAGS:
    -h, --help
            Prints help information

    -V, --version
            Prints version information


OPTIONS:
    -l, --log <log-level>
             [default: debug]  [possible values: error, warn, info, debug,
            trace]

SUBCOMMANDS:
    auth      Authenticate a configuration profile with an API token
    clear     Clear ALL configuration profiles
    delete    Delete a configuration profile
    help      Prints this message or the help of the given subcommand(s)
    list      List all configuration profiles
    show      View a configuration profile's details

Added

  • Add git context to check and push subcommands #205
  • Add subgraph list command #185
  • Add 'Suggestions' to errors thrown by Rover #186, #204
  • Add documentation for troubleshooting, graph and subgraph commands

Changed

  • Reworked all profile commands and collapsed them into rover config #203
  • --service-name flag is renamed to --name #201
  • Changed service name in subgraph check from a positional arg to a --name flag #201
  • APOLLO_REGISTRY_URI was changed to APOLLO_REGISTRY_URL for consistency #206

Fixed

  • Improvements to Rover error handling #209
  • Improvements to 'Introduction' messaging in graph and subgraph commands #207

Internal

  • Improvements to error context #211
  • A change to installation script to make sure removing ~/.rover does not break future installs #198

SHA256 of release binaries for validation:

  • Linux: 06b11565e93a594787aa6bc1da41bb963cf3d63c3cc2234ca023a7b05a13dd3a
  • Windows: a5c197326de98115dfcb3d1d6053a3859b70accf57455914d57ecafaa78667bc
  • MacOS: 9f1cf4df463a0320c1f8cd4ee68ef1b21064d393ceb3ab728004c1b05f84c03d

v0.0.1-rc.4

13 Jan 17:46
49fc836
Compare
Choose a tag to compare
v0.0.1-rc.4 Pre-release
Pre-release

Disclaimer: Rover is still in an experimental stage and should not be used in production. This release is intended for use by internal teams at Apollo.

This release primarily introduces rover subgraph check and a --routing-url option to rover subgraph push.

Subgraph Check

There are docs written for the usage of rover subgraph check under docs/source/subgraphs.md#checking-subgraph-changes

Added

  • subgraph check command #110
  • Documentation #160

Internal


SHA256 of release binaries for validation:

  • Linux: 8f3cc6108d6d74034f13cb89c9a1ed38f7a967ae94d8161cf1e49b05aa93ded6
  • Windows: 4f6c924221650dd18db71bf3419b251cc53b80d53a1cb469c2fdc441ccc640e7
  • MacOS: f4cfbd4224d6a8de95f9811afbc25165e8c977dbb1b9517a54e14c5b753744bc

v0.0.1-rc.1

24 Dec 16:42
654e44b
Compare
Choose a tag to compare
v0.0.1-rc.1 Pre-release
Pre-release

Disclaimer: Rover is still in an experimental stage and should not be used in production. This release is intended for use by internal teams at Apollo.


This release primarily introduces rover graph check, rover subgraph fetch and allows for Rover to be installed on Windows.

rover graph check

Checks and validates changes to a graph given a schema.
Schema can be passed in via --schema flag,

rover graph check --schema ./path-to-valid-sdl test@cats

or, alternatively stdin:

curl http://url-of-valid-sdl.co.uk --silent | rover graph check --schema - test@cats
rover-graph-check 0.0.1-rc.0
Validate changes to a graph

USAGE:
    rover graph check [OPTIONS] <GRAPH_REF> --schema <schema>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -l, --log <log-level>           [default: debug]  [possible values: error, warn, info,
                                    debug, trace]
        --profile <profile-name>    Name of configuration profile to use [default: default]
    -s, --schema <schema>           The schema file to push Can pass `-` to use stdin instead of a file

ARGS:
    <GRAPH_REF>    <NAME>@<VARIANT> of graph in Apollo Studio to validate. @<VARIANT> may be left off, defaulting to
                   @current

rover subgraph fetch

Fetch a schema for a given graph from Apollo Studio.

rover-subgraph-fetch 0.0.1-rc.0
⬇️  Fetch an implementing service's schema from Apollo Studio

USAGE:
    rover subgraph fetch [OPTIONS] <GRAPH_REF> --service-name <service-name>

FLAGS:
    -h, --help       Prints help information
    -V, --version    Prints version information

OPTIONS:
    -l, --log <log-level>                 [default: debug]  [possible values: error, warn,
                                         info, debug, trace]
        --profile <profile-name>         Name of configuration profile to use [default: default]
        --service-name <service-name>    Name of implementing service in federated graph to update

ARGS:
    <GRAPH_REF>    <NAME>@<VARIANT> of graph in Apollo Studio to fetch from. @<VARIANT> may be left off, defaulting
                   to @current

Install Rover on Windows

You can now install Rover on your Windows machines with:

iwr 'https://raw.githubusercontent.com/apollographql/rover/236dadda93edaa910dbeaa92893b7da2c27e4973/installers/binstall/scripts/windows/install.ps1' | iex

Added

  • Windows installer #104
  • stdin as SDL input #108
  • Standardised auth flow with rover config profile auth #114
  • Introduced rover subgraph fetch #117
  • Introduced rover graph check #145

Fixed

  • Standardised graph_name input across Rover's commands #95
  • Renamed schem to graph and partial to subgraph #103, #125
  • Removed emoji usage from help texts to standardise user experience across OSs #123
  • Display change summary on rover graph push #112

Internal

  • Updated documentation and help texts #105, #96, #91
  • Run github workflow tests on push #122
  • Auto-update Rover's schema #119

SHA256 of release binaries for validation:

  • Linux: 4dc60b56a4fba4c8adf97fd871b75ff9b7f0445f76073938bf29f90cc73c998a
  • Windows: e375429100ed005700acfd35d9dd96d01329b8786e8481360ea146cad1d76ec2
  • MacOS: ead1a085230c7fb7d14f54030a31959e9c05e2dcbb06e83973912ab2be0c03fa

🎁 0.0.1-rc.0

19 Nov 21:05
980d2ff
Compare
Choose a tag to compare
🎁 0.0.1-rc.0 Pre-release
Pre-release

Testing Instructions

This beta release is now out of date. If you previously installed this release, you should reinstall and see what's changed in the latest release.

Disclaimer: Rover is still in an experimental stage and should not be used in production. This release is intended for use by internal teams at Apollo.

Installation

On Mac/Linux you can install Rover by running curl -sSL https://raw.githubusercontent.com/apollographql/rover/v0.0.1-rc.1/installers/binstall/install.sh | VERSION=v0.0.1-rc.1 sh.

On Windows you can install Rover by running iwr 'https://raw.githubusercontent.com/apollographql/rover/236dadda93edaa910dbeaa92893b7da2c27e4973/installers/binstall/scripts/windows/install.ps1' | iex.

If you don't want to use our shell script, you can download the binary for your operating system and manually add its location to your PATH.

Usage

Some initial documentation work has been done, but there's still a lot of work to do!

For now, we're hopeful that recursing through Rover's --help tree is sufficient. In cases where it is not, or if you run into any issues, please file an issue.


SHA256 of release binaries for validation:

  • Linux: 20609dc9e7d434d9d99303c6e5ab97fc9ef1deb09c89a88322ddf96d51bafa7a
  • Windows: b1b5cba6adecb78a833b0d55ff5d4d13997d78e9be5b75dc0cb42dba06d5aac6
  • MacOS: 3bf3de9b4566134f22fa0387a097078e643a58943ae721235042c97c7519eb60