goss - Quick and Easy server testing/validation

  •        31

Note: For some Docker/Kubernetes healthcheck, health endpoint, and container ordering examples, see my blog post here. Goss is a YAML based serverspec alternative tool for validating a server’s configuration. It eases the process of writing tests by allowing the user to generate tests from the current system state. Once the test suite is written they can be executed, waited-on, or served as a health endpoint.

https://goss.rocks
https://github.com/aelsabbahy/goss

Tags
Implementation
License
Platform

   




Related Projects

testinfra - Testinfra test your infrastructures

  •    Python

With Testinfra you can write unit tests in Python to test actual state of your servers configured by management tools like Salt, Ansible, Puppet, Chef and so on.

automatron - Infrastructure monitoring framework turning DevOps runbooks into automated actions

  •    Python

Automatron is a framework for creating self-healing infrastructure. Simply put, it detects system events & takes action to correct them. The goal of Automatron is to allow users to automate the execution of common tasks performed during system events. These tasks can be as simple as sending an email to as complicated as restarting services across multiple hosts.

netdata - Get control of your servers. Simple. Effective. Awesome! https://my-netdata.io/

  •    C

netdata is a system for distributed real-time performance and health monitoring. It provides unparalleled insights, in real-time, of everything happening on the system it runs (including applications such as web and database servers), using modern interactive web dashboards.netdata is fast and efficient, designed to permanently run on all systems (physical & virtual servers, containers, IoT devices), without disrupting their core function.

inspec - InSpec: Auditing and Testing Framework

  •    Ruby

InSpec is an open-source testing framework for infrastructure with a human- and machine-readable language for specifying compliance, security and policy requirements.InSpec makes it easy to run your tests wherever you need. More options are found in our CLI docs.

inspec - InSpec: Auditing and Testing Framework

  •    Ruby

InSpec is an open-source testing framework for infrastructure with a human- and machine-readable language for specifying compliance, security and policy requirements. InSpec makes it easy to run your tests wherever you need. More options are found in our CLI docs.


hashi-ui - A modern user interface for @hashicorp Consul & Nomad

  •    Javascript

For Nomad, it was quite simple, no mobile-optimized, (somewhat) feature-complete and live-updating interface existed.Today the Consul and Nomad UI exist in the same binary, but do not "cross-talk" to each other, but long term goal is to integrate them even closer, so from Nomad Job UI you can see Consul health check status for the job tasks, and vice versa be able to cross-link between two otherwise distinct systems.

terratest - Terratest is a Go library that makes it easier to write automated tests for your infrastructure code

  •    Go

Terratest was developed at Gruntwork to help maintain the Infrastructure as Code Library, which contains over 250,000 lines of code written in Terraform, Go, Python, and Bash, and is used in production by hundreds of companies. See Open sourcing Terratest: a swiss army knife for testing infrastructure code for more info. Prerequisite: install Go.

gaia - Build powerful pipelines in any programming language.

  •    Go

Develop powerful pipelines with the help of SDKs and simply check-in your code into a git repository. Gaia automatically clones your code repository, compiles your code to a binary and executes it on-demand. All results are streamed back and formatted to a user-friendly graphical output. Automation Engineer, DevOps, SRE, Cloud Engineer, Platform Engineer - they all have one in common: The majority of tech people are not motivated to take up this work and they are hard to recruit.

devspace - Cloud Native Software Development with Kubernetes and Docker - simply run "devspace up" in any of your projects and start coding directly on top of Kubernetes (works with minikube, self-hosted and cloud-based clusters)

  •    Go

With a DevSpace, you can build, test and run code directly inside any Kubernetes cluster. You can run devspace up in any of your projects and the client-only DevSpace CLI will start a DevSpace within your Kubernetes cluster. Keep coding as usual and the DevSpace CLI will sync any code change directly into the containers of your DevSpace. No more waiting for re-building images, re-deploying containers and restarting applications on every source code change. Simply edit your code with any IDE and run your code instantly inside your DevSpace.

adop-docker-compose - Talk to us on Gitter: https://gitter.im/Accenture/ADOP

  •    Shell

The DevOps Platform is a tools environment for continuously testing, releasing and maintaining applications. Reference code, delivery pipelines, automated testing and environments can be loaded in via the concept of Cartridges. The platform runs on a docker container cluster so it can be stood up for evaluation purposes on just one server using local storage, or stood up in a multi-data centre cluster with distributed network storage. It will also run anywhere that docker runs.

