Alternatives to HockeyApp logo

Alternatives to HockeyApp

TestFlight, TestFairy, Fabric, Crashlytics, and fastlane are the most popular alternatives and competitors to HockeyApp.
168
158
+ 1
38

What is HockeyApp and what are its top alternatives?

HockeyApp is the best way to collect live crash reports, get feedback from your users, distribute your betas, and analyze your test coverage.
HockeyApp is a tool in the Beta Testing / Mobile App Distribution category of a tech stack.

Top Alternatives to HockeyApp

  • TestFlight
    TestFlight

    With TestFlight, developers simply upload a build, and the testers can install it directly from their device, over the air. ...

  • TestFairy
    TestFairy

    When testing apps in the crowd, you never know what exactly was done, and what went wrong on the client side. TestFairy shows you a video of the exact test that was done, including CPU, memory, GPS, network and a lot more. ...

  • Fabric
    Fabric

    Fabric is a Python (2.5-2.7) library and command-line tool for streamlining the use of SSH for application deployment or systems administration tasks. It provides a basic suite of operations for executing local or remote shell commands (normally or via sudo) and uploading/downloading files, as well as auxiliary functionality such as prompting the running user for input, or aborting execution. ...

  • Crashlytics
    Crashlytics

    Instead of just showing you the stack trace, Crashlytics performs deep analysis of each and every thread. We de-prioritize lines that don't matter while highlighting the interesting ones. This makes reading stack traces easier, faster, and far more useful! Crashlytics' intelligent grouping can take 50,000 crashes, distill them down to 20 unique issues, and then tell you which 3 are the most important to fix. ...

  • fastlane
    fastlane

    fastlane lets you define and run your deployment pipelines for different environments. It helps you unify your app’s release process and automate the whole process. fastlane connects all fastlane tools and third party tools, like CocoaPods. ...

  • Firebase
    Firebase

    Firebase is a cloud service designed to power real-time, collaborative applications. Simply add the Firebase library to your application to gain access to a shared data structure; any changes you make to that data are automatically synchronized with the Firebase cloud and with other clients within milliseconds. ...

  • Jenkins
    Jenkins

    In a nutshell Jenkins CI is the leading open-source continuous integration server. Built with Java, it provides over 300 plugins to support building and testing virtually any project. ...

  • Git
    Git

    Git is a free and open source distributed version control system designed to handle everything from small to very large projects with speed and efficiency. ...

HockeyApp alternatives & related posts

TestFlight logo

TestFlight

1.1K
163
iOS beta testing on the fly.
1.1K
163
PROS OF TESTFLIGHT
  • 62
    Must have for ios development
  • 49
    Beta testing
  • 20
    Easy setup
  • 10
    Easy way to push out updates for internal testers
  • 7
    In-App Updates
  • 5
    Crash Logging
  • 4
    Checkpoints
  • 3
    Multiple platforms
  • 2
    Remote Logging
  • 1
    Sessions
