From deb45e79ca86fbf76761adca5c0a87042168c478 Mon Sep 17 00:00:00 2001 From: Tomas Strachota Date: Fri, 2 Sep 2011 13:24:08 +0200 Subject: [PATCH] scripts for filling katello with test data --- scripts/test/fill_katello.sh | 48 +++++++++++++++++++++++++++ scripts/test/test_data/a.sh | 34 +++++++++++++++++++ scripts/test/test_data/changeset_a.sh | 22 ++++++++++++ scripts/test/test_data/demo.sh | 25 ++++++++++++++ scripts/test/test_data/dummy_repo.sh | 21 ++++++++++++ scripts/test/test_data/sync_repos.sh | 12 +++++++ scripts/test/test_data/tpl_a.sh | 14 ++++++++ 7 files changed, 176 insertions(+) create mode 100755 scripts/test/fill_katello.sh create mode 100644 scripts/test/test_data/a.sh create mode 100644 scripts/test/test_data/changeset_a.sh create mode 100644 scripts/test/test_data/demo.sh create mode 100644 scripts/test/test_data/dummy_repo.sh create mode 100644 scripts/test/test_data/sync_repos.sh create mode 100644 scripts/test/test_data/tpl_a.sh diff --git a/scripts/test/fill_katello.sh b/scripts/test/fill_katello.sh new file mode 100755 index 00000000000..e0495e725d9 --- /dev/null +++ b/scripts/test/fill_katello.sh @@ -0,0 +1,48 @@ +#!/bin/sh + +script_dir_link=$(dirname "$(readlink "$0")") +if [[ $script_dir_link == "." ]]; then + script_dir=$(dirname "$0") +else + script_dir=$script_dir_link +fi + +export PYTHONPATH=$script_dir/../../cli/src + +KAT=$script_dir/../../cli/bin/katello +DATA_DIR=$script_dir/test_data +KAT_USER="admin" +KAT_PASSWORD="admin" +CMD="$KAT -u $KAT_USER -p $KAT_PASSWORD" + + + +if [ "$1" == "-l" ]; then + printf "Available test data sets:\n" + echo "--------------------------------------------------" + + cd $DATA_DIR + for f in *; do + printf " - %s:\n" ${f%.sh} + + cnt=`. ./$f -i | wc -l` + i=1 + while [ $i -le $cnt ]; do + printf " " + . ./$f -i | head -n $i | tail -n 1 + let i++ + done + printf "\n" + done + cd - > /dev/null + + echo "--------------------------------------------------" + printf "usage: kat-fill \n" + exit +fi + + +for i in $*; do + printf "Filling Katello with test data set [ $i ] ...\n" + . $DATA_DIR/$i.sh +done \ No newline at end of file diff --git a/scripts/test/test_data/a.sh b/scripts/test/test_data/a.sh new file mode 100644 index 00000000000..415065ba782 --- /dev/null +++ b/scripts/test/test_data/a.sh @@ -0,0 +1,34 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "test data for ACME_Corporation" + echo "environments: Locker > env_1 > env_2" + echo "providers: prov_a1, prov_a2 (2 products each)" + echo "products: prod_a1, prov_a2 (2 repos each), prod_a3, prod_a4" + echo "repos: lzap's fake repos, tstrachota's zoo repos" + return +fi + + + + +$CMD environment create --name="env_1" --org="ACME_Corporation" --prior="Locker" +$CMD environment create --name="env_2" --org="ACME_Corporation" --prior="env_1" + +$CMD provider create --name="prov_a1" --org="ACME_Corporation" --type="custom" +$CMD provider create --name="prov_a2" --org="ACME_Corporation" --type="custom" + +$CMD product create --name="prod_a1" --provider="prov_a1" --org="ACME_Corporation" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --assumeyes +$CMD product create --name="prod_a2" --provider="prov_a1" --org="ACME_Corporation" --url="http://lzap.fedorapeople.org/fakerepos/" --assumeyes +#$CMD product create --name="prod_a3" --provider="prov_a2" --org="ACME_Corporation" +#$CMD product create --name="prod_a4" --provider="prov_a2" --org="ACME_Corporation" + +# $CMD repo create --org="ACME_Corporation" --product="prod_a1" --url="http://lzap.fedorapeople.org/fakerepos/" --name="repo_fake_a1" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a1" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --name="repo_zoo_a1" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a2" --url="http://lzap.fedorapeople.org/fakerepos/" --name="repo_fake_a2" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a2" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --name="repo_zoo_a2" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a3" --url="http://lzap.fedorapeople.org/fakerepos/" --name="repo_fake_a3" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a3" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --name="repo_zoo_a3" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a4" --url="http://lzap.fedorapeople.org/fakerepos/" --name="repo_fake_a4" --assumeyes +# $CMD repo create --org="ACME_Corporation" --product="prod_a4" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --name="repo_zoo_a4" --assumeyes + + diff --git a/scripts/test/test_data/changeset_a.sh b/scripts/test/test_data/changeset_a.sh new file mode 100644 index 00000000000..9dea3e41541 --- /dev/null +++ b/scripts/test/test_data/changeset_a.sh @@ -0,0 +1,22 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "test data for ACME_Corporation, changeset for env_1" + return +fi + + +$CMD changeset create --env="env_1" --org="ACME_Corporation" --name="TMP" +$CMD changeset update --env="env_1" --org="ACME_Corporation" --name="TMP" --add_product="prod_a1" +$CMD changeset promote --env="env_1" --org="ACME_Corporation" --name="TMP" + +$CMD changeset create --env="env_1" --org="ACME_Corporation" --name="XXX" +$CMD changeset update --env="env_1" --org="ACME_Corporation" --name="XXX" --from_product="prod_a1" --add_package="cheetah" +$CMD changeset update --env="env_1" --org="ACME_Corporation" --name="XXX" --from_product="prod_a1" --add_repo="repo_zoo_a1_dummy_repos_zoo" +$CMD changeset update --env="env_1" --org="ACME_Corporation" --name="XXX" --from_product="prod_a1" --add_erratum="RHEA-2010:9999" + + +$CMD changeset create --env="env_1" --org="ACME_Corporation" --name="YYY" +# $CMD changeset update --env="env_1" --org="ACME_Corporation" --name="YYY" --add_product="prod_a1" --from_product="prod_a1" --add_package="cheetah" --add_repo="repo_zoo_a1_dummy_repos_zoo" --add_erratum="RHEA-2010:9999" + +$CMD changeset create --env="env_1" --org="ACME_Corporation" --name="ZZZ" +# $CMD changeset update --env="env_1" --org="ACME_Corporation" --name="ZZZ" --add_package="cheetah" --add_repo="repo_zoo_a1_dummy_repos_zoo" --add_erratum="RHEA-2010:9999" \ No newline at end of file diff --git a/scripts/test/test_data/demo.sh b/scripts/test/test_data/demo.sh new file mode 100644 index 00000000000..e44e8f04a2b --- /dev/null +++ b/scripts/test/test_data/demo.sh @@ -0,0 +1,25 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "test data for ACME_Corporation" + echo "environments: Locker > dev > prod" + echo "providers: redhat, porkchop" + echo "products: fedora, zoo, fake" + echo "repos: lzap's fake repos, tstrachota's dummy repos" + return +fi + + + + +$CMD environment create --name="dev" --org="ACME_Corporation" --prior="Locker" +$CMD environment create --name="prod" --org="ACME_Corporation" --prior="dev" + + +$CMD product create --name="zoo" --provider="porkchop" --org="ACME_Corporation" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --assumeyes +$CMD product create --name="fake" --provider="porkchop" --org="ACME_Corporation" --url="http://lzap.fedorapeople.org/fakerepos/fewupdates/" --assumeyes +$CMD product create --name="candlepin" --provider="porkchop" --org="ACME_Corporation" --url="http://repos.fedorapeople.org/repos/candlepin/candlepin/fedora-15/" --assumeyes + + +#(+) [1] http://repos.fedorapeople.org/repos/candlepin/candlepin/fedora-15/x86_64 +#(+) [2] http://repos.fedorapeople.org/repos/candlepin/candlepin/fedora-15/SRPMS +#(+) [3] http://repos.fedorapeople.org/repos/candlepin/candlepin/fedora-15/i386 diff --git a/scripts/test/test_data/dummy_repo.sh b/scripts/test/test_data/dummy_repo.sh new file mode 100644 index 00000000000..887a4154cd6 --- /dev/null +++ b/scripts/test/test_data/dummy_repo.sh @@ -0,0 +1,21 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "test data for ACME_Corporation" + echo "environments: Locker" + echo "providers: prov_a1" + echo "products: prod_a1" + echo "repos: tstrachota's dummy repo" + return +fi + +PROD_NAME="dummy_prod" +PROV_NAME="dummy_prov" +$CMD provider create --name="$PROV_NAME" --org="ACME_Corporation" --type="custom" + +$CMD product create --name="$PROD_NAME" --provider="$PROV_NAME" --org="ACME_Corporation" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --assumeyes + +#$CMD repo create --org="ACME_Corporation" --product="prod_a1" --url="http://lzap.fedorapeople.org/fakerepos/" --name="repo_fake_a1" --assumeyes +#$CMD repo create --org="ACME_Corporation" --product="prod_a1" --url="http://tstrachota.fedorapeople.org/dummy_repos/" --name="repo_zoo_a1" --assumeyes + + + diff --git a/scripts/test/test_data/sync_repos.sh b/scripts/test/test_data/sync_repos.sh new file mode 100644 index 00000000000..c237e782191 --- /dev/null +++ b/scripts/test/test_data/sync_repos.sh @@ -0,0 +1,12 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "synchronizes all repositories in ACME_Corporation" + return +fi + +#sync all added repositories +for id in `$CMD repo list --org ACME_Corporation | tail -n +6 | awk '{print $1}'`; do + $CMD repo synchronize --id $id +done + + diff --git a/scripts/test/test_data/tpl_a.sh b/scripts/test/test_data/tpl_a.sh new file mode 100644 index 00000000000..a6b2344c7f0 --- /dev/null +++ b/scripts/test/test_data/tpl_a.sh @@ -0,0 +1,14 @@ +#!/bin/bash +if [ $1 = "-i" ]; then + echo "(requires data set \"a\")" + echo "template test data for ACME_Corporation, 1 template with 2 products" + return +fi + + +$CMD template create --name="tpl_a1" --description="template in ACME_Corporation in a locker" --org="ACME_Corporation" +$CMD template update_content --name="tpl_a1" --org="ACME_Corporation" --add_product --product="prod_a1" +$CMD template update_content --name="tpl_a1" --org="ACME_Corporation" --add_product --product="prod_a2" + + +