| # This document is a Work in Progress |
| |
| |
| This document pretends to put everything that is important to check |
| before doing a full site release as well as to how to do it, |
| to ensure that the site fully works upon the release of a new version. |
| |
| Depending on the nature of the changes, only some sections |
| of this list will be relevant - Feel free to focus only on those |
| you deem most important. |
| |
| If you think we are missing any important point, we greatly appreciate |
| suggestions. |
| |
| ## Running the site |
| First things first, we'll use the beta environment as it lets us run the |
| site under additional checks that will automate some of the problem |
| detections for us. |
| |
| To run the new version on the beta environment we'll use the `ce` utility: |
| |
| Ensure that the beta environment is active by running |
| `ce --env beta environment start` - You can skip this step if it's |
| already running from a previous run or if you'd rather boot it once |
| the current version is marked as active. |
| |
| Check what `versionId` the desired commit has. This can be checked on the |
| Travis CI build logs as its build number for that specific commit, or |
| by running `ce --env beta builds list` which shows a list of the |
| most recent builds with their corresponding commit hash. |
| |
| Once you have the desired `versionId`, mark it as the current version to |
| be used by running `ce --env beta builds set_current {versionId}` |
| |
| If needed, you can now restart the currently running instances |
| with `ce --env beta instances restart` if needed. |
| |
| Once this is finished, the `/beta` endpoint should be ready for testing. |
| |
| - The first issue you might find is that the beta instance does not boot. |
| This might be caused by the `--ensureNoIdClash` flag shutting the app down |
| if it detects one or more pairs of compilers sharing the same id |
| even if they belong to different languages. An error should be logged |
| with the culprits for easy debugging. |
| |
| |
| ## Basic general site functionality |
| In-depth documentation follows below, but once the beta site is running, |
| some basic checks include: |
| |
| - |
| |