NASA-AMMOS / aerie

A software framework for modeling spacecraft.
https://nasa-ammos.github.io/aerie-docs/
MIT License
73 stars 19 forks source link

Process + workflows for testing UI PRs against specified backend branch #1538

Open dandelany opened 3 months ago

dandelany commented 3 months ago

Background

We don't have a good process today for dealing with changes/features that require both an aerie-ui frontend PR and an aerie backend PR (or aerie-gateway PR). When the UI PR is submitted, the e2e test suite will fail because it is run against the develop version of the backend (ie. it uses Docker images tagged develop) which does not have the changes from the backend feature branch.

The only ways to work around this today are:

Proposed Process

After discussing with a few devs, here's what I'm proposing as the process for this scenario:

If this is done correctly, all test suites should be able to pass on the frontend PR. You will still have to merge the backend PR before the frontend PR or else tests will fail in the merged develop branch but at least this avoids the unsafe workarounds mentioned above.

dandelany commented 2 months ago

Document this process in Developer/contributing docs...

Mythicaeda commented 2 months ago

The Gateway needs to additionally be able to pull in a Backend image, as was added to the UI.

skovati commented 2 months ago

Does the gateway have tests that rely on a live backend?

Mythicaeda commented 2 months ago

Ah, no, you're right! It's the Backend that pulls in the Gateway for some of its e2e tests!