Skip to content

Commit

Permalink
Include xrally-docker 1.0.0
Browse files Browse the repository at this point in the history
We finally released a first version of xrally-docker! Let's include it
in our plugins references.

Also, this patch fixes an issue with parsing README in Markdown format
(we need to remove redundant indentation in both cases rst/md).
  • Loading branch information
andreykurilin committed Jun 1, 2018
1 parent 550c38c commit 3eb63ec
Show file tree
Hide file tree
Showing 8 changed files with 6,573 additions and 5,629 deletions.
22 changes: 22 additions & 0 deletions docs/plugins/docker/changelog.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
# Changelog

<!--
Changelogs are for humans, not machines. The end users of Rally project are
human beings who care about what's is changing, why and how it affects them.
Please leave these notes as much as possible human oriented.
Each release can use the next sections:
- **Added** for new features.
- **Changed** for changes in existing functionality.
- **Deprecated** for soon-to-be removed features/plugins.
- **Removed** for now removed features/plugins.
- **Fixed** for any bug fixes.
Release notes for existing releases are MUTABLE! If there is something that
was missed or can be improved, feel free to change it!
-->

## [1.0.0] - 2018-05-31

The start. Initial release. Have fun! ;)
17 changes: 17 additions & 0 deletions docs/plugins/docker/options.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Available configuration options

## [docker]

```
# Number of cleanup threads to run
# (integer value)
# Deprecated group/name - cleanup/cleanup_threads
#cleanup_threads = 20
```

```
# A timeout in seconds for deleting resources
# (integer value)
# Deprecated group/name - cleanup/resource_deletion_timeout
#resource_deletion_timeout = 600
```
97 changes: 92 additions & 5 deletions docs/plugins/docker/overview.md
Original file line number Diff line number Diff line change
@@ -1,13 +1,100 @@
# Docker

__Relevant release__: 1.0.0

__Repository__: <https://github.com/xrally/xrally-docker>

!!! note
__License__: Apache License, Version 2.0

__Author__: Andrey Kurilin

xRally plugins for [Docker engine](https://www.docker.com).

## What is it?!

Originally, it was created as a quick proof-of-concept to show ability of
[Rally](https://github.com/openstack/rally) to test platforms other than
[OpenStack](https://www.openstack.org/). After the first preview,
it became obvious that it should be developed as a complete package.

__xrally_docker__ is a pack of xRally plugins for execution different workloads
at the top of Docker Engine. Such workloads can be used as like for testing
environments with Docker or testing behaviour of specified docker image.

## How to use?!

### Install package

__xrally_docker__ package is configured to be auto-discovered by Rally. Since
rally package is a dependency of __xrally_docker__ , so to start using
__xrally_docker__ you need to install just one package:

```commandline
pip install xrally_docker
```

### Specify entry-point of docker engine to use

The next step is to specify entry-point to docker, i.e. create rally
environment. There are 2 way to do it:

1. Specify environment specification manually. For a simple case (no cert,
tls, etc), it looks like ``{"docker@existing": {}}``.
2. Create environment specification from system environment variables
(supported by Rally >= 0.11.2) using
``rally env create --name example --from-sysenv`` command. An expected
system variables are the same as native docker client supports.

### Check that Rally can access the docker

First of all try to execute ``rally env check`` command. It checks all
platforms of the environment to be available. If it does not show any errors
for communicating with docker, go and execute any task against docker.
If is fails, try to execute the command again with ``--detailed`` flag.

Also, you can use ``rally env info`` command for the same purpose. Unlike
``rally env check`` it will not only check the platforms, but print some
information about them. In case of docker platform, it will print the similar
to ``docker --version`` data.

### Execute a workload against docker

Here is a simple workload:

```yaml

---
version: 2
title: Simple task with only one workload
subtasks:
-
title: a subtask with one workload
description: This workload should run a container from "ubuntu"
image and execute simple command.
scenario:
Docker.run_container:
image_name: "ubuntu"
command: "echo 'Hello world!'"
runner:
constant:
times: 10
concurrency: 2
sla:
failure_rate:
max: 0
```

This package is under active development and has not been released yet.
This task will download _ubuntu_ image first, if it does not present in the
system. Then, it will run 10 containers from the image with 2 concurrency and
execute a simple command. The output of the command will be saved as
TextArea and will be available via json and html reports.

Follow the repository on GitHub to do not miss any updates.
See plugin references for the full list of available plugins for docker
platform to combine workloads.

## Description
## Known issues

A set of xRally plugins to run workloads against Docker platform.
This package works fine, but you need to install the proper version of Docker
client which suits your Docker API version.

0 comments on commit 3eb63ec

Please sign in to comment.