snf-burnin is an integration testing tool for a running Synnefo deployment. It uses the Synnefo REST APIs to run test scenarios for the following categories:
Example:
snf-burnin --token=TOKEN \
--api=CYCLADES_BASE_URL
--pithos=PITHOS_BASE_URL \
--astakos=ASTAKOS_BASE_URL \
--plankton=PLANKTON_URL \
--plankton-user=PLANKTON_SYSTEM_USER \
--image-id=IMAGE_ID \
--log-folder=LOG_FOLDER
For more info
snf-burnin --help
Options:
-h, --help show this help message and exit
--api=API The API URI to use to reach the Synnefo API
--plankton=PLANKTON The API URI to use to reach the Plankton API
--plankton-user=PLANKTON_USER
Owner of system images
--pithos=PITHOS The API URI to use to reach the Pithos API
--astakos=ASTAKOS The API URI to use to reach the Astakos API
--token=TOKEN The token to use for authentication to the API
--nofailfast Do not fail immediately if one of the tests fails
(EXPERIMENTAL)
--no-ipv6 Disables ipv6 related tests
--action-timeout=TIMEOUT
Wait SECONDS seconds for a server action to complete,
then the test is considered failed
--build-warning=TIMEOUT
Warn if TIMEOUT seconds have passed and a build
operation is still pending
--build-fail=BUILD_TIMEOUT
Fail the test if TIMEOUT seconds have passed and a
build operation is still incomplete
--query-interval=INTERVAL
Query server status when requests are pending every
INTERVAL seconds
--fanout=COUNT Spawn up to COUNT child processes to execute in
parallel, essentially have up to COUNT server build
requests outstanding (EXPERIMENTAL)
--force-flavor=FLAVOR ID
Force all server creations to use the specified FLAVOR
ID instead of a randomly chosen one, useful if disk
space is scarce
--image-id=IMAGE ID Test the specified image id, use 'all' to test all
available images (mandatory argument)
--show-stale Show stale servers from previous runs, whose name
starts with `snf-test-'
--delete-stale Delete stale servers from previous runs, whose name
starts with `snf-test-'
--force-personality=PERSONALITY_PATH
Force a personality file injection.
File path required.
--log-folder=LOG_FOLDER
Define the absolute path where the output
log is stored.
-V, --verbose Print detailed output about multiple processes
spawning
--set-tests=TESTS Set comma seperated tests for this run.
Available tests: auth, images, flavors,
servers, server_spawn,
network_spawn, pithos.
Default = all
In each run, snf-burnin stores log files in the folder defined in the –log-foler parameter, under the folder with the timestamp of the snf-burnin-run and the image used for it. The name prefixes of the log files are:
Under /snf-tools/conf you can find example scripts for automating snf-burnin testing using cron.