freezer-api/devstack
caihui c87d9cb29d Fix devstack install error
With the removal of screen support,tail_log is deprecated and removed after Queens.

Change-Id: Ia0dadd6cb403e98c988c99935d32804df9b7ed59
2020-11-26 23:47:46 -08:00
..
files Configure dsvm gate job to use uwsgi instead of apache2 2017-06-06 16:24:05 +01:00
lib Fix devstack install error 2020-11-26 23:47:46 -08:00
gate_hook.sh Configure gate jobs to collect the correct logs 2018-02-19 10:26:56 +00:00
local.conf.example This is incorrect url in example doc and conf 2016-03-24 15:04:04 +00:00
plugin.sh Refactoring dsvm gate job 2016-10-21 10:55:54 +00:00
README.rst Add Devstack installation guide in README.rst 2020-07-08 00:19:03 -07:00
settings Remove use of unsupported TEMPEST_SERVICES variable 2018-01-23 16:43:53 +03:00

This directory contains the Freezer-API DevStack plugin.

To configure the Freezer API with DevStack, you will need to enable this plugin by adding one line to the local section of your local.conf file.

To enable the plugin, add a line of the form:

enable_plugin freezer-api <GITURL> [GITREF]

where:

<GITURL> is the URL of a freezer-api repository
[GITREF] is an optional git ref (branch/ref/tag).  The default is master.

For example:

enable_plugin freezer-api https://git.openstack.org/openstack/freezer-api master

The plugin makes use of apache2 by default. To use the uwsgi server set the following environment variable:

export FREEZER_API_SERVER_TYPE=uwsgi

The default port is 9090. To configure the api to listen on a different port set the variable FREEZER_API_PORT. For example to make use of port 19090 use:

export FREEZER_API_PORT=19090

The plugin makes use of elasticsearch as db backend by default. To use the sqlachemy set the following environment variable:

export FREEZER_BACKEND='sqlalchemy'

Running Freezer tempest tests

Install DevStack step by step =============================

  1. Download DevStack:

    git clone https://git.openstack.org/openstack-dev/devstack.git
    cd devstack
  2. Add stack user and change devstack directory user group:

    ./create_stack_user.sh
    
    chown -R stack ./devstack/
    chown -R stack.stack ./devstack/
  3. Add this repo as an external repository.This is a sample local.conf file for freezer developer:

    [[local|localrc]]
    ADMIN_PASSWORD=stack
    DATABASE_PASSWORD=stack
    RABBIT_PASSWORD=stack
    SERVICE_PASSWORD=$ADMIN_PASSWORD
    
    DEST=/opt/stack
    LOGFILE=$DEST/logs/stack.sh.log
    
    # only install keystone/horizon/swift in devstack
    # disable_all_services
    # enable_service key mysql s-proxy s-object s-container s-account horizon
    
    enable_plugin freezer http://git.openstack.org/openstack/freezer master
    enable_plugin freezer-api http://git.openstack.org/openstack/freezer-api.git master
    enable_plugin freezer-tempest-plugin http://git.openstack.org/openstack/freezer-tempest-plugin.git master
    enable_plugin freezer-web-ui http://git.openstack.org/openstack/freezer-web-ui.git master
    
    export FREEZER_BACKEND='sqlalchemy'
  4. Use stack user to run stack.sh:

    su stack
    ./stack.sh

5.You can source openrc in your shell, and then use the openstack command line tool to manage your devstack.:

souce  /opt/stack/devstack/openrc  admin admin

Running Freezer tempest tests

  1. Listing Freezer tempest tests:

    tempest list-plugins
  2. Config the "tempest.conf" file:

    cd /opt/stack/tempest
    tox -e genconfig
    cd /opt/stack/tempest/etc
    cp tempest.conf.sample tempest.conf
  3. This is a sample "tempest.conf" file:

    [auth]
    admin_username = admin
    admin_project_name = admin
    admin_password = stack
    admin_domain_name = Default
    [identity]
    uri_v3 = http://172.16.1.108/identity/v3
  4. Running freezer tempest tests:

    cd /opt/stack/tempest
    tempest run -r freezer_tempest_plugin
  5. Running one tempest test case:

    cd /opt/stack/tempest
    tempest run  -r  freezer_tempest_plugin.tests.freezer_api.api.test_api_jobs.TestFreezerApiJobs.test_api_jobs_post
For more information, see:

https://docs.openstack.org/devstack/latest/index.html https://docs.openstack.org/tempest/latest/