CONS OF TESTFLIGHT
    Be the first to leave a con

    related TestFlight posts

    Utkarsh Mehta
    Senior Blockchain Developer · | 1 upvote · 6K views

    I created microservices with Kafka for message queue, Meteor for app development with JavaScript & TestFlight for iOS app development, Elasticsearch for logging SendGrid for automated mails. Git & GitHub for SCM.

    See more
    TestFairy logo

    TestFairy

    41
    29
    Painless Beta Testing
    41
    29
    PROS OF TESTFAIRY
    • 8
      Get video rec of the user on your app
    • 4
      Landing Page
    • 4
      Better design
    • 3
      JIRA Integration
    • 2
      Cross-platform
    • 2
      Supports Enterprise IPA's (TestFlight doesn't/didn't)
    • 2
      GitHub Integration
    • 1
      Application full Log information
    • 1
      App Distribution
    • 1
      Single Sign-On
    • 1
      In-App Feedback
    CONS OF TESTFAIRY
      Be the first to leave a con

      related TestFairy posts

      Fabric logo

      Fabric

      451
      75
      Simple, Pythonic remote execution and deployment
      451
      75
      PROS OF FABRIC
      • 23
        Python
      • 21
        Simple
      • 5
        Low learning curve, from bash script to Python power
      • 5
        Installation feedback for Twitter App Cards
      • 3
        Easy on maintainance
      • 3
        Single config file
      • 3
        Installation? pip install fabric... Boom
      • 3
        Easy to add any type of job
      • 3
        Agentless
      • 2
        Easily automate any set system automation
      • 1
        Flexible
      • 1
        Crash Analytics
      • 1
        Backward compatibility
      • 1
        Remote sudo execution
      CONS OF FABRIC
        Be the first to leave a con

        related Fabric posts

        Crashlytics logo

        Crashlytics

        1K
        340
        The world's most powerful, yet lightest weight crash reporting solution. Free for everybody.
        1K
        340
        PROS OF CRASHLYTICS
        • 78
          Crash tracking
        • 56
          Mobile exception tracking
        • 53
          Free
        • 37
          Easy deployment
        • 25
          Ios
        • 15
          Great ui
        • 11
          Great reports
        • 10
          Android
        • 8
          Advanced Logging
        • 7
          Monitor Tester Lifecycle
        • 3
          Mac APP and IDE Plugins
        • 3
          Great User Experience
        • 3
          In Real-Time
        • 3
          iOS SDK
        • 3
          Security
        • 3
          Android SDK
        • 2
          The UI is simple and it just works
        • 2
          Best UI
        • 2
          Light
        • 2
          Real-time
        • 2
          Seamless
        • 2
          Painless App Distribution
        • 2
          Crash Reporting
        • 2
          Beta distribution
        • 2
          Mobile Analytics
        • 2
          Deep Workflow Integration
        • 1
          IOS QA Deploy and tracking
        • 1
          Easy iOS Integration
        CONS OF CRASHLYTICS
          Be the first to leave a con

          related Crashlytics posts

          Алексей Нестерчук
          Shared insights
          on
          AWS ConfigAWS ConfigCrashlyticsCrashlytics

          From firebase Crashlytics, everything is simple, we install SDK and configs, and then we can see all the crashes. With AWS, it is not clear to me which service to use for the same purpose as configuring it. Correctly I understand that for automatic sending of all crashes, you need to use AWS Config?

          See more
          fastlane logo

          fastlane

          654
          74
          Connect all iOS deployment tools into one streamlined workflow
          654
          74
          PROS OF FASTLANE
          • 20
            Easy to use
          • 13
            Open Source
          • 13
            Itunes connect deployment
          • 11
            Incredible flexability
          • 9
            Third party integrations
          • 3
            Provisioning profile management
          • 3
            Certificate management
          • 1
            All in one iOS DevOps
          • 1
            Can be used for Android as well
          • 0
            Integrate anything with fastlane
          CONS OF FASTLANE
            Be the first to leave a con

            related fastlane posts

            Dear Community!

            I am researching for Mobile Application Management platform for managing android and ios release management in Fintech space. I see following options are good:

            Please suggest if you have better option.

            See more

            Hi, I am doing automation for mobile app (iOS & Android). Currently, I am using Apache Maven build tool. Can someone tell me which out of these 3 tools is the best? (fastlane, Gradle, Maven). Apart from that, we are using CircleCI.

            See more
            Firebase logo

            Firebase

            41.3K
            2K
            The Realtime App Platform
            41.3K
            2K
            PROS OF FIREBASE
            • 371
              Realtime backend made easy
            • 270
              Fast and responsive
            • 242
              Easy setup
            • 215
              Real-time
            • 191
              JSON
            • 134
              Free
            • 128
              Backed by google
            • 83
              Angular adaptor
            • 68
              Reliable
            • 36
              Great customer support
            • 32
              Great documentation
            • 25
              Real-time synchronization
            • 21
              Mobile friendly
            • 19
              Rapid prototyping
            • 14
              Great security
            • 12
              Automatic scaling
            • 11
              Freakingly awesome
            • 8
              Super fast development
            • 8
              Angularfire is an amazing addition!
            • 8
              Chat
            • 6
              Firebase hosting
            • 6
              Built in user auth/oauth
            • 6
              Awesome next-gen backend
            • 6
              Ios adaptor
            • 4
              Speed of light
            • 4
              Very easy to use
            • 3
              Great
            • 3
              It's made development super fast
            • 3
              Brilliant for startups
            • 2
              Free hosting
            • 2
              Cloud functions
            • 2
              JS Offline and Sync suport
            • 2
              Low battery consumption
            • 2
              .net
            • 2
              The concurrent updates create a great experience
            • 2
              Push notification
            • 2
              I can quickly create static web apps with no backend
            • 2
              Great all-round functionality
            • 2
              Free authentication solution
            • 1
              Easy Reactjs integration
            • 1
              Google's support
            • 1
              Free SSL
            • 1
              CDN & cache out of the box
            • 1
              Easy to use
            • 1
              Large
            • 1
              Faster workflow
            • 1
              Serverless
            • 1
              Good Free Limits
            • 1
              Simple and easy
            CONS OF FIREBASE
            • 31
              Can become expensive
            • 16
              No open source, you depend on external company
            • 15
              Scalability is not infinite
            • 9
              Not Flexible Enough
            • 7
              Cant filter queries
            • 3
              Very unstable server
            • 3
              No Relational Data
            • 2
              Too many errors
            • 2
              No offline sync

            related Firebase posts

            Stephen Gheysens
            Lead Solutions Engineer at Inscribe · | 14 upvotes · 1.8M views

            Hi Otensia! I'd definitely recommend using the skills you've already got and building with JavaScript is a smart way to go these days. Most platform services have JavaScript/Node SDKs or NPM packages, many serverless platforms support Node in case you need to write any backend logic, and JavaScript is incredibly popular - meaning it will be easy to hire for, should you ever need to.

            My advice would be "don't reinvent the wheel". If you already have a skill set that will work well to solve the problem at hand, and you don't need it for any other projects, don't spend the time jumping into a new language. If you're looking for an excuse to learn something new, it would be better to invest that time in learning a new platform/tool that compliments your knowledge of JavaScript. For this project, I might recommend using Netlify, Vercel, or Google Firebase to quickly and easily deploy your web app. If you need to add user authentication, there are great examples out there for Firebase Authentication, Auth0, or even Magic (a newcomer on the Auth scene, but very user friendly). All of these services work very well with a JavaScript-based application.

            See more
            Eugene Cheah

            For inboxkitten.com, an opensource disposable email service;

            We migrated our serverless workload from Cloud Functions for Firebase to CloudFlare workers, taking advantage of the lower cost and faster-performing edge computing of Cloudflare network. Made possible due to our extremely low CPU and RAM overhead of our serverless functions.

            If I were to summarize the limitation of Cloudflare (as oppose to firebase/gcp functions), it would be ...

            1. <5ms CPU time limit
            2. Incompatible with express.js
            3. one script limitation per domain

            Limitations our workload is able to conform with (YMMV)

            For hosting of static files, we migrated from Firebase to CommonsHost

            More details on the trade-off in between both serverless providers is in the article

            See more
            Jenkins logo

            Jenkins

            58.6K
            2.2K
            An extendable open source continuous integration server
            58.6K
            2.2K
            PROS OF JENKINS
            • 523
              Hosted internally
            • 469
              Free open source
            • 318
              Great to build, deploy or launch anything async
            • 243
              Tons of integrations
            • 211
              Rich set of plugins with good documentation
            • 111
              Has support for build pipelines
            • 68
              Easy setup
            • 66
              It is open-source
            • 53
              Workflow plugin
            • 13
              Configuration as code
            • 12
              Very powerful tool
            • 11
              Many Plugins
            • 10
              Continuous Integration
            • 10
              Great flexibility
            • 9
              Git and Maven integration is better
            • 8
              100% free and open source
            • 7
              Github integration
            • 7
              Slack Integration (plugin)
            • 6
              Easy customisation
            • 6
              Self-hosted GitLab Integration (plugin)
            • 5
              Docker support
            • 5
              Pipeline API
            • 4
              Fast builds
            • 4
              Platform idnependency
            • 4
              Hosted Externally
            • 4
              Excellent docker integration
            • 3
              It`w worked
            • 3
              Customizable
            • 3
              Can be run as a Docker container
            • 3
              It's Everywhere
            • 3
              JOBDSL
            • 3
              AWS Integration
            • 2
              Easily extendable with seamless integration
            • 2
              PHP Support
            • 2
              Build PR Branch Only
            • 2
              NodeJS Support
            • 2
              Ruby/Rails Support
            • 2
              Universal controller
            • 2
              Loose Coupling
            CONS OF JENKINS
            • 13
              Workarounds needed for basic requirements
            • 10
              Groovy with cumbersome syntax
            • 8
              Plugins compatibility issues
            • 7
              Lack of support
            • 7
              Limited abilities with declarative pipelines
            • 5
              No YAML syntax
            • 4
              Too tied to plugins versions

            related Jenkins posts

            Tymoteusz Paul
            Devops guy at X20X Development LTD · | 23 upvotes · 10.1M views

            Often enough I have to explain my way of going about setting up a CI/CD pipeline with multiple deployment platforms. Since I am a bit tired of yapping the same every single time, I've decided to write it up and share with the world this way, and send people to read it instead ;). I will explain it on "live-example" of how the Rome got built, basing that current methodology exists only of readme.md and wishes of good luck (as it usually is ;)).

            It always starts with an app, whatever it may be and reading the readmes available while Vagrant and VirtualBox is installing and updating. Following that is the first hurdle to go over - convert all the instruction/scripts into Ansible playbook(s), and only stopping when doing a clear vagrant up or vagrant reload we will have a fully working environment. As our Vagrant environment is now functional, it's time to break it! This is the moment to look for how things can be done better (too rigid/too lose versioning? Sloppy environment setup?) and replace them with the right way to do stuff, one that won't bite us in the backside. This is the point, and the best opportunity, to upcycle the existing way of doing dev environment to produce a proper, production-grade product.

            I should probably digress here for a moment and explain why. I firmly believe that the way you deploy production is the same way you should deploy develop, shy of few debugging-friendly setting. This way you avoid the discrepancy between how production work vs how development works, which almost always causes major pains in the back of the neck, and with use of proper tools should mean no more work for the developers. That's why we start with Vagrant as developer boxes should be as easy as vagrant up, but the meat of our product lies in Ansible which will do meat of the work and can be applied to almost anything: AWS, bare metal, docker, LXC, in open net, behind vpn - you name it.

            We must also give proper consideration to monitoring and logging hoovering at this point. My generic answer here is to grab Elasticsearch, Kibana, and Logstash. While for different use cases there may be better solutions, this one is well battle-tested, performs reasonably and is very easy to scale both vertically (within some limits) and horizontally. Logstash rules are easy to write and are well supported in maintenance through Ansible, which as I've mentioned earlier, are at the very core of things, and creating triggers/reports and alerts based on Elastic and Kibana is generally a breeze, including some quite complex aggregations.

            If we are happy with the state of the Ansible it's time to move on and put all those roles and playbooks to work. Namely, we need something to manage our CI/CD pipelines. For me, the choice is obvious: TeamCity. It's modern, robust and unlike most of the light-weight alternatives, it's transparent. What I mean by that is that it doesn't tell you how to do things, doesn't limit your ways to deploy, or test, or package for that matter. Instead, it provides a developer-friendly and rich playground for your pipelines. You can do most the same with Jenkins, but it has a quite dated look and feel to it, while also missing some key functionality that must be brought in via plugins (like quality REST API which comes built-in with TeamCity). It also comes with all the common-handy plugins like Slack or Apache Maven integration.

            The exact flow between CI and CD varies too greatly from one application to another to describe, so I will outline a few rules that guide me in it: 1. Make build steps as small as possible. This way when something breaks, we know exactly where, without needing to dig and root around. 2. All security credentials besides development environment must be sources from individual Vault instances. Keys to those containers should exist only on the CI/CD box and accessible by a few people (the less the better). This is pretty self-explanatory, as anything besides dev may contain sensitive data and, at times, be public-facing. Because of that appropriate security must be present. TeamCity shines in this department with excellent secrets-management. 3. Every part of the build chain shall consume and produce artifacts. If it creates nothing, it likely shouldn't be its own build. This way if any issue shows up with any environment or version, all developer has to do it is grab appropriate artifacts to reproduce the issue locally. 4. Deployment builds should be directly tied to specific Git branches/tags. This enables much easier tracking of what caused an issue, including automated identifying and tagging the author (nothing like automated regression testing!).

            Speaking of deployments, I generally try to keep it simple but also with a close eye on the wallet. Because of that, I am more than happy with AWS or another cloud provider, but also constantly peeking at the loads and do we get the value of what we are paying for. Often enough the pattern of use is not constantly erratic, but rather has a firm baseline which could be migrated away from the cloud and into bare metal boxes. That is another part where this approach strongly triumphs over the common Docker and CircleCI setup, where you are very much tied in to use cloud providers and getting out is expensive. Here to embrace bare-metal hosting all you need is a help of some container-based self-hosting software, my personal preference is with Proxmox and LXC. Following that all you must write are ansible scripts to manage hardware of Proxmox, similar way as you do for Amazon EC2 (ansible supports both greatly) and you are good to go. One does not exclude another, quite the opposite, as they can live in great synergy and cut your costs dramatically (the heavier your base load, the bigger the savings) while providing production-grade resiliency.

            See more
            Thierry Schellenbach

            Releasing new versions of our services is done by Travis CI. Travis first runs our test suite. Once it passes, it publishes a new release binary to GitHub.

            Common tasks such as installing dependencies for the Go project, or building a binary are automated using plain old Makefiles. (We know, crazy old school, right?) Our binaries are compressed using UPX.

            Travis has come a long way over the past years. I used to prefer Jenkins in some cases since it was easier to debug broken builds. With the addition of the aptly named “debug build” button, Travis is now the clear winner. It’s easy to use and free for open source, with no need to maintain anything.

            #ContinuousIntegration #CodeCollaborationVersionControl

            See more
            Git logo

            Git

            298.8K
            6.6K
            Fast, scalable, distributed revision control system
            298.8K
            6.6K
            PROS OF GIT
            • 1.4K
              Distributed version control system
            • 1.1K
              Efficient branching and merging
            • 959
              Fast
            • 845
              Open source
            • 726
              Better than svn
            • 368
              Great command-line application
            • 306
              Simple
            • 291
              Free
            • 232
              Easy to use
            • 222
              Does not require server
            • 28
              Distributed
            • 23
              Small & Fast
            • 18
              Feature based workflow
            • 15
              Staging Area
            • 13
              Most wide-spread VSC
            • 11
              Disposable Experimentation
            • 11
              Role-based codelines
            • 7
              Frictionless Context Switching
            • 6
              Data Assurance
            • 5
              Efficient
            • 4
              Just awesome
            • 3
              Easy branching and merging
            • 3
              Github integration
            • 2
              Compatible
            • 2
              Possible to lose history and commits
            • 2
              Flexible
            • 1
              Team Integration
            • 1
              Easy
            • 1
              Light
            • 1
              Fast, scalable, distributed revision control system
            • 1
              Rebase supported natively; reflog; access to plumbing
            • 1
              Flexible, easy, Safe, and fast
            • 1
              CLI is great, but the GUI tools are awesome
            • 1
              It's what you do
            • 0
              Phinx
            CONS OF GIT
            • 16
              Hard to learn
            • 11
              Inconsistent command line interface
            • 9
              Easy to lose uncommitted work
            • 8
              Worst documentation ever possibly made
            • 5
              Awful merge handling
            • 3
              Unexistent preventive security flows
            • 3
              Rebase hell
            • 2
              Ironically even die-hard supporters screw up badly
            • 2
              When --force is disabled, cannot rebase
            • 1
              Doesn't scale for big data

            related Git posts

            Simon Reymann
            Senior Fullstack Developer at QUANTUSflow Software GmbH · | 30 upvotes · 11.9M views

            Our whole DevOps stack consists of the following tools:

            • GitHub (incl. GitHub Pages/Markdown for Documentation, GettingStarted and HowTo's) for collaborative review and code management tool
            • Respectively Git as revision control system
            • SourceTree as Git GUI
            • Visual Studio Code as IDE
            • CircleCI for continuous integration (automatize development process)
            • Prettier / TSLint / ESLint as code linter
            • SonarQube as quality gate
            • Docker as container management (incl. Docker Compose for multi-container application management)
            • VirtualBox for operating system simulation tests
            • Kubernetes as cluster management for docker containers
            • Heroku for deploying in test environments
            • nginx as web server (preferably used as facade server in production environment)
            • SSLMate (using OpenSSL) for certificate management
            • Amazon EC2 (incl. Amazon S3) for deploying in stage (production-like) and production environments
            • PostgreSQL as preferred database system
            • Redis as preferred in-memory database/store (great for caching)

            The main reason we have chosen Kubernetes over Docker Swarm is related to the following artifacts:

            • Key features: Easy and flexible installation, Clear dashboard, Great scaling operations, Monitoring is an integral part, Great load balancing concepts, Monitors the condition and ensures compensation in the event of failure.
            • Applications: An application can be deployed using a combination of pods, deployments, and services (or micro-services).
            • Functionality: Kubernetes as a complex installation and setup process, but it not as limited as Docker Swarm.
            • Monitoring: It supports multiple versions of logging and monitoring when the services are deployed within the cluster (Elasticsearch/Kibana (ELK), Heapster/Grafana, Sysdig cloud integration).
            • Scalability: All-in-one framework for distributed systems.
            • Other Benefits: Kubernetes is backed by the Cloud Native Computing Foundation (CNCF), huge community among container orchestration tools, it is an open source and modular tool that works with any OS.
            See more
            Tymoteusz Paul
            Devops guy at X20X Development LTD · | 23 upvotes · 10.1M views

            Often enough I have to explain my way of going about setting up a CI/CD pipeline with multiple deployment platforms. Since I am a bit tired of yapping the same every single time, I've decided to write it up and share with the world this way, and send people to read it instead ;). I will explain it on "live-example" of how the Rome got built, basing that current methodology exists only of readme.md and wishes of good luck (as it usually is ;)).

            It always starts with an app, whatever it may be and reading the readmes available while Vagrant and VirtualBox is installing and updating. Following that is the first hurdle to go over - convert all the instruction/scripts into Ansible playbook(s), and only stopping when doing a clear vagrant up or vagrant reload we will have a fully working environment. As our Vagrant environment is now functional, it's time to break it! This is the moment to look for how things can be done better (too rigid/too lose versioning? Sloppy environment setup?) and replace them with the right way to do stuff, one that won't bite us in the backside. This is the point, and the best opportunity, to upcycle the existing way of doing dev environment to produce a proper, production-grade product.

            I should probably digress here for a moment and explain why. I firmly believe that the way you deploy production is the same way you should deploy develop, shy of few debugging-friendly setting. This way you avoid the discrepancy between how production work vs how development works, which almost always causes major pains in the back of the neck, and with use of proper tools should mean no more work for the developers. That's why we start with Vagrant as developer boxes should be as easy as vagrant up, but the meat of our product lies in Ansible which will do meat of the work and can be applied to almost anything: AWS, bare metal, docker, LXC, in open net, behind vpn - you name it.

            We must also give proper consideration to monitoring and logging hoovering at this point. My generic answer here is to grab Elasticsearch, Kibana, and Logstash. While for different use cases there may be better solutions, this one is well battle-tested, performs reasonably and is very easy to scale both vertically (within some limits) and horizontally. Logstash rules are easy to write and are well supported in maintenance through Ansible, which as I've mentioned earlier, are at the very core of things, and creating triggers/reports and alerts based on Elastic and Kibana is generally a breeze, including some quite complex aggregations.

            If we are happy with the state of the Ansible it's time to move on and put all those roles and playbooks to work. Namely, we need something to manage our CI/CD pipelines. For me, the choice is obvious: TeamCity. It's modern, robust and unlike most of the light-weight alternatives, it's transparent. What I mean by that is that it doesn't tell you how to do things, doesn't limit your ways to deploy, or test, or package for that matter. Instead, it provides a developer-friendly and rich playground for your pipelines. You can do most the same with Jenkins, but it has a quite dated look and feel to it, while also missing some key functionality that must be brought in via plugins (like quality REST API which comes built-in with TeamCity). It also comes with all the common-handy plugins like Slack or Apache Maven integration.

            The exact flow between CI and CD varies too greatly from one application to another to describe, so I will outline a few rules that guide me in it: 1. Make build steps as small as possible. This way when something breaks, we know exactly where, without needing to dig and root around. 2. All security credentials besides development environment must be sources from individual Vault instances. Keys to those containers should exist only on the CI/CD box and accessible by a few people (the less the better). This is pretty self-explanatory, as anything besides dev may contain sensitive data and, at times, be public-facing. Because of that appropriate security must be present. TeamCity shines in this department with excellent secrets-management. 3. Every part of the build chain shall consume and produce artifacts. If it creates nothing, it likely shouldn't be its own build. This way if any issue shows up with any environment or version, all developer has to do it is grab appropriate artifacts to reproduce the issue locally. 4. Deployment builds should be directly tied to specific Git branches/tags. This enables much easier tracking of what caused an issue, including automated identifying and tagging the author (nothing like automated regression testing!).

            Speaking of deployments, I generally try to keep it simple but also with a close eye on the wallet. Because of that, I am more than happy with AWS or another cloud provider, but also constantly peeking at the loads and do we get the value of what we are paying for. Often enough the pattern of use is not constantly erratic, but rather has a firm baseline which could be migrated away from the cloud and into bare metal boxes. That is another part where this approach strongly triumphs over the common Docker and CircleCI setup, where you are very much tied in to use cloud providers and getting out is expensive. Here to embrace bare-metal hosting all you need is a help of some container-based self-hosting software, my personal preference is with Proxmox and LXC. Following that all you must write are ansible scripts to manage hardware of Proxmox, similar way as you do for Amazon EC2 (ansible supports both greatly) and you are good to go. One does not exclude another, quite the opposite, as they can live in great synergy and cut your costs dramatically (the heavier your base load, the bigger the savings) while providing production-grade resiliency.

            See more