The following page may contain information related to upcoming products, features and functionality. It is important to note that the information presented is for informational purposes only, so please do not rely on the information for purchasing or planning purposes. Just like with all projects, the items mentioned on the page are subject to change or delay, and the development, release, and timing of any products, features or functionality remain at the sole discretion of GitLab Inc.
Review Apps let you build a review process right into your software development workflow by automatically provisioning test environments for your code, integrated right into your merge requests. Not only can you enable your teammates to easily participate in the review, but you also can also shift additional activities left, such as running DAST and accessibility testing in your review apps. Features such as Visual Review tools contribute to the overall functionality in Review Apps.
Review Apps enable users to perform usability testing for any number of code changes, spanning the personas of product managers, release managers, designers, and software engineers in a single place. As an end to end application, we offer other features involving the designer in the DevOps lifecycle, including Design Management in the Create stage. Review Apps also ties into our progressive delivery vision of CI/CD as it gives you a glipse of how your application will look after a specific commit, way before it reaches production.
Our ultimate goal is that Review Apps should spin up with a one-click button that works automatically regardless of the deployment target (this includes cloud-native and mobile as well). Anyone can view, comment and even fix any errors found directly from the review app itself.
This area of the product is in need of continued refinement to add more kinds of review apps (such as for mobile devices), and a smoother, easier to use experience.
Currently, Pipeline Insights is collecting feedback on Review Apps and plans to improve the discoverability of review apps in merge requests via gitlab#343652.
This category is currently at the "Complete" maturity level, and our next maturity target is Lovable (see our definitions of maturity levels).
The next set of features we are considering are captured in the Review Apps: Lovable Maturity Epic
As well as investing in a complete experience for Visual Review Tools:
One big advantage Heroku Review Apps have over ours is that they are easier to set up
and get running. Ours require a bit more knowledge and reading of documentation to make
this clear. We can make our Review Apps much easier (and thereby much more visible) by
implementing One button to enable review apps, auto-edit .gitlab-ci.yml
, auto-configure GKE,
which does the heavy lifting of getting them working for you.
Netlify Deploy Previews provide functionality similar to Review Apps and work with both GitLab and GitHub. Combined with their notifications capabilities this provides a compelling way to share a preview of changes with intersted stakeholders as they are happing. Netlify also provides the ability to let any user leave comments on these deploy previews as noted on the Usability Direction Page.
Customers utilizing microservice architectures find it challenging to manage the pre-production environments needed to validate changes before they are shipped. While Review apps are great for single services it can be difficult to support a microservice architecture like this or applicates in which multi project pipelines are utilized to deploy the service(s). Two issues designed to address some of these challenges with Review Apps are:
gitlab#235686 extends support for review apps from a child pipeline when using parent-child pipelines.
To use Review Apps it takes time and effort to setup and manage the environments that support it. What if customers don't have to do any of the work of setup and management? We are considering offering Review Apps as a Service. We also see opportunities to build in support for visual regression testing to help developers see visual degradations before they merge.