AWS CodePipeline is a fully managed continuous delivery service that helps users automate release pipelines. CodePipeline automates the build, test, and deploy phases of the release process every time there is a code change, based on the release model a user defines.
$1
per active pipeline/per month
Sauce Labs
Score 6.9 out of 10
N/A
Sauce Labs is a cloud-based platform
for automated testing of desktop and mobile applications. It is designed to be instantly scalable, since it is optimized for continuous
integration workflows. (The vendor says that when tests are automated and run in parallel on
multiple virtual machines across many different browser, platform and device
combinations, testing time is reduced and developer time is freed up from
managing infrastructure.) The Sauce Labs testing cloud is intended to be paired…
I think AWS CodePipeline is a great tool for anyone wanted automated deployments in a multi-server/container AWS environment. AWS also offers services like Elastic Beanstalk that provide a more managed hosting & deployment experience. CodePipeline is a good middle ground with solid, built-in automation with enough customizability to not lock people into one deployment or architecture philosophy.
Having used some of the competitor's tools over the year I would say that SauceLabs provides a lot of value for money if you plan to run long sets of tests with high frequencies. Paying for a single slot means you can run tests whenever you want without creeping costs but it does make running tests in parallel require an extra slot. Currently, our test suite takes over three hours to run and at the moment it is cost prohibitive to purchase an extra slot. However, having access to live testing and integration with Appium is great.
I've had four changes in account managers over the past couple of years. They ranged from super experienced/advocate to some that seems relatively junior/a bit removed. I understand this happens but clarity on what I can expect with these partnerships would be valuable. What I've gotten in the end has varied dramatically.
As we currently know, there's nothing on the market with a big feature set like saucelabs at their current price point. Along with the business not having to learn a whole new tool to use again and the ability to refresh our private devices and the continuously growing number of public devices available and features.
Overall, I give AWS Codepipeline a 9 because it gets the job done and I can't complain much about the web interface as much of the action is taking place behind the scenes on the terminal locally or via Amazon's infrastructure anyway. It would be nicer to have a better flowing and visualizable web interface, however.
It is an incredibly easy service to use for what its primary intention is. The only reason a point is deducted is because more feature enrichment can be done around the Sauce Connect Proxy utility and the Jenkins Sauce OnDemand plugin. User Account administration also needs more work, such as the addition of user groups, rather than a simple hierarchy of users.
Yes, Sauce labs is always there, and it is easy to troubleshoot when you are having any connectivity issue, they always keep you informed when they plan to perform any type of maintenance window on their side in advance, so you can plan and will not affect your current work. I do not recall any outage.
Our pipeline takes about 30 minutes to run through. Although this time depends on the applications you are using on either end, I feel that it is a reasonable time to make upgrades and updates to our system as it is not an every day push.
The time where they acquired TestObject and were trying to integrate their services would probably be the most annoying time. Annoying as features were in two separate places (websites) for example. But since the introduction of their unified platform, we haven't run into any issues as of yet and we've used them for at least 5-6 years now.
We didn't need a lot of support with AWS CodePipeline as it was pretty straightforward to configure and use, but where we ran into problems, the AWS community was able to help. AWS support agents were also helpful in resolving some of the minor issues we encountered, which we could not find a solution elsewhere.
The people here are just so friendly and personable. For instance, Tristan Lombard answered every single email with a very cheery tone and not only did he diagnose my issue, he also made sure to ask how my day was going. Keep it up
I am not sure if it's my company that makes getting Sauce Labs integrated into the team difficult or is it Sauce Labs. The process for getting Sauce Labs for a project is quite a tedious process and the information for using Sauce Labs initially is quite lacking. There is little support for getting started
CodeCommit and CodeDeploy can be used with CodePipeline so it’s not really fair to stack them against each other as they can be quite the compliment. The same goes for Beanstalk, which is often used as a deployment target in relation to CodePipeline.
CodePipeline fulfills the CI/CD duty, where the other services do not focus on that specific function. They are supplements, not replacements. CodePipeline will detect the updated code and handle deploying it to the actual instance via Beanstalk.
Jenkins is open source and not a native AWS service, that is its primary differentiator. Jenkins can also be used as a supplement to CodePipeline.
We have also tested out Browser Stack, which at the time was more geared towards manual testing. Although it appeared to support more mobile devices/browsers, we also wanted something that can plugin in easily with our existing Selenium test scripts. Sauce Labs was definitely more geared towards our goals at the moment which were to automation functional/regression testing and build it into our release pipeline.
With private devices, you have full reign over usage of them, so no complaints there. Public devices are available if no one else is using it, which is understandable. Browser VMs are based on number of open sessions and Saucelabs give you a certain number depending on what you need. If you need more, then you pay for more. It is as simple as that. You need more devices, then you can pay for more private ones too. A workaround for public devices is to pick the first available one and not be too picky, that's if you are able to of course.
CodePipeline has reduced ongoing devops costs for my clients, especially around deployment & testing.
CodePipeline has sped up development workflow by making the deployment process automated off git pushes. Deployment takes very little coordination as the system will just trigger based on what is the latest commit in a branch.
CodePipeline offered a lot of out-of-the-box functionality that was much simpler to setup than a dedicated CI server. It allowed the deployment process to built and put into production with much less and effort and cost compared to rolling the functionality manually.