hammer_cli_csv 0.0.1
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +15 -0
- data/lib/hammer_cli_csv.rb +48 -0
- data/lib/hammer_cli_csv/activation_keys.rb +170 -0
- data/lib/hammer_cli_csv/architectures.rb +95 -0
- data/lib/hammer_cli_csv/base.rb +706 -0
- data/lib/hammer_cli_csv/compute_profiles.rb +94 -0
- data/lib/hammer_cli_csv/compute_resources.rb +92 -0
- data/lib/hammer_cli_csv/content_hosts.rb +357 -0
- data/lib/hammer_cli_csv/content_view_filters.rb +158 -0
- data/lib/hammer_cli_csv/content_views.rb +86 -0
- data/lib/hammer_cli_csv/csv.rb +23 -0
- data/lib/hammer_cli_csv/domains.rb +103 -0
- data/lib/hammer_cli_csv/exception_handler.rb +53 -0
- data/lib/hammer_cli_csv/host_collections.rb +108 -0
- data/lib/hammer_cli_csv/hosts.rb +118 -0
- data/lib/hammer_cli_csv/import.rb +82 -0
- data/lib/hammer_cli_csv/installation_medias.rb +88 -0
- data/lib/hammer_cli_csv/lifecycle_environments.rb +116 -0
- data/lib/hammer_cli_csv/locations.rb +84 -0
- data/lib/hammer_cli_csv/operating_systems.rb +95 -0
- data/lib/hammer_cli_csv/organizations.rb +107 -0
- data/lib/hammer_cli_csv/partition_tables.rb +98 -0
- data/lib/hammer_cli_csv/products.rb +179 -0
- data/lib/hammer_cli_csv/provisioning_templates.rb +96 -0
- data/lib/hammer_cli_csv/puppet_environments.rb +105 -0
- data/lib/hammer_cli_csv/puppet_facts.rb +99 -0
- data/lib/hammer_cli_csv/puppet_reports.rb +244 -0
- data/lib/hammer_cli_csv/reports.rb +91 -0
- data/lib/hammer_cli_csv/roles.rb +115 -0
- data/lib/hammer_cli_csv/smart_proxies.rb +88 -0
- data/lib/hammer_cli_csv/subnets.rb +121 -0
- data/lib/hammer_cli_csv/subscriptions.rb +135 -0
- data/lib/hammer_cli_csv/users.rb +133 -0
- data/lib/hammer_cli_csv/version.rb +16 -0
- data/test/activation_keys_test.rb +17 -0
- data/test/apipie_resource_mock.rb +77 -0
- data/test/config.template.yml +17 -0
- data/test/csv_test_helper.rb +65 -0
- data/test/data/activation-keys.csv +119 -0
- data/test/data/architectures.csv +5 -0
- data/test/data/content-hosts.csv +4 -0
- data/test/data/content-view-filters.csv +2 -0
- data/test/data/content-views.csv +6 -0
- data/test/data/domains.csv +8 -0
- data/test/data/host-collections.csv +16 -0
- data/test/data/hosts.csv +12 -0
- data/test/data/installation-medias.csv +7 -0
- data/test/data/lifecycle-environments.csv +6 -0
- data/test/data/locations.csv +10 -0
- data/test/data/operating-systems.csv +16 -0
- data/test/data/organizations.csv +5 -0
- data/test/data/partition-tables.csv +187 -0
- data/test/data/products.csv +19 -0
- data/test/data/puppet-environments.csv +6 -0
- data/test/data/puppet-facts.csv +9 -0
- data/test/data/reports.csv +4 -0
- data/test/data/roles.csv +159 -0
- data/test/data/smart-proxies.csv +2 -0
- data/test/data/subscriptions.csv +19 -0
- data/test/data/users.csv +119 -0
- data/test/helpers/command.rb +67 -0
- data/test/helpers/resource_disabled.rb +69 -0
- data/test/hosts_test.rb +47 -0
- data/test/organizations_test.rb +74 -0
- data/test/roles_test.rb +39 -0
- data/test/setup_test.rb +164 -0
- data/test/systems_test.rb +71 -0
- data/test/users_test.rb +35 -0
- metadata +174 -0
@@ -0,0 +1,19 @@
|
|
1
|
+
Name,Count,Organization,Manifest File,Content Set,Arch,Release
|
2
|
+
MegaCorp,1,Mega Corporation,~/Downloads/megacorp.zip,
|
3
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6Server
|
4
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6.1
|
5
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6.2
|
6
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6.3
|
7
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6.4
|
8
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (RPMs),x86_64,6.5
|
9
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6Server
|
10
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6.1
|
11
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6.2
|
12
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6.3
|
13
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6.4
|
14
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 6 Server (Kickstart),x86_64,6.5
|
15
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 7 Server (RPMs),x86_64,7Server
|
16
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 7 Server (RPMs),x86_64,7.0
|
17
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 7 Server (Kickstart),x86_64,7.0
|
18
|
+
Red Hat Enterprise Linux Server,1,Mega Corporation,,Red Hat Enterprise Linux 7 Server (Kickstart),x86_64,7Server
|
19
|
+
|
data/test/data/users.csv
ADDED
@@ -0,0 +1,119 @@
|
|
1
|
+
Name,Count,First Name,Last Name,Email,Organizations,Locations,Roles
|
2
|
+
annamae.audie@megacorp.com,1,Annamae,Audie,annamae.audie@megacorp.com,Mega Corporation,,"Mega Corporation Admin,annamaeaudie"
|
3
|
+
aron.askew@megacorp.com,1,Aron,Askew,aron.askew@megacorp.com,Mega Corporation,,aronaskew
|
4
|
+
ashton.aumann@megacorp.com,1,Ashton,Aumann,ashton.aumann@megacorp.com,Mega Corporation,,ashtonaumann
|
5
|
+
ayako.alday@megacorp.com,1,Ayako,Alday,ayako.alday@megacorp.com,Mega Corporation,,ayakoalday
|
6
|
+
bambi.bivona@megacorp.com,1,Bambi,Bivona,bambi.bivona@megacorp.com,Mega Corporation,,bambibivona
|
7
|
+
bernard.bigler@megacorp.com,1,Bernard,Bigler,bernard.bigler@megacorp.com,Mega Corporation,,"Mega Corporation Admin,bernardbigler"
|
8
|
+
bettina.budniewski@megacorp.com,1,Bettina,Budniewski,bettina.budniewski@megacorp.com,Mega Corporation,,bettinabudniewski
|
9
|
+
boyd.buckle@megacorp.com,1,Boyd,Buckle,boyd.buckle@megacorp.com,Mega Corporation,,boydbuckle
|
10
|
+
bruce.butterworth@megacorp.com,1,Bruce,Butterworth,bruce.butterworth@megacorp.com,Mega Corporation,,brucebutterworth
|
11
|
+
carolann.corbo@megacorp.com,1,Carolann,Corbo,carolann.corbo@megacorp.com,Mega Corporation,,carolanncorbo
|
12
|
+
caroll.colquitt@megacorp.com,1,Caroll,Colquitt,caroll.colquitt@megacorp.com,Mega Corporation,,carollcolquitt
|
13
|
+
chaya.cordova@megacorp.com,1,Chaya,Cordova,chaya.cordova@megacorp.com,Mega Corporation,,chayacordova
|
14
|
+
chelsea.calaway@megacorp.com,1,Chelsea,Calaway,chelsea.calaway@megacorp.com,Mega Corporation,,chelseacalaway
|
15
|
+
cinthia.cadieux@megacorp.com,1,Cinthia,Cadieux,cinthia.cadieux@megacorp.com,Mega Corporation,,cinthiacadieux
|
16
|
+
coralee.culbert@megacorp.com,1,Coralee,Culbert,coralee.culbert@megacorp.com,Mega Corporation,,coraleeculbert
|
17
|
+
damon.dials@megacorp.com,1,Damon,Dials,damon.dials@megacorp.com,Mega Corporation,,damondials
|
18
|
+
danae.drayer@megacorp.com,1,Danae,Drayer,danae.drayer@megacorp.com,Mega Corporation,,danaedrayer
|
19
|
+
danette.dewitt@megacorp.com,1,Danette,Dewitt,danette.dewitt@megacorp.com,Mega Corporation,,danettedewitt
|
20
|
+
danilo.dilbeck@megacorp.com,1,Danilo,Dilbeck,danilo.dilbeck@megacorp.com,Mega Corporation,,danilodilbeck
|
21
|
+
debby.dupuy@megacorp.com,1,Debby,Dupuy,debby.dupuy@megacorp.com,Mega Corporation,,debbydupuy
|
22
|
+
delcie.diez@megacorp.com,1,Delcie,Diez,delcie.diez@megacorp.com,Mega Corporation,,delciediez
|
23
|
+
denna.debartolo@megacorp.com,1,Denna,Debartolo,denna.debartolo@megacorp.com,Mega Corporation,,dennadebartolo
|
24
|
+
diedra.darrow@megacorp.com,1,Diedra,Darrow,diedra.darrow@megacorp.com,Mega Corporation,,diedradarrow
|
25
|
+
dolores.delay@megacorp.com,1,Dolores,Delay,dolores.delay@megacorp.com,Mega Corporation,,doloresdelay
|
26
|
+
dominica.dubberly@megacorp.com,1,Dominica,Dubberly,dominica.dubberly@megacorp.com,Mega Corporation,,dominicadubberly
|
27
|
+
eartha.edie@megacorp.com,1,Eartha,Edie,eartha.edie@megacorp.com,Mega Corporation,,earthaedie
|
28
|
+
edda.elam@megacorp.com,1,Edda,Elam,edda.elam@megacorp.com,Mega Corporation,,eddaelam
|
29
|
+
edris.ekhoff@megacorp.com,1,Edris,Ekhoff,edris.ekhoff@megacorp.com,Mega Corporation,,edrisekhoff
|
30
|
+
elden.easley@megacorp.com,1,Elden,Easley,elden.easley@megacorp.com,Mega Corporation,,eldeneasley
|
31
|
+
elena.eisert@megacorp.com,1,Elena,Eisert,elena.eisert@megacorp.com,Mega Corporation,,elenaeisert
|
32
|
+
elnora.efaw@megacorp.com,1,Elnora,Efaw,elnora.efaw@megacorp.com,Mega Corporation,,elnoraefaw
|
33
|
+
evelina.elders@megacorp.com,1,Evelina,Elders,evelina.elders@megacorp.com,Mega Corporation,,evelinaelders
|
34
|
+
evita.epting@megacorp.com,1,Evita,Epting,evita.epting@megacorp.com,Mega Corporation,,evitaepting
|
35
|
+
fausto.fortino@megacorp.com,1,Fausto,Fortino,fausto.fortino@megacorp.com,Mega Corporation,,faustofortino
|
36
|
+
georgeanna.griffiths@megacorp.com,1,Georgeanna,Griffiths,georgeanna.griffiths@megacorp.com,Mega Corporation,,georgeannagriffiths
|
37
|
+
georgine.grimmett@megacorp.com,1,Georgine,Grimmett,georgine.grimmett@megacorp.com,Mega Corporation,,georginegrimmett
|
38
|
+
gilbert.guerriero@megacorp.com,1,Gilbert,Guerriero,gilbert.guerriero@megacorp.com,Mega Corporation,,gilbertguerriero
|
39
|
+
gilda.gutirrez@megacorp.com,1,Gilda,Gutirrez,gilda.gutirrez@megacorp.com,Mega Corporation,,gildagutirrez
|
40
|
+
gregg.gault@megacorp.com,1,Gregg,Gault,gregg.gault@megacorp.com,Mega Corporation,,gregggault
|
41
|
+
guillermina.gloster@megacorp.com,1,Guillermina,Gloster,guillermina.gloster@megacorp.com,Mega Corporation,,guillerminagloster
|
42
|
+
herminia.hochmuth@megacorp.com,1,Herminia,Hochmuth,herminia.hochmuth@megacorp.com,Mega Corporation,,herminiahochmuth
|
43
|
+
hien.hamby@megacorp.com,1,Hien,Hamby,hien.hamby@megacorp.com,Mega Corporation,,hienhamby
|
44
|
+
hsiu.henningsen@megacorp.com,1,Hsiu,Henningsen,hsiu.henningsen@megacorp.com,Mega Corporation,,hsiuhenningsen
|
45
|
+
jacques.joaquin@megacorp.com,1,Jacques,Joaquin,jacques.joaquin@megacorp.com,Mega Corporation,,jacquesjoaquin
|
46
|
+
janay.johnson@megacorp.com,1,Janay,Johnson,janay.johnson@megacorp.com,Mega Corporation,,janayjohnson
|
47
|
+
jefferson.jock@megacorp.com,1,Jefferson,Jock,jefferson.jock@megacorp.com,Mega Corporation,,jeffersonjock
|
48
|
+
jenee.jahns@megacorp.com,1,Jenee,Jahns,jenee.jahns@megacorp.com,Mega Corporation,,jeneejahns
|
49
|
+
jeremy.jong@megacorp.com,1,Jeremy,Jong,jeremy.jong@megacorp.com,Mega Corporation,,jeremyjong
|
50
|
+
judith.joachim@megacorp.com,1,Judith,Joachim,judith.joachim@megacorp.com,Mega Corporation,,judithjoachim
|
51
|
+
julio.jerabek@megacorp.com,1,Julio,Jerabek,julio.jerabek@megacorp.com,Mega Corporation,,juliojerabek
|
52
|
+
kalyn.kimzey@megacorp.com,1,Kalyn,Kimzey,kalyn.kimzey@megacorp.com,Mega Corporation,,kalynkimzey
|
53
|
+
kamilah.kurland@megacorp.com,1,Kamilah,Kurland,kamilah.kurland@megacorp.com,Mega Corporation,,kamilahkurland
|
54
|
+
karlene.kirch@megacorp.com,1,Karlene,Kirch,karlene.kirch@megacorp.com,Mega Corporation,,karlenekirch
|
55
|
+
karrie.kindel@megacorp.com,1,Karrie,Kindel,karrie.kindel@megacorp.com,Mega Corporation,,karriekindel
|
56
|
+
kourtney.kyle@megacorp.com,1,Kourtney,Kyle,kourtney.kyle@megacorp.com,Mega Corporation,,kourtneykyle
|
57
|
+
kristen.kellems@megacorp.com,1,Kristen,Kellems,kristen.kellems@megacorp.com,Mega Corporation,,kristenkellems
|
58
|
+
lakeesha.loiacono@megacorp.com,1,Lakeesha,Loiacono,lakeesha.loiacono@megacorp.com,Mega Corporation,,lakeeshaloiacono
|
59
|
+
lashon.locker@megacorp.com,1,Lashon,Locker,lashon.locker@megacorp.com,Mega Corporation,,lashonlocker
|
60
|
+
le.leggett@megacorp.com,1,Le,Leggett,le.leggett@megacorp.com,Mega Corporation,,leleggett
|
61
|
+
lee.litchfield@megacorp.com,1,Lee,Litchfield,lee.litchfield@megacorp.com,Mega Corporation,,leelitchfield
|
62
|
+
leonor.limberg@megacorp.com,1,Leonor,Limberg,leonor.limberg@megacorp.com,Mega Corporation,,leonorlimberg
|
63
|
+
lien.lipscomb@megacorp.com,1,Lien,Lipscomb,lien.lipscomb@megacorp.com,Mega Corporation,,lienlipscomb
|
64
|
+
lillian.louviere@megacorp.com,1,Lillian,Louviere,lillian.louviere@megacorp.com,Mega Corporation,,lillianlouviere
|
65
|
+
luana.larson@megacorp.com,1,Luana,Larson,luana.larson@megacorp.com,Mega Corporation,,luanalarson
|
66
|
+
mac.malmberg@megacorp.com,1,Mac,Malmberg,mac.malmberg@megacorp.com,Mega Corporation,,macmalmberg
|
67
|
+
madeleine.magers@megacorp.com,1,Madeleine,Magers,madeleine.magers@megacorp.com,Mega Corporation,,madeleinemagers
|
68
|
+
mandie.mcquinn@megacorp.com,1,Mandie,Mcquinn,mandie.mcquinn@megacorp.com,Mega Corporation,,mandiemcquinn
|
69
|
+
mariella.molock@megacorp.com,1,Mariella,Molock,mariella.molock@megacorp.com,Mega Corporation,,mariellamolock
|
70
|
+
marietta.menzel@megacorp.com,1,Marietta,Menzel,marietta.menzel@megacorp.com,Mega Corporation,,mariettamenzel
|
71
|
+
marilou.mcintosh@megacorp.com,1,Marilou,Mcintosh,marilou.mcintosh@megacorp.com,Mega Corporation,,mariloumcintosh
|
72
|
+
martin.magallon@megacorp.com,1,Martin,Magallon,martin.magallon@megacorp.com,Mega Corporation,,martinmagallon
|
73
|
+
marylee.millsap@megacorp.com,1,Marylee,Millsap,marylee.millsap@megacorp.com,Mega Corporation,,maryleemillsap
|
74
|
+
melda.metheny@megacorp.com,1,Melda,Metheny,melda.metheny@megacorp.com,Mega Corporation,,meldametheny
|
75
|
+
melia.meche@megacorp.com,1,Melia,Meche,melia.meche@megacorp.com,Mega Corporation,,meliameche
|
76
|
+
merle.miceli@megacorp.com,1,Merle,Miceli,merle.miceli@megacorp.com,Mega Corporation,,merlemiceli
|
77
|
+
milford.mize@megacorp.com,1,Milford,Mize,milford.mize@megacorp.com,Mega Corporation,,milfordmize
|
78
|
+
miriam.messenger@megacorp.com,1,Miriam,Messenger,miriam.messenger@megacorp.com,Mega Corporation,,miriammessenger
|
79
|
+
monique.maly@megacorp.com,1,Monique,Maly,monique.maly@megacorp.com,Mega Corporation,,moniquemaly
|
80
|
+
moses.modisette@megacorp.com,1,Moses,Modisette,moses.modisette@megacorp.com,Mega Corporation,,mosesmodisette
|
81
|
+
myron.mclawhorn@megacorp.com,1,Myron,Mclawhorn,myron.mclawhorn@megacorp.com,Mega Corporation,,myronmclawhorn
|
82
|
+
nancie.nassar@megacorp.com,1,Nancie,Nassar,nancie.nassar@megacorp.com,Mega Corporation,,nancienassar
|
83
|
+
nannie.nobles@megacorp.com,1,Nannie,Nobles,nannie.nobles@megacorp.com,Mega Corporation,,nannienobles
|
84
|
+
nga.nordquist@megacorp.com,1,Nga,Nordquist,nga.nordquist@megacorp.com,Mega Corporation,,nganordquist
|
85
|
+
niesha.nold@megacorp.com,1,Niesha,Nold,niesha.nold@megacorp.com,Mega Corporation,,nieshanold
|
86
|
+
nydia.neil@megacorp.com,1,Nydia,Neil,nydia.neil@megacorp.com,Mega Corporation,,nydianeil
|
87
|
+
orville.oneill@megacorp.com,1,Orville,Oneill,orville.oneill@megacorp.com,Mega Corporation,,orvilleoneill
|
88
|
+
parker.paetzold@megacorp.com,1,Parker,Paetzold,parker.paetzold@megacorp.com,Mega Corporation,,parkerpaetzold
|
89
|
+
peggie.phillips@megacorp.com,1,Peggie,Phillips,peggie.phillips@megacorp.com,Mega Corporation,,peggiephillips
|
90
|
+
quiana.quesnel@megacorp.com,1,Quiana,Quesnel,quiana.quesnel@megacorp.com,Mega Corporation,,quianaquesnel
|
91
|
+
rafaela.rasco@megacorp.com,1,Rafaela,Rasco,rafaela.rasco@megacorp.com,Mega Corporation,,rafaelarasco
|
92
|
+
reinaldo.reardon@megacorp.com,1,Reinaldo,Reardon,reinaldo.reardon@megacorp.com,Mega Corporation,,reinaldoreardon
|
93
|
+
renea.rubenstein@megacorp.com,1,Renea,Rubenstein,renea.rubenstein@megacorp.com,Mega Corporation,,renearubenstein
|
94
|
+
retta.rosso@megacorp.com,1,Retta,Rosso,retta.rosso@megacorp.com,Mega Corporation,,rettarosso
|
95
|
+
robbi.rosendahl@megacorp.com,1,Robbi,Rosendahl,robbi.rosendahl@megacorp.com,Mega Corporation,,robbirosendahl
|
96
|
+
rolf.rueb@megacorp.com,1,Rolf,Rueb,rolf.rueb@megacorp.com,Mega Corporation,,rolfrueb
|
97
|
+
rory.rollinson@megacorp.com,1,Rory,Rollinson,rory.rollinson@megacorp.com,Mega Corporation,,roryrollinson
|
98
|
+
rubin.ravenscroft@megacorp.com,1,Rubin,Ravenscroft,rubin.ravenscroft@megacorp.com,Mega Corporation,,rubinravenscroft
|
99
|
+
ruby.rieser@megacorp.com,1,Ruby,Rieser,ruby.rieser@megacorp.com,Mega Corporation,,rubyrieser
|
100
|
+
shani.spinks@megacorp.com,1,Shani,Spinks,shani.spinks@megacorp.com,Mega Corporation,,shanispinks
|
101
|
+
shemika.spikes@megacorp.com,1,Shemika,Spikes,shemika.spikes@megacorp.com,Mega Corporation,,shemikaspikes
|
102
|
+
shira.sitzes@megacorp.com,1,Shira,Sitzes,shira.sitzes@megacorp.com,Mega Corporation,,shirasitzes
|
103
|
+
shirely.stowe@megacorp.com,1,Shirely,Stowe,shirely.stowe@megacorp.com,Mega Corporation,,shirelystowe
|
104
|
+
silva.sotelo@megacorp.com,1,Silva,Sotelo,silva.sotelo@megacorp.com,Mega Corporation,,silvasotelo
|
105
|
+
skye.strobl@megacorp.com,1,Skye,Strobl,skye.strobl@megacorp.com,Mega Corporation,,skyestrobl
|
106
|
+
stan.stokely@megacorp.com,1,Stan,Stokely,stan.stokely@megacorp.com,Mega Corporation,,stanstokely
|
107
|
+
starla.scheiber@megacorp.com,1,Starla,Scheiber,starla.scheiber@megacorp.com,Mega Corporation,,starlascheiber
|
108
|
+
sung.skipper@megacorp.com,1,Sung,Skipper,sung.skipper@megacorp.com,Mega Corporation,,sungskipper
|
109
|
+
tajuana.thies@megacorp.com,1,Tajuana,Thies,tajuana.thies@megacorp.com,Mega Corporation,,tajuanathies
|
110
|
+
tenisha.tinajero@megacorp.com,1,Tenisha,Tinajero,tenisha.tinajero@megacorp.com,Mega Corporation,,tenishatinajero
|
111
|
+
tessa.treiber@megacorp.com,1,Tessa,Treiber,tessa.treiber@megacorp.com,Mega Corporation,,tessatreiber
|
112
|
+
theodore.talbert@megacorp.com,1,Theodore,Talbert,theodore.talbert@megacorp.com,Mega Corporation,,theodoretalbert
|
113
|
+
tiny.tacy@megacorp.com,1,Tiny,Tacy,tiny.tacy@megacorp.com,Mega Corporation,,tinytacy
|
114
|
+
vallie.vizcaino@megacorp.com,1,Vallie,Vizcaino,vallie.vizcaino@megacorp.com,Mega Corporation,,vallievizcaino
|
115
|
+
van.villanveva@megacorp.com,1,Van,Villanveva,van.villanveva@megacorp.com,Mega Corporation,,vanvillanveva
|
116
|
+
wes.wallner@megacorp.com,1,Wes,Wallner,wes.wallner@megacorp.com,Mega Corporation,,weswallner
|
117
|
+
winifred.wessels@megacorp.com,1,Winifred,Wessels,winifred.wessels@megacorp.com,Mega Corporation,,winifredwessels
|
118
|
+
yun.yarberry@megacorp.com,1,Yun,Yarberry,yun.yarberry@megacorp.com,Mega Corporation,,yunyarberry
|
119
|
+
zelma.zemke@megacorp.com,1,Zelma,Zemke,zelma.zemke@megacorp.com,Mega Corporation,,zelmazemke
|
@@ -0,0 +1,67 @@
|
|
1
|
+
|
2
|
+
module CommandTestHelper
|
3
|
+
|
4
|
+
def with_params(params, &block)
|
5
|
+
context "with params "+params.to_s do
|
6
|
+
let(:with_params) { params }
|
7
|
+
self.instance_eval &block
|
8
|
+
end
|
9
|
+
end
|
10
|
+
|
11
|
+
def it_should_call_action(action, params)
|
12
|
+
it "should call action "+action.to_s do
|
13
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
14
|
+
cmd.resource.resource_class.expects_with(action, params)
|
15
|
+
cmd.run(arguments)
|
16
|
+
end
|
17
|
+
end
|
18
|
+
|
19
|
+
def it_should_fail_with(message, arguments=[])
|
20
|
+
it "should fail with " + message.to_s do
|
21
|
+
proc { cmd.run(arguments) }.must_raise Clamp::UsageError
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def it_should_accept(message, arguments=[])
|
26
|
+
it "should accept " + message.to_s do
|
27
|
+
cmd.run(arguments).must_equal HammerCLI::EX_OK
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
def it_should_print_column(column_name, arguments=nil)
|
32
|
+
it "should print column " + column_name do
|
33
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
34
|
+
|
35
|
+
cmd.stubs(:context).returns({ :adapter => :test })
|
36
|
+
proc { cmd.run(arguments) }.must_output /.*##{column_name}#.*/
|
37
|
+
end
|
38
|
+
end
|
39
|
+
|
40
|
+
def it_should_print_columns(column_names, arguments=nil)
|
41
|
+
column_names.each do |name|
|
42
|
+
it_should_print_column name, arguments
|
43
|
+
end
|
44
|
+
end
|
45
|
+
|
46
|
+
def it_should_print_n_records(count=nil, arguments=nil)
|
47
|
+
it "should print correct count of records" do
|
48
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
49
|
+
|
50
|
+
cmd.stubs(:context).returns({ :adapter => :test })
|
51
|
+
count ||= expected_record_count rescue 0
|
52
|
+
out, err = capture_io do
|
53
|
+
cmd.run(arguments)
|
54
|
+
end
|
55
|
+
|
56
|
+
out.split(/\n/).length.must_equal count+1 # plus 1 for line with column headers
|
57
|
+
end
|
58
|
+
end
|
59
|
+
|
60
|
+
def it_should_accept_search_params
|
61
|
+
it_should_accept "search", ["--search=some_search"]
|
62
|
+
it_should_accept "per page", ["--per-page=1"]
|
63
|
+
it_should_accept "page", ["--page=2"]
|
64
|
+
it_should_accept "order", ["--order=order"]
|
65
|
+
end
|
66
|
+
|
67
|
+
end
|
@@ -0,0 +1,69 @@
|
|
1
|
+
#require File.join(File.dirname(__FILE__), '../test_output_adapter')
|
2
|
+
|
3
|
+
|
4
|
+
module CommandTestHelper
|
5
|
+
|
6
|
+
def with_params(params, &block)
|
7
|
+
context "with params "+params.to_s do
|
8
|
+
let(:with_params) { params }
|
9
|
+
self.instance_eval &block
|
10
|
+
end
|
11
|
+
end
|
12
|
+
|
13
|
+
def it_should_call_action(action, params)
|
14
|
+
it "should call action "+action.to_s do
|
15
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
16
|
+
cmd.resource.resource_class.expects_with(action, params)
|
17
|
+
cmd.run(arguments)
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
def it_should_fail_with(message, arguments=[])
|
22
|
+
it "should fail with " + message.to_s do
|
23
|
+
proc { cmd.run(arguments) }.must_raise Clamp::UsageError
|
24
|
+
end
|
25
|
+
end
|
26
|
+
|
27
|
+
def it_should_accept(message, arguments=[])
|
28
|
+
it "should accept " + message.to_s do
|
29
|
+
cmd.run(arguments).must_equal HammerCLI::EX_OK
|
30
|
+
end
|
31
|
+
end
|
32
|
+
|
33
|
+
def it_should_print_column(column_name, arguments=nil)
|
34
|
+
it "should print column " + column_name do
|
35
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
36
|
+
|
37
|
+
cmd.stubs(:context).returns({ :adapter => :test })
|
38
|
+
proc { cmd.run(arguments) }.must_output /.*##{column_name}#.*/
|
39
|
+
end
|
40
|
+
end
|
41
|
+
|
42
|
+
def it_should_print_columns(column_names, arguments=nil)
|
43
|
+
column_names.each do |name|
|
44
|
+
it_should_print_column name, arguments
|
45
|
+
end
|
46
|
+
end
|
47
|
+
|
48
|
+
def it_should_print_n_records(count=nil, arguments=nil)
|
49
|
+
it "should print correct count of records" do
|
50
|
+
arguments ||= respond_to?(:with_params) ? with_params : []
|
51
|
+
|
52
|
+
cmd.stubs(:context).returns({ :adapter => :test })
|
53
|
+
count ||= expected_record_count rescue 0
|
54
|
+
out, err = capture_io do
|
55
|
+
cmd.run(arguments)
|
56
|
+
end
|
57
|
+
|
58
|
+
out.split(/\n/).length.must_equal count+1 # plus 1 for line with column headers
|
59
|
+
end
|
60
|
+
end
|
61
|
+
|
62
|
+
def it_should_accept_search_params
|
63
|
+
it_should_accept "search", ["--search=some_search"]
|
64
|
+
it_should_accept "per page", ["--per-page=1"]
|
65
|
+
it_should_accept "page", ["--page=2"]
|
66
|
+
it_should_accept "order", ["--order=order"]
|
67
|
+
end
|
68
|
+
|
69
|
+
end
|
data/test/hosts_test.rb
ADDED
@@ -0,0 +1,47 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'csv_test_helper')
|
2
|
+
|
3
|
+
describe 'setup' do
|
4
|
+
|
5
|
+
extend CommandTestHelper
|
6
|
+
|
7
|
+
before :each do
|
8
|
+
HammerCLI::Settings.load_from_file 'test/config.yml'
|
9
|
+
end
|
10
|
+
|
11
|
+
context 'Test hosts from setup' do
|
12
|
+
|
13
|
+
it "hammer -v --csv host list --search=name=dhcp129-000.megacorp.com" do
|
14
|
+
stdout,stderr = capture {
|
15
|
+
hammer.run(%W{-v --csv host list --search=name=dhcp129-000.megacorp.com})
|
16
|
+
}
|
17
|
+
stderr.must_equal ''
|
18
|
+
stdout.split("\n").length.must_equal 2
|
19
|
+
stdout.must_match /.*dhcp129-000\.megacorp\.com.*/
|
20
|
+
|
21
|
+
host_id = stdout.split("\n")[1].split(",")[0]
|
22
|
+
end
|
23
|
+
|
24
|
+
let(:host_id) {
|
25
|
+
stdout,stderr = capture {
|
26
|
+
hammer.run(%W{-v --csv host list --search=name=dhcp129-000.megacorp.com})
|
27
|
+
}
|
28
|
+
host_id = stdout.split("\n")[1].split(",")[0]
|
29
|
+
}
|
30
|
+
|
31
|
+
it "hammer -v host info --id $id" do
|
32
|
+
stdout,stderr = capture {
|
33
|
+
hammer.run(%W{-v host info --id #{host_id}})
|
34
|
+
}
|
35
|
+
stderr.must_equal ''
|
36
|
+
attributes = {}
|
37
|
+
stdout.split("\n").each do |line|
|
38
|
+
name,value = line.split(":")
|
39
|
+
attributes[name.strip] = (value.nil? ? '' : value.strip)
|
40
|
+
end
|
41
|
+
attributes['Id'].must_equal host_id
|
42
|
+
attributes['Name'].must_equal 'dhcp129-000.megacorp.com'
|
43
|
+
|
44
|
+
end
|
45
|
+
end
|
46
|
+
|
47
|
+
end
|
@@ -0,0 +1,74 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'csv_test_helper')
|
2
|
+
|
3
|
+
describe 'organizations' do
|
4
|
+
|
5
|
+
extend CommandTestHelper
|
6
|
+
|
7
|
+
before :each do
|
8
|
+
HammerCLI::Settings.load_from_file 'test/config.yml'
|
9
|
+
|
10
|
+
@api = ApipieBindings::API.new({
|
11
|
+
:uri => HammerCLI::Settings.get(:csv, :host),
|
12
|
+
:username => HammerCLI::Settings.get(:csv, :username),
|
13
|
+
:password => HammerCLI::Settings.get(:csv, :password),
|
14
|
+
:api_version => 2
|
15
|
+
})
|
16
|
+
|
17
|
+
end
|
18
|
+
|
19
|
+
context "organizations CRUD" do
|
20
|
+
|
21
|
+
it "create, update, delete" do
|
22
|
+
|
23
|
+
name = "host#{rand(10000)}"
|
24
|
+
|
25
|
+
# Create organization
|
26
|
+
file = Tempfile.new('organizations_test')
|
27
|
+
file.write("Name,Count,Org Label,Description\n")
|
28
|
+
file.write("#{name},1,#{name},A test organization\n")
|
29
|
+
file.rewind
|
30
|
+
|
31
|
+
stdout,stderr = capture {
|
32
|
+
hammer.run(%W{csv organizations -v --csv-file #{file.path}})
|
33
|
+
}
|
34
|
+
stderr.must_equal ''
|
35
|
+
stdout[0..-2].must_equal "Creating organization '#{name}'... done"
|
36
|
+
file.unlink
|
37
|
+
|
38
|
+
# Update organization
|
39
|
+
file = Tempfile.new('organizations_test')
|
40
|
+
file.write("Name,Count,Org Label,Description\n")
|
41
|
+
file.write("#{name},1,#{name},An updated test organization\n")
|
42
|
+
file.rewind
|
43
|
+
|
44
|
+
stdout,stderr = capture {
|
45
|
+
hammer.run(%W{csv organizations -v --csv-file #{file.path}})
|
46
|
+
}
|
47
|
+
stderr.must_equal ''
|
48
|
+
stdout[0..-2].must_equal "Updating organization '#{name}'... done"
|
49
|
+
file.unlink
|
50
|
+
|
51
|
+
# Verify organization
|
52
|
+
organization = @api.resource(:organizations).call(:index, {
|
53
|
+
'search' => "name=\"#{name}\""
|
54
|
+
})['results']
|
55
|
+
organization.wont_be_nil
|
56
|
+
organization.wont_be_empty
|
57
|
+
organization[0]['name'].must_equal name
|
58
|
+
|
59
|
+
# Clean up
|
60
|
+
@api.resource(:organizations).call(:destroy, {
|
61
|
+
'id' => organization[0]['id']
|
62
|
+
})
|
63
|
+
|
64
|
+
# Verify organization
|
65
|
+
organization = @api.resource(:organizations).call(:index, {
|
66
|
+
'search' => "name=\"#{name}\""
|
67
|
+
})['results']
|
68
|
+
organization.wont_be_nil
|
69
|
+
organization.will_be_empty
|
70
|
+
|
71
|
+
end
|
72
|
+
|
73
|
+
end
|
74
|
+
end
|
data/test/roles_test.rb
ADDED
@@ -0,0 +1,39 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'csv_test_helper')
|
2
|
+
#require File.join(File.dirname(__FILE__), 'apipie_resource_mock')
|
3
|
+
require 'stringio'
|
4
|
+
require 'tempfile'
|
5
|
+
|
6
|
+
describe 'something' do
|
7
|
+
|
8
|
+
extend CommandTestHelper
|
9
|
+
|
10
|
+
|
11
|
+
before :each do
|
12
|
+
HammerCLI::Settings.load_from_file 'test/config.yml'
|
13
|
+
end
|
14
|
+
|
15
|
+
context 'activation keys' do
|
16
|
+
|
17
|
+
# Expected output of the form:
|
18
|
+
# ID,Name,Consumed
|
19
|
+
# 1,damon.dials@megacorp.com,0 of Unlimited
|
20
|
+
it 'allows show' do
|
21
|
+
set_user 'damon.dials@megacorp.com'
|
22
|
+
|
23
|
+
stdout,stderr = capture {
|
24
|
+
hammer.run(%W{activation-key list --organization-id megacorp}).must_equal HammerCLI::EX_OK
|
25
|
+
}
|
26
|
+
lines = stdout.split("\n")
|
27
|
+
lines.length.must_equal 2
|
28
|
+
lines[1].must_match /.*damon.dials@megacorp\.com.*/
|
29
|
+
|
30
|
+
id = lines[1].split(',')[0]
|
31
|
+
stdout,stderr = capture {
|
32
|
+
hammer.run(%W{activation-key info --id #{id}}).must_equal HammerCLI::EX_OK
|
33
|
+
}
|
34
|
+
stdout.split("\n")[1].must_match /.*damon.dials@megacorp.com,[0-9]+,Individual account,Library,Default Organization View/
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
38
|
+
|
39
|
+
end
|
data/test/setup_test.rb
ADDED
@@ -0,0 +1,164 @@
|
|
1
|
+
require File.join(File.dirname(__FILE__), 'csv_test_helper')
|
2
|
+
|
3
|
+
describe 'setup' do
|
4
|
+
|
5
|
+
extend CommandTestHelper
|
6
|
+
|
7
|
+
before :each do
|
8
|
+
HammerCLI::Settings.load_from_file 'test/config.yml'
|
9
|
+
end
|
10
|
+
|
11
|
+
context 'Setup Organizations' do
|
12
|
+
it "hammer csv organizations -v --csv-file test/data/organizations.csv" do
|
13
|
+
stdout,stderr = capture {
|
14
|
+
hammer.run(%W{csv organizations -v --csv-file test/data/organizations.csv})
|
15
|
+
}
|
16
|
+
stderr.must_equal ''
|
17
|
+
stdout.must_match /.*organization 'Mega Corporation'.*/
|
18
|
+
end
|
19
|
+
end
|
20
|
+
|
21
|
+
context 'Setup Locations' do
|
22
|
+
it "hammer csv locations -v --csv-file test/data/locations.csv" do
|
23
|
+
stdout,stderr = capture {
|
24
|
+
hammer.run(%W{csv locations -v --csv-file test/data/locations.csv})
|
25
|
+
}
|
26
|
+
stderr.must_equal ''
|
27
|
+
stdout.must_match /.*Asia Pacific.*/
|
28
|
+
end
|
29
|
+
end
|
30
|
+
|
31
|
+
context 'Setup' do
|
32
|
+
it "hammer csv operating-systems -v --csv-file test/data/operatingsystems.csv" do
|
33
|
+
stdout,stderr = capture {
|
34
|
+
hammer.run(%W{csv operating-systems -v --csv-file test/data/operatingsystems.csv})
|
35
|
+
}
|
36
|
+
stderr.must_equal ''
|
37
|
+
stdout.must_match /.*operating system 'Fedora 18'.*/
|
38
|
+
end
|
39
|
+
end
|
40
|
+
|
41
|
+
context 'Setup' do
|
42
|
+
it "hammer csv architectures -v --csv-file test/data/architectures.csv" do
|
43
|
+
stdout,stderr = capture {
|
44
|
+
hammer.run(%W{csv architectures -v --csv-file test/data/architectures.csv})
|
45
|
+
}
|
46
|
+
stderr.must_equal ''
|
47
|
+
stdout.must_match /.*architecture 'x86_64'.*/
|
48
|
+
end
|
49
|
+
end
|
50
|
+
|
51
|
+
context 'Setup' do
|
52
|
+
it "hammer csv partitiontables -v --csv-file test/data/partitiontables.csv" do
|
53
|
+
stdout,stderr = capture {
|
54
|
+
hammer.run(%W{csv partition-tables -v --csv-file test/data/partitiontables.csv})
|
55
|
+
}
|
56
|
+
stderr.must_equal ''
|
57
|
+
stdout.must_match /.*ptable 'ext4 default'.*/
|
58
|
+
end
|
59
|
+
end
|
60
|
+
|
61
|
+
context 'Setup' do
|
62
|
+
it "hammer csv domains -v --csv-file test/data/domains.csv" do
|
63
|
+
stdout,stderr = capture {
|
64
|
+
hammer.run(%W{csv domains -v --csv-file test/data/domains.csv})
|
65
|
+
}
|
66
|
+
stderr.must_equal ''
|
67
|
+
stdout.must_match /.*domain 'megacorp.com'.*/
|
68
|
+
end
|
69
|
+
end
|
70
|
+
|
71
|
+
context 'Setup' do
|
72
|
+
it "hammer csv puppet-environments -v --csv-file test/data/puppetenvironments.csv" do
|
73
|
+
stdout,stderr = capture {
|
74
|
+
hammer.run(%W{csv puppet-environments -v --csv-file test/data/puppetenvironments.csv})
|
75
|
+
}
|
76
|
+
stderr.must_equal ''
|
77
|
+
stdout.must_match /.*environment 'Development'.*/
|
78
|
+
end
|
79
|
+
end
|
80
|
+
|
81
|
+
context 'Setup' do
|
82
|
+
it "hammer csv hosts -v --csv-file test/data/hosts.csv" do
|
83
|
+
stdout,stderr = capture {
|
84
|
+
hammer.run(%W{csv hosts -v --csv-file test/data/hosts.csv})
|
85
|
+
}
|
86
|
+
stderr.must_equal ''
|
87
|
+
stdout.split("\n").length.must_equal 255
|
88
|
+
stdout.must_match /.*host 'dhcp129-000\.megacorp\.com'.*/
|
89
|
+
end
|
90
|
+
end
|
91
|
+
|
92
|
+
context 'Setup' do
|
93
|
+
it "hammer csv puppet-facts -v --csv-file test/data/puppetfacts.csv" do
|
94
|
+
stdout,stderr = capture {
|
95
|
+
hammer.run(%W{csv puppet-facts -v --csv-file test/data/puppetfacts.csv})
|
96
|
+
}
|
97
|
+
stderr.must_equal ''
|
98
|
+
stdout.must_match /.*puppetfacts 'dhcp129-000.megacorp.com'.*/
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
context 'subscription setup' do
|
103
|
+
it "hammer subscription upload -v --organization-id megacorp --file test/data/megacorp.zip" do
|
104
|
+
# TODO: http://projects.theforeman.org/issues/4748
|
105
|
+
"".must_equal "TODO: Bug #4748 - errors on import manifest should complete dynflow task and display information to user"
|
106
|
+
stdout,stderr = capture {
|
107
|
+
hammer.run(%W{-v subscription upload --organization-id megacorp --file test/data/megacorp.zip})
|
108
|
+
}
|
109
|
+
stderr.must_equal ''
|
110
|
+
stdout.must_match '.*Manifest is being uploaded.*'
|
111
|
+
end
|
112
|
+
end
|
113
|
+
|
114
|
+
context 'Setup' do
|
115
|
+
it "hammer csv products -v --csv-file test/data/products.csv" do
|
116
|
+
stdout,stderr = capture {
|
117
|
+
hammer.run(%W{csv products -v --csv-file test/data/products.csv})
|
118
|
+
}
|
119
|
+
stderr.must_equal ''
|
120
|
+
stdout.must_match /.*product 'Point of Sale'.*/
|
121
|
+
end
|
122
|
+
end
|
123
|
+
|
124
|
+
context 'Setup' do
|
125
|
+
it "hammer csv lifecycle-environments -v --csv-file test/data/lifecycleenvironments.csv" do
|
126
|
+
stdout,stderr = capture {
|
127
|
+
hammer.run(%W{csv lifecycle-environments -v --csv-file test/data/lifecycleenvironments.csv})
|
128
|
+
}
|
129
|
+
stderr.must_equal ''
|
130
|
+
stdout.must_match /.*environment 'Development'.*/
|
131
|
+
end
|
132
|
+
end
|
133
|
+
|
134
|
+
context 'Setup' do
|
135
|
+
it "hammer csv system-groups -v --csv-file test/data/systemgroups.csv" do
|
136
|
+
stdout,stderr = capture {
|
137
|
+
hammer.run(%W{csv system-groups -v --csv-file test/data/systemgroups.csv})
|
138
|
+
}
|
139
|
+
stderr.must_equal ''
|
140
|
+
stdout.must_match /.*system group 'Mega Corp HQ'.*/
|
141
|
+
end
|
142
|
+
end
|
143
|
+
|
144
|
+
context 'Setup' do
|
145
|
+
it "hammer csv systems -v --csv-file test/data/systems.csv" do
|
146
|
+
stdout,stderr = capture {
|
147
|
+
hammer.run(%W{csv systems -v --csv-file test/data/systems.csv})
|
148
|
+
}
|
149
|
+
stderr.must_equal ''
|
150
|
+
stdout.must_match /.*system 'host0'.*/
|
151
|
+
end
|
152
|
+
end
|
153
|
+
|
154
|
+
context 'Setup' do
|
155
|
+
it "hammer csv activation-keys -v --csv-file test/data/activationkeys.csv" do
|
156
|
+
stdout,stderr = capture {
|
157
|
+
hammer.run(%W{csv activation-keys -v --csv-file test/data/activationkeys.csv})
|
158
|
+
}
|
159
|
+
stderr.must_equal ''
|
160
|
+
stdout.must_match /.*activation key 'damon\.dials@megacorp\.com'.*/
|
161
|
+
end
|
162
|
+
end
|
163
|
+
|
164
|
+
end
|