Take full control of your Review Apps

May 30, 2023 - 3 min read
Take full control of your Review Apps

Scalingo is improving the integration of Review Apps to give you greater control over changes made by your teams, for greater transparency and security.

Scalingo Review Apps are a great tool for collaboration between members of a product development team. They allow you to automatically preview any code changes in an isolated environment cloned from the parent application.

  • Deploy a pull request into a preview environment without having to merge your code onto the main branch or even wait for the CI process to validate.
  • Protect your production data by using a dataset specific to this environment.
  • Share the specific URL of your Review App with all members of your team and secure access with a password.
  • Create ephemeral Review Apps on demand, which follow the life cycle of your pull requests.

Using Review Apps as part of your development routine allows you to iterate faster, identify flaws and bugs earlier, without impacting the production app or its data! It is the ideal way to get regular feedback from all stakeholders: development, product and marketing teams.

The Value of Review Apps

Re-reading changes in the code does not always allow to identify their impacts, that's why it is also important to preview them in a live clone of your application!

At Scalingo this functionality has been available since the release of our GitHub connector in 2016. Internally, we use it on a daily basis and it is part of our work habits. As a Product Manager, it is via Review Apps that I can interact in preview with the new features we are working on every day.😊

New Features for Review Apps

Today, we are improving the integration of Review Apps into.

To do this, we are introducing two changes:

  • You can now track the configuration and configuration changes that are made to the integration with your code repository.

Any changes in settings will be archived in your application's Activities.

  • The second change relates specifically to Review Apps. Each new Review App will be trackable from the parent application and will be visible in the Activities tab.

For more transparency and security, we have also made the pull request and its original repository visible.

How to use Review Apps

Dashboard

The Scalingo Dashboard allows you to manage the entire lifecycle of your Review Apps.

From the Review apps tab, then Manual deployment, you will access the list of all pull requests that are open on your code repository. Select the pull request you want to deploy and then click Deploy review app.

If you want to automate the creation of Review Apps for all pull requests, go to Configuration and then Edit the settings for automatic deployment.

Check "I want to allow Review Apps coming from forks" and then click on Update. As soon as the next pull request is received, a complete clone of your application will be automatically created!

CLI

By using the CLI Scalingo(version 1.19 or later), you can quickly check the status of your configuration.

$ scalingo --app my-app integration-link
Application: my-app
Integration: GitHub
Linker: Scalingo

Repository: Scalingo/sample-ruby-rails
Auto Deploy: ✘
Review Apps Deploy: ✘
    Destroy on Close: instantly
    Destroy on Stale: after 1h
    Automatic creation from forks: ✘

Here, automatic deployment of the application is disabled, as is automatic deployment of Review Apps.

Without enabling automatic deployment of all your branches, you can request a one-off deployment by specifying its pull request ID, in this case 42.

scalingo --app my-app integration-link-manual-review-app 42
-----> Manual review app created for app 'my-app' with pull/merge request id '42'.

List the deployed Review Apps and access its test URL.

scalingo --app my-app review-apps
+---------------+----+----------------------------------+---------------------+---------+-------------------------------------------+
|      APP      | PR |            PR BRANCH             |     CREATED AT      | STATUS  |                    URL                    |
+---------------+----+----------------------------------+---------------------+---------+-------------------------------------------+
| my-app-pr42   | 42 | Scalingo:Scalingo-reviewapp      | 2023/01/01 10:42:42 | success | https://my-app-pr42.osc-fr1.scalingo.io   |
+---------------+----+----------------------------------+---------------------+---------+-------------------------------------------+

If you want, you can enable automatic deployment of Review Apps directly from your code repository:

scalingo --app my-app integration-link-update --deploy-review-apps
-----> Your app 'my-app' integration link has been updated.

In case your project also accepts pull requests from forks, and you want to take advantage of the automatic deployment of the corresponding reviews apps, add the flag --allow-review-apps-from-forks. See our Scalingo documentation before enabling this setting.

scalingo --app my-app integration-link-update --deploy-review-apps --allow-review-apps-from-forks
  /!\  Only allow automatic review apps deployments from forks if you trust the owners of those forks, as this could lead to security issues. More info here: https://doc.scalingo.com/platform/app/review-apps#addons-collaborators-and-environment-variables

? Allow automatic creation of review apps from forks? Yes
-----> Your app 'my-app' integration link has been updated.

In summary

The changes to the Review Apps management allow for better tracking of event history and life cycle.

Making the original pull request repository visible also means more security for all Scalingo users.

We hope you will appreciate these improvements and that they will make it easier for you to integrate Review Apps into your development routine! You can find all this information and more in the Scalingo documentation on how to use Review Apps.

Share the article
Benjamin Ach
Benjamin Ach
Benjamin is Product Manager at Scalingo: one foot in tech, one foot in business and one foot in user experience. His goal? To make a positive impact on your software development habits by using Scalingo PaaS!

Try Scalingo for free

30-day free trial / No credit card required / Hosted in Europe