GoConvey - Go testing in the browser. Integrates with go test. Write behavioral tests in Go.

  •    Go

GoConvey is a yummy Go testing tool for gophers. Works with go test. Use it in the terminal or browser according to your viewing pleasure.

LiipMonitorBundle - Integrates the LiipMonitor library into Symfony

  •    PHP

This bundle provides a way to run a series of application related health checks. Health checks in the scope of this bundle go beyond simple actions like performing a ping to a server to see if it's alive. For example a Memcache server can be alive and not displaying any errors in your Nagios but you might not be able to access it from your PHP application. Each health check should then implement some application logic that you want to make sure always works. Another usage can be testing for specific requirements, like availability of PHP extensions. Another design goal of the bundle was to be able to perform the checks using the same configuration and environment that your application is using. In that way you can make sure that if the health check runs successfully then your app should work too.

Apache Tapestry - Component oriented framework for creating dynamic, robust, highly scalable web app

  •    Java

Component oriented framework for creating dynamic, robust, highly scalable web applications in Java.

molecule - Molecule aids in the development and testing of Ansible roles.

  •    Python

Molecule is designed to aid in the development and testing of Ansible roles. Molecule provides support for testing with multiple instances, operating systems and distributions, virtualization providers, test frameworks and testing scenarios. Molecule is opinionated in order to encourage an approach that results in consistently developed roles that are well-written, easily understood and maintained. Molecule uses Ansible playbooks to exercise the role and its associated tests. Molecule supports any provider [1] that Ansible supports.

containerops - DevOps Orchestration Platform

  •    Go

There are many tools, projects, plugins, services adopted in the DevOps workflow. However, no one can cover all DevOps tasks. When developers move from one tool to another, they are facing the huge risk of reinvestment. How should we promote the DevOps process and make iteration more speedy? The principle of DevOps orchestration is to keep your original process working without any changes and just assemble tools, projects, plugins, services into orchestration engine. Improvements to the DevOps process can be done by gradually adding or replacing tools, projects, plugins or services for a smooth migration, and overall, DevOps needs to be promoted step by step, invasive changes are dangerous. Combo the different DevOps services, tools and plugins to implementing DevOps orchestration is very complex, and it should resolve many challenges like deliver data between jobs, or resolve environment consistency for tools or plugins.

HTTPretty - HTTP client mocking tool for Python, it's like ruby's FakeWeb for python

  •    Python

Due to big API incompatibility between python 3.3, 3.4 and 3.5, the author of HTTPretty is not supporting python3 officially. You will notice that the travis build for python 3 might be broken, and while pull requests fixing py3 support are most welcome, it is still not official at least for now. Since you are interested in HTTPretty you should also be interested in speeding up your build. Replace pip with curdling and see your build running a lot faster.

aws-health-tools - The samples provided in AWS Health Tools can help users to build automation and customized alerting in response to AWS Health events

  •    Javascript

The samples provided in AWS Health Tools can help you build automation and customized alerts in response to AWS Health events.AWS Health provides ongoing visibility into the state of your AWS resources, services, and accounts. The service gives you awareness and remediation guidance for resource performance or availability issues that may affect your applications that run on AWS. AWS Health provides relevant and timely information to help you manage events in progress, as well as be aware of and prepare for planned activities. The service delivers alerts and notifications triggered by changes in the health of AWS resources, so you get near-instant event visibility and guidance to help accelerate troubleshooting.

xUnitFor1C - Unit testing tools for 1C:Enterprise 8 platform (http://v8.1c.ru)

  •    1C

xUnitFor1C is a set of testing tools for 1C:Enterprise 8 platform (http://v8.1c.ru). xUnitFor1C - простой и мощный фреймворк для тестирования в 1С.

terraboard - :earth_africa: :clipboard: A web dashboard to inspect Terraform States

  •    Go

It currently only supports S3 as a remote state backend, and dynamoDB for retrieving lock informations. The overview presents all the state files in the S3 bucket, by most recent modification date.

habitus - A Build Flow Tool for Docker

  •    Go

Habitus adds workflows to Docker build. This means you can create a chain of builds to generate your final Docker image based on a workflow. This is particularly useful if your code is in compiled languages like Java or Go or if you need to use secrets like SSH keys during the build.Habitus is a standalone build flow tool for Docker. It’s a command line tool that builds Docker images based on their Dockerfile and a build.yml.