For episode 44, we sit down with Lanette Creamer, a proponent of context-driven and agile QA practices to discuss what “quality” means in a world moving toward DevOps practices. Lanette started in QA back when solving “the blank screen” involved “typing in win.exe” and has been testing everything.
Looking around the web for information on creating a new shell from Go, I kept finding the same answer: "You can't do it." Actually, you can do it, and it's not hard.
I’ve been using wxPython for quite a while now and I see certain questions come up on a fairly frequent basis. One of the popular ones is how to ask the user for their credentials before loading up the rest of the application.
Make sure you didn't miss anything with this list of the Best of the Week in the DevOps Zone (July 4 to July 10). This week's topics include continuous delivery patterns, web tests in NodeJS, Java 8 and Java EE 7, Rackspace's best practices, continuous integration and continuous delivery provisioning tools.
Then we hit this issue of how do you create a definition of DevOps that is not too far away from the folks doing the work, but is still meaningful to the whole organization. We even talked a bit about how the name “Dev” “Ops” may be causing confusion!
In Diagramming Spring MVC webapps, I presented an approach that allows you to create a fairly comprehensive model of a software system in code.
Thucydides plays nicely with BDD tools such as JBehave, and traditional tools like JUnit, to make writing automated acceptance tests easier, and to provide richer and more useful living documentation. In a series of two articles, we will look at the tight one and two-way integration that Thucydides offers with JIRA.
This is the first of a series of posts that is going to discuss the different faces of tests. Let’s start with validity. Admittedly, it’s not the first of attribute I thought about. What are the chances we’re going to write a wrong test?
Automate ENV preparation with Docker and Vagrant.
While it is possible to construct situations where double produces an error, it is also just as easy to construct situations were BigDecimal get an error.
Packaging and deploying an application consisting of Puppet manifests and Chef cookbooks (Docker container requests also). Easy integration with Jenkins; XL Deploy takes care of targeting the manifests/cookbooks at the appropriate hosts and all the orchestration of the invocations. Piece of cake!
Microservices are an architectural style where each service is implemented as an independent system. They can use their own persistence system (although it is not mandatory), deployment, language...
New vulnerabilities are frequently discovered in open source components previously thought to be safe, so to keep your applications from going sour, you should rely on automation to alert you when new risks are discovered in existing applications.
Here are a few quick tips to examine your existing code to identify reuse candidates:
For maintenance purposes, it is often beneficial to separate projects into their own projects. Furthermore, the commit history for the extracted project should not be lost. With Git, this can be achieved using git-subtree.
Let’s put it this way: If the test fails the evaluation, there’s going to be work later to fix it. When would you rather do it – now, when the test is fresh in your head, or later, when you have to dive in again, into code that you haven’t seen in 6 months, instead of working on the new exciting feature you want to work on?
In the webinar Death to Manual Deployments we highlight a common problem in enterprise IT: configuration updates to middleware and applications are made on an “as-broken” basis. A developer will change the application to need a configuration tweak, which she makes on her own laptop.
Two examples of Spring Security's authentication replacement feature, often referred to as Run-As, that can replace the current user's authentication (and thus permissions) during a single secured object invocation.
The entry point of a Continuous Delivery pipeline is its Commit Stage, and as such manages the compilation, unit testing, analysis, and packaging of source code whenever a change is committed to version control.
Make sure you didn't miss anything with this list of the Best of the Week in the DevOps Zone (June 27 to July 3). This week's topics includes code complexity, code refactorings, unit testing database code, injection as a security risk, and an interview with PagerDuty on incident management in DevOps.
When making these tests, I allowed for a little flexibility as well: By setting environment variables, the same tests can be run with a manually deployed server, so you can use it to verify that your staging server is up and running (for example).
As a leader in distributed computing architectures, FastConnect brings its unique expertise to assist you in redesigning your information and your business applications involving system implementation methodologies and the most advanced technologies.
Here's a little demo video that I put together to explain pushing/pulling with multiple remotes and how tracking branches make this easier.
Continuing with my interview series from DevOps Days Austin, today’s interview is with Matt Barlow. Matt established Rackspace’s support offering around DevOps automation late last year. Hear about it and how it all came to be.
Which is more readable? releaseVersion = version.substring(0, version.indexOf('-SNAPSHOT')) or
releaseVersion = version[0..-10] ? I'm going to go with the first one because it’s easier to understand if/when something goes wrong.