From Fedora Project Wiki

< CI

No edit summary
Line 82: Line 82:


This command will run all tests in Docker container. And the result will be: <br/>
This command will run all tests in Docker container. And the result will be: <br/>
==='''Run Atomic Host tests'''===
To run tests in Docker container we need to export environment variables in the first place:
<pre>
# export ANSIBLE_INVENTORY=$(test -e inventory && echo inventory || echo /usr/share/ansible/inventory)
# curl -Lo atomic.qcow2 https://ftp-stud.hs-esslingen.de/pub/Mirrors/alt.fedoraproject.org/atomic/stable/Fedora-Atomic-26-20170707.1/CloudImages/x86_64/images/Fedora-Atomic-26-20170707.1.x86_64.qcow2
# export TEST_SUBJECTS=$PWD/atomic.qcow2
</pre>
Let's check that all variables were setup.<br/>
Execute command:<br/>
<pre>
printenv | grep -E "ANSIBLE_INVENTORY|TEST_SUBJECTS"
</pre>
The output should be:<br/>
[[File:Selection 005.png|frame|left|Environment variables]] <br/>
<br/><br/><br/><br/><br/><br/>
Now we are ready for running tests in Atomic Host VM.
Execute command:
<pre>
# ansible-playbook --tags=atomic tests.yml
</pre>
This command will run all tests on Atomic Host VM. And the result will be: <br/>

Revision as of 11:08, 27 November 2017



Preconditions

To start working with a test you need Fedora installed on your PC or VM.

Change user to root:

$ sudo -s

Install necessary packages:

# dnf install git
# dnf install ansible python2-dnf libselinux-python standard-test-roles


Get tests

Navigate to the https://upstreamfirst.fedorainfracloud.org/ and choose any package you like to run.

For example elfutils

Navigate to the page with tests: https://upstreamfirst.fedorainfracloud.org/elfutils

Copy Source GIT URL

Source GIT URL

Navigate to you VM or laptop command line and clone this package:

# git clone https://upstreamfirst.fedorainfracloud.org/elfutils.git
# cd elfutils

Check tags that you have. Execute command:

# ansible-playbook --list-tags tests.yml

The output will be something like tis:

List of tags















It means that we have container, atomic, classic tags So we can run our tests for each of them.

Run classic (local) tests

Now we are ready for running tests on our laptop. Execute command:

# ansible-playbook --tags=classic tests.yml

This command will run all package's tests. And the result will be:

Classic tests result























Run Container (docker) tests

To run tests in Docker container we need to export environment variables in the first place:

# export ANSIBLE_INVENTORY=$(test -e inventory && echo inventory || echo /usr/share/ansible/inventory)
# export TEST_SUBJECTS=docker:docker.io/library/fedora:26

Let's check that all variables were setup.
Execute command:

printenv | grep -E "ANSIBLE_INVENTORY|TEST_SUBJECTS"

The output should be:

Environment variables








Now we are ready for running tests in Docker container. Execute command:

# ansible-playbook --tags=container tests.yml

This command will run all tests in Docker container. And the result will be:

Run Atomic Host tests

To run tests in Docker container we need to export environment variables in the first place:

# export ANSIBLE_INVENTORY=$(test -e inventory && echo inventory || echo /usr/share/ansible/inventory)
# curl -Lo atomic.qcow2 https://ftp-stud.hs-esslingen.de/pub/Mirrors/alt.fedoraproject.org/atomic/stable/Fedora-Atomic-26-20170707.1/CloudImages/x86_64/images/Fedora-Atomic-26-20170707.1.x86_64.qcow2
# export TEST_SUBJECTS=$PWD/atomic.qcow2

Let's check that all variables were setup.
Execute command:

printenv | grep -E "ANSIBLE_INVENTORY|TEST_SUBJECTS"

The output should be:

Environment variables








Now we are ready for running tests in Atomic Host VM. Execute command:

# ansible-playbook --tags=atomic tests.yml

This command will run all tests on Atomic Host VM. And the result will be: