Deploy & Launch Process | Untold Studio Skip to main content
Untold Studio Untold Studio

Main navigation

  • About
  • Work
  • Blog
  • Handbook
  • Menu
  • Contact
  • About
  • Work
  • Blog
  • Handbook
Email Us
hello@untoldhq.com
Visit Us
P.O. Box 16391
Portland, OR 97292
Follow Us
Twitter LinkedIn
01 02 03 04 05 06 07 08

Deploy & Launch Process

  • Web App Deployment
  • iOS App Deployment
  • Android App Deployment

Launching apps is my favorite thing.

Grady Shelton
Grady Shelton

Up, up, and awaaaaayyee!

Nate Rupert
Nathan Rupert

The Untold team has deployed a wide variety of web and mobile projects into unique devops, sysops, and hosting environments. When external development teams launch our solutions, we enjoy consulting with them to ensure they have access to all possibilities and perspectives.

Web App Deployment

The Untold team has worked with many different backend stacks. As we have done for years, we intend to continue to use the best tool for the job; and therefore, we don't have a one-size-fits all deployment pipeline.

We've had success using Capistrano for Ruby and miscellaneous filesystem deployments, and Fabric for basic Django and Python deployments. For PHP applications, we're big fans of the Laravel ecosystem of tools, and tend to launch all our development, and a good number of our production, sites, and applications using Laravel Forge.

For more complicated deployments, and for projects requiring more sophisticated CI/CD pipelines, we've historically looked to Jenkins to handle automation. Philosophically, we believe in testing every single pull request against both development (for finding collisions with other in-progress features) and current production instances of all our apps.

For Drupal, it can often make sense to lean on larger platform-as-a-service companies with great tooling and support. Our favorites are Pantheon and Amazee.io, though we have a ton of experience building, maintaining, and launching both on Acquia's cloud, and on our own custom AWS instances, containers, and systems.

Regardless of final destination, it almost always (except when organizations come with their own processes and environments) makes sense to spin up development and staging/QA servers and services on AWS. This makes active development dramatically more efficient, and helps developers acclimate to and understand the nuances of actually running a given application in a live-like environment.

Web developers can't simply be programmers any more. It's absolutely critical to understand the specific contexts in which your code will run.

iOS App Deployment

iOS apps fall in to two major categories when it comes to deployment – App Store and enterprise distribution.

For App Store distributions, we guide our clients and partners through Apple’s somewhat strict set of rules and criteria, and manage releases via our fastlane-based set of continuous integration tools.

For enterprise distribution there is no review requirement, but the audience is restricted to an organization’s employees. We use a nearly identical fastlane pipeline for deploying enterprise builds — with the only difference is the final destination. Currently, this destination is Hockey, but will transition to App Center in the near future.

Android App Deployment

The Android platform allows for a lot of flexibility when it’s time to deploy and distribute Android apps — but we have our preferences. 

For most apps, we bundle, manage dependencies, and prepare our Android SDKs (software development kits) for release using Gradle, before leveraging the continuous integration (CI) tool fastlane to manage app releases. Now it’s time to distribute.

For public Google Play Store distributions, we guide our clients and partners through Google’s deployment process, ensuring all rules and criteria are met.

For internal enterprise distributions, we have more destination flexibility, and less requirements. Our current medium for such releases is the HockeyApp, but will use the App Center in the near future.

next://
Iterative Development