foreman_discovery 1.0.0.rc1
Sign up to get free protection for your applications and to get access to all the features.
- data/LICENSE +619 -0
- data/README.md +128 -0
- data/Rakefile +111 -0
- data/app/controllers/discovers_controller.rb +151 -0
- data/app/helpers/discovers_helper.rb +37 -0
- data/app/models/host/discovered.rb +97 -0
- data/app/models/host/managed_extensions.rb +32 -0
- data/app/models/setting/discovered.rb +28 -0
- data/app/overrides/add_build_flag.rb +4 -0
- data/app/views/discovers/_discovers_list.html.erb +54 -0
- data/app/views/discovers/_selected_hosts.html.erb +29 -0
- data/app/views/discovers/index.html.erb +2 -0
- data/app/views/discovers/multiple_destroy.html.erb +5 -0
- data/app/views/discovers/select_multiple_location.html.erb +10 -0
- data/app/views/discovers/select_multiple_organization.html.erb +10 -0
- data/app/views/discovers/show.html.erb +16 -0
- data/config/environment.rb +0 -0
- data/config/initializers/discovery_setup.rb +20 -0
- data/config/routes.rb +26 -0
- data/lib/discovery_home_helper_patch.rb +21 -0
- data/lib/foreman_discovery.rb +4 -0
- data/lib/foreman_discovery/engine.rb +32 -0
- data/lib/foreman_discovery/facts.rb +12 -0
- data/lib/foreman_discovery/version.rb +3 -0
- data/lib/tasks.rake +72 -0
- data/test/foreman_app/CHANGELOG +3969 -0
- data/test/foreman_app/Contributors +94 -0
- data/test/foreman_app/Gemfile +33 -0
- data/test/foreman_app/README.md +17 -0
- data/test/foreman_app/Rakefile +7 -0
- data/test/foreman_app/VERSION +1 -0
- data/test/foreman_app/app/assets/images/Archlinux.png +0 -0
- data/test/foreman_app/app/assets/images/Centos.png +0 -0
- data/test/foreman_app/app/assets/images/Darwin.png +0 -0
- data/test/foreman_app/app/assets/images/Debian.png +0 -0
- data/test/foreman_app/app/assets/images/Fedora.png +0 -0
- data/test/foreman_app/app/assets/images/Redhat.png +0 -0
- data/test/foreman_app/app/assets/images/SLC.png +0 -0
- data/test/foreman_app/app/assets/images/Scientific.png +0 -0
- data/test/foreman_app/app/assets/images/Solaris.png +0 -0
- data/test/foreman_app/app/assets/images/Suse.png +0 -0
- data/test/foreman_app/app/assets/images/Ubuntu.png +0 -0
- data/test/foreman_app/app/assets/images/Windows.png +0 -0
- data/test/foreman_app/app/assets/images/bullet_toggle_plus.png +0 -0
- data/test/foreman_app/app/assets/images/edit-hover.png +0 -0
- data/test/foreman_app/app/assets/images/edit.png +0 -0
- data/test/foreman_app/app/assets/images/false.png +0 -0
- data/test/foreman_app/app/assets/images/foreman.png +0 -0
- data/test/foreman_app/app/assets/images/foreman_background.png +0 -0
- data/test/foreman_app/app/assets/images/foreman_large.png +0 -0
- data/test/foreman_app/app/assets/images/foreman_white.png +0 -0
- data/test/foreman_app/app/assets/images/pie_chart_icon.png +0 -0
- data/test/foreman_app/app/assets/images/pie_overlay.png +0 -0
- data/test/foreman_app/app/assets/images/spinner.gif +0 -0
- data/test/foreman_app/app/assets/images/switch.png +0 -0
- data/test/foreman_app/app/assets/images/toggle_check.png +0 -0
- data/test/foreman_app/app/assets/images/true.png +0 -0
- data/test/foreman_app/app/assets/images/user.jpg +0 -0
- data/test/foreman_app/app/assets/javascripts/application.js +348 -0
- data/test/foreman_app/app/assets/javascripts/charts.js +317 -0
- data/test/foreman_app/app/assets/javascripts/compute_resource.js +120 -0
- data/test/foreman_app/app/assets/javascripts/config_template.js +153 -0
- data/test/foreman_app/app/assets/javascripts/host_checkbox.js +151 -0
- data/test/foreman_app/app/assets/javascripts/host_edit.js +591 -0
- data/test/foreman_app/app/assets/javascripts/lookup_keys.js +184 -0
- data/test/foreman_app/app/assets/javascripts/nfs_visibility.js +33 -0
- data/test/foreman_app/app/assets/javascripts/noVNC.js +47 -0
- data/test/foreman_app/app/assets/javascripts/reports.js +27 -0
- data/test/foreman_app/app/assets/javascripts/spice.js +53 -0
- data/test/foreman_app/app/assets/javascripts/taxonomy.js +18 -0
- data/test/foreman_app/app/assets/javascripts/topbar.js +39 -0
- data/test/foreman_app/app/assets/javascripts/trends.js +10 -0
- data/test/foreman_app/app/assets/stylesheets/application.scss +350 -0
- data/test/foreman_app/app/assets/stylesheets/bootstrap_and_overrides.scss +130 -0
- data/test/foreman_app/app/assets/stylesheets/charts.scss +138 -0
- data/test/foreman_app/app/assets/stylesheets/dashboard.scss +42 -0
- data/test/foreman_app/app/assets/stylesheets/login.scss +77 -0
- data/test/foreman_app/app/assets/stylesheets/topbar.scss +83 -0
- data/test/foreman_app/app/assets/stylesheets/wizard.scss +60 -0
- data/test/foreman_app/app/controllers/api/base_controller.rb +162 -0
- data/test/foreman_app/app/controllers/api/v1/architectures_controller.rb +53 -0
- data/test/foreman_app/app/controllers/api/v1/audits_controller.rb +26 -0
- data/test/foreman_app/app/controllers/api/v1/auth_source_ldaps_controller.rb +72 -0
- data/test/foreman_app/app/controllers/api/v1/base_controller.rb +12 -0
- data/test/foreman_app/app/controllers/api/v1/bookmarks_controller.rb +59 -0
- data/test/foreman_app/app/controllers/api/v1/common_parameters_controller.rb +53 -0
- data/test/foreman_app/app/controllers/api/v1/compute_resources_controller.rb +71 -0
- data/test/foreman_app/app/controllers/api/v1/config_templates_controller.rb +102 -0
- data/test/foreman_app/app/controllers/api/v1/dashboard_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v1/domains_controller.rb +74 -0
- data/test/foreman_app/app/controllers/api/v1/environments_controller.rb +50 -0
- data/test/foreman_app/app/controllers/api/v1/fact_values_controller.rb +23 -0
- data/test/foreman_app/app/controllers/api/v1/home_controller.rb +25 -0
- data/test/foreman_app/app/controllers/api/v1/hostgroups_controller.rb +70 -0
- data/test/foreman_app/app/controllers/api/v1/hosts_controller.rb +113 -0
- data/test/foreman_app/app/controllers/api/v1/images_controller.rb +73 -0
- data/test/foreman_app/app/controllers/api/v1/lookup_keys_controller.rb +63 -0
- data/test/foreman_app/app/controllers/api/v1/media_controller.rb +75 -0
- data/test/foreman_app/app/controllers/api/v1/models_controller.rb +56 -0
- data/test/foreman_app/app/controllers/api/v1/operatingsystems_controller.rb +79 -0
- data/test/foreman_app/app/controllers/api/v1/ptables_controller.rb +55 -0
- data/test/foreman_app/app/controllers/api/v1/puppetclasses_controller.rb +56 -0
- data/test/foreman_app/app/controllers/api/v1/reports_controller.rb +43 -0
- data/test/foreman_app/app/controllers/api/v1/roles_controller.rb +49 -0
- data/test/foreman_app/app/controllers/api/v1/settings_controller.rb +35 -0
- data/test/foreman_app/app/controllers/api/v1/smart_proxies_controller.rb +69 -0
- data/test/foreman_app/app/controllers/api/v1/subnets_controller.rb +77 -0
- data/test/foreman_app/app/controllers/api/v1/template_kinds_controller.rb +14 -0
- data/test/foreman_app/app/controllers/api/v1/usergroups_controller.rb +51 -0
- data/test/foreman_app/app/controllers/api/v1/users_controller.rb +102 -0
- data/test/foreman_app/app/controllers/api/v2/base_controller.rb +12 -0
- data/test/foreman_app/app/controllers/api/v2/compute_resources_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/config_templates_controller.rb +26 -0
- data/test/foreman_app/app/controllers/api/v2/domains_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/environments_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/host_classes_controller.rb +49 -0
- data/test/foreman_app/app/controllers/api/v2/hostgroup_classes_controller.rb +44 -0
- data/test/foreman_app/app/controllers/api/v2/hostgroups_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/locations_controller.rb +9 -0
- data/test/foreman_app/app/controllers/api/v2/media_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/organizations_controller.rb +9 -0
- data/test/foreman_app/app/controllers/api/v2/parameters_controller.rb +131 -0
- data/test/foreman_app/app/controllers/api/v2/puppetclasses_controller.rb +60 -0
- data/test/foreman_app/app/controllers/api/v2/smart_proxies_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/subnets_controller.rb +20 -0
- data/test/foreman_app/app/controllers/api/v2/template_combinations_controller.rb +46 -0
- data/test/foreman_app/app/controllers/api/v2/users_controller.rb +20 -0
- data/test/foreman_app/app/controllers/application_controller.rb +349 -0
- data/test/foreman_app/app/controllers/architectures_controller.rb +51 -0
- data/test/foreman_app/app/controllers/audits_controller.rb +19 -0
- data/test/foreman_app/app/controllers/auth_source_ldaps_controller.rb +49 -0
- data/test/foreman_app/app/controllers/bookmarks_controller.rb +55 -0
- data/test/foreman_app/app/controllers/common_parameters_controller.rb +46 -0
- data/test/foreman_app/app/controllers/compute_resources_controller.rb +103 -0
- data/test/foreman_app/app/controllers/compute_resources_vms_controller.rb +78 -0
- data/test/foreman_app/app/controllers/concerns/api/taxonomy_scope.rb +15 -0
- data/test/foreman_app/app/controllers/concerns/api/v2/taxonomies_controller.rb +99 -0
- data/test/foreman_app/app/controllers/config_templates_controller.rb +105 -0
- data/test/foreman_app/app/controllers/dashboard_controller.rb +21 -0
- data/test/foreman_app/app/controllers/domains_controller.rb +55 -0
- data/test/foreman_app/app/controllers/environments_controller.rb +59 -0
- data/test/foreman_app/app/controllers/fact_values_controller.rb +60 -0
- data/test/foreman_app/app/controllers/facts_controller.rb +25 -0
- data/test/foreman_app/app/controllers/home_controller.rb +37 -0
- data/test/foreman_app/app/controllers/hostgroups_controller.rb +115 -0
- data/test/foreman_app/app/controllers/hosts_controller.rb +570 -0
- data/test/foreman_app/app/controllers/images_controller.rb +57 -0
- data/test/foreman_app/app/controllers/locations_controller.rb +4 -0
- data/test/foreman_app/app/controllers/lookup_keys_controller.rb +60 -0
- data/test/foreman_app/app/controllers/lookup_values_controller.rb +58 -0
- data/test/foreman_app/app/controllers/media_controller.rb +56 -0
- data/test/foreman_app/app/controllers/models_controller.rb +49 -0
- data/test/foreman_app/app/controllers/notices_controller.rb +9 -0
- data/test/foreman_app/app/controllers/operatingsystems_controller.rb +77 -0
- data/test/foreman_app/app/controllers/organizations_controller.rb +4 -0
- data/test/foreman_app/app/controllers/ptables_controller.rb +56 -0
- data/test/foreman_app/app/controllers/puppetclasses_controller.rb +85 -0
- data/test/foreman_app/app/controllers/reports_controller.rb +60 -0
- data/test/foreman_app/app/controllers/roles_controller.rb +78 -0
- data/test/foreman_app/app/controllers/settings_controller.rb +21 -0
- data/test/foreman_app/app/controllers/smart_proxies/autosign_controller.rb +47 -0
- data/test/foreman_app/app/controllers/smart_proxies/puppetca_controller.rb +59 -0
- data/test/foreman_app/app/controllers/smart_proxies_controller.rb +43 -0
- data/test/foreman_app/app/controllers/statistics_controller.rb +27 -0
- data/test/foreman_app/app/controllers/subnets_controller.rb +88 -0
- data/test/foreman_app/app/controllers/tasks_controller.rb +16 -0
- data/test/foreman_app/app/controllers/topbar_sweeper.rb +24 -0
- data/test/foreman_app/app/controllers/trends_controller.rb +56 -0
- data/test/foreman_app/app/controllers/unattended_controller.rb +257 -0
- data/test/foreman_app/app/controllers/usergroups_controller.rb +44 -0
- data/test/foreman_app/app/controllers/users_controller.rb +150 -0
- data/test/foreman_app/app/helpers/application_helper.rb +317 -0
- data/test/foreman_app/app/helpers/architecture_helper.rb +2 -0
- data/test/foreman_app/app/helpers/architectures_helper.rb +2 -0
- data/test/foreman_app/app/helpers/audits_helper.rb +138 -0
- data/test/foreman_app/app/helpers/auth_source_ldaps_helper.rb +8 -0
- data/test/foreman_app/app/helpers/auth_sources_helper.rb +2 -0
- data/test/foreman_app/app/helpers/bookmarks_helper.rb +2 -0
- data/test/foreman_app/app/helpers/common_parameters_helper.rb +22 -0
- data/test/foreman_app/app/helpers/compute_resources_helper.rb +28 -0
- data/test/foreman_app/app/helpers/compute_resources_vms_helper.rb +45 -0
- data/test/foreman_app/app/helpers/config_templates_helper.rb +10 -0
- data/test/foreman_app/app/helpers/dashboard_helper.rb +35 -0
- data/test/foreman_app/app/helpers/domains_helper.rb +3 -0
- data/test/foreman_app/app/helpers/environments_helper.rb +3 -0
- data/test/foreman_app/app/helpers/fact_values_helper.rb +8 -0
- data/test/foreman_app/app/helpers/home_helper.rb +116 -0
- data/test/foreman_app/app/helpers/hostgroups_helper.rb +14 -0
- data/test/foreman_app/app/helpers/hosts_and_hostgroups_helper.rb +99 -0
- data/test/foreman_app/app/helpers/hosts_helper.rb +267 -0
- data/test/foreman_app/app/helpers/images_helper.rb +11 -0
- data/test/foreman_app/app/helpers/layout_helper.rb +214 -0
- data/test/foreman_app/app/helpers/lookup_keys_helper.rb +108 -0
- data/test/foreman_app/app/helpers/media_helper.rb +2 -0
- data/test/foreman_app/app/helpers/medium_helper.rb +2 -0
- data/test/foreman_app/app/helpers/model_helper.rb +2 -0
- data/test/foreman_app/app/helpers/models_helper.rb +2 -0
- data/test/foreman_app/app/helpers/notices_helper.rb +3 -0
- data/test/foreman_app/app/helpers/operatingsystems_helper.rb +40 -0
- data/test/foreman_app/app/helpers/organization_helper.rb +2 -0
- data/test/foreman_app/app/helpers/ptables_helper.rb +2 -0
- data/test/foreman_app/app/helpers/puppetclasses_and_environments_helper.rb +39 -0
- data/test/foreman_app/app/helpers/puppetclasses_helper.rb +16 -0
- data/test/foreman_app/app/helpers/reports_helper.rb +48 -0
- data/test/foreman_app/app/helpers/settings_helper.rb +27 -0
- data/test/foreman_app/app/helpers/smart_proxies/autosign_helper.rb +6 -0
- data/test/foreman_app/app/helpers/smart_proxies/puppetca_helper.rb +20 -0
- data/test/foreman_app/app/helpers/smart_proxies_helper.rb +2 -0
- data/test/foreman_app/app/helpers/statistics_helper.rb +16 -0
- data/test/foreman_app/app/helpers/subnets_helper.rb +9 -0
- data/test/foreman_app/app/helpers/tasks_helper.rb +22 -0
- data/test/foreman_app/app/helpers/taxonomy_helper.rb +107 -0
- data/test/foreman_app/app/helpers/trends_helper.rb +46 -0
- data/test/foreman_app/app/helpers/unattended_helper.rb +16 -0
- data/test/foreman_app/app/helpers/usergroups_helper.rb +2 -0
- data/test/foreman_app/app/helpers/users_helper.rb +21 -0
- data/test/foreman_app/app/models/architecture.rb +23 -0
- data/test/foreman_app/app/models/archlinux.rb +27 -0
- data/test/foreman_app/app/models/auth_source.rb +70 -0
- data/test/foreman_app/app/models/auth_source_internal.rb +17 -0
- data/test/foreman_app/app/models/auth_source_ldap.rb +147 -0
- data/test/foreman_app/app/models/authorization.rb +51 -0
- data/test/foreman_app/app/models/bookmark.rb +30 -0
- data/test/foreman_app/app/models/classification.rb +126 -0
- data/test/foreman_app/app/models/common_parameter.rb +13 -0
- data/test/foreman_app/app/models/compute_resource.rb +232 -0
- data/test/foreman_app/app/models/config_template.rb +172 -0
- data/test/foreman_app/app/models/dashboard.rb +53 -0
- data/test/foreman_app/app/models/debian.rb +47 -0
- data/test/foreman_app/app/models/domain.rb +90 -0
- data/test/foreman_app/app/models/domain_parameter.rb +22 -0
- data/test/foreman_app/app/models/environment.rb +57 -0
- data/test/foreman_app/app/models/environment_class.rb +25 -0
- data/test/foreman_app/app/models/fact_name.rb +17 -0
- data/test/foreman_app/app/models/fact_trend.rb +57 -0
- data/test/foreman_app/app/models/fact_value.rb +83 -0
- data/test/foreman_app/app/models/facts_importer.rb +121 -0
- data/test/foreman_app/app/models/feature.rb +4 -0
- data/test/foreman_app/app/models/foreman_trend.rb +38 -0
- data/test/foreman_app/app/models/group_parameter.rb +22 -0
- data/test/foreman_app/app/models/host.rb +30 -0
- data/test/foreman_app/app/models/host/base.rb +141 -0
- data/test/foreman_app/app/models/host/hostmix.rb +13 -0
- data/test/foreman_app/app/models/host/managed.rb +854 -0
- data/test/foreman_app/app/models/host_class.rb +13 -0
- data/test/foreman_app/app/models/host_common.rb +95 -0
- data/test/foreman_app/app/models/host_mailer.rb +77 -0
- data/test/foreman_app/app/models/host_observer.rb +19 -0
- data/test/foreman_app/app/models/host_parameter.rb +20 -0
- data/test/foreman_app/app/models/host_template_helpers.rb +43 -0
- data/test/foreman_app/app/models/hostext/search.rb +128 -0
- data/test/foreman_app/app/models/hostgroup.rb +159 -0
- data/test/foreman_app/app/models/hostgroup_class.rb +15 -0
- data/test/foreman_app/app/models/image.rb +14 -0
- data/test/foreman_app/app/models/key_pair.rb +5 -0
- data/test/foreman_app/app/models/location.rb +25 -0
- data/test/foreman_app/app/models/log.rb +25 -0
- data/test/foreman_app/app/models/lookup_key.rb +261 -0
- data/test/foreman_app/app/models/lookup_value.rb +61 -0
- data/test/foreman_app/app/models/medium.rb +58 -0
- data/test/foreman_app/app/models/message.rb +19 -0
- data/test/foreman_app/app/models/model.rb +14 -0
- data/test/foreman_app/app/models/nic.rb +61 -0
- data/test/foreman_app/app/models/nic/bmc.rb +22 -0
- data/test/foreman_app/app/models/nic/bootable.rb +31 -0
- data/test/foreman_app/app/models/nic/interface.rb +23 -0
- data/test/foreman_app/app/models/nic/managed.rb +57 -0
- data/test/foreman_app/app/models/notice.rb +36 -0
- data/test/foreman_app/app/models/operatingsystem.rb +196 -0
- data/test/foreman_app/app/models/orchestration.rb +184 -0
- data/test/foreman_app/app/models/orchestration/compute.rb +157 -0
- data/test/foreman_app/app/models/orchestration/dhcp.rb +154 -0
- data/test/foreman_app/app/models/orchestration/dns.rb +130 -0
- data/test/foreman_app/app/models/orchestration/puppetca.rb +79 -0
- data/test/foreman_app/app/models/orchestration/ssh_provision.rb +115 -0
- data/test/foreman_app/app/models/orchestration/tftp.rb +133 -0
- data/test/foreman_app/app/models/organization.rb +24 -0
- data/test/foreman_app/app/models/os_default_template.rb +11 -0
- data/test/foreman_app/app/models/os_parameter.rb +16 -0
- data/test/foreman_app/app/models/parameter.rb +34 -0
- data/test/foreman_app/app/models/ptable.rb +25 -0
- data/test/foreman_app/app/models/puppet_class_importer.rb +269 -0
- data/test/foreman_app/app/models/puppetclass.rb +172 -0
- data/test/foreman_app/app/models/redhat.rb +61 -0
- data/test/foreman_app/app/models/report.rb +356 -0
- data/test/foreman_app/app/models/report_common.rb +52 -0
- data/test/foreman_app/app/models/role.rb +156 -0
- data/test/foreman_app/app/models/setting.rb +174 -0
- data/test/foreman_app/app/models/setting/auth.rb +29 -0
- data/test/foreman_app/app/models/setting/general.rb +27 -0
- data/test/foreman_app/app/models/setting/provisioning.rb +28 -0
- data/test/foreman_app/app/models/setting/puppet.rb +36 -0
- data/test/foreman_app/app/models/smart_proxies/puppet_ca.rb +66 -0
- data/test/foreman_app/app/models/smart_proxy.rb +96 -0
- data/test/foreman_app/app/models/solaris.rb +114 -0
- data/test/foreman_app/app/models/source.rb +18 -0
- data/test/foreman_app/app/models/subnet.rb +146 -0
- data/test/foreman_app/app/models/subnet_domain.rb +12 -0
- data/test/foreman_app/app/models/suse.rb +22 -0
- data/test/foreman_app/app/models/tax_host.rb +181 -0
- data/test/foreman_app/app/models/taxable_taxonomy.rb +14 -0
- data/test/foreman_app/app/models/taxonomix.rb +47 -0
- data/test/foreman_app/app/models/taxonomy.rb +135 -0
- data/test/foreman_app/app/models/template_combination.rb +12 -0
- data/test/foreman_app/app/models/template_kind.rb +6 -0
- data/test/foreman_app/app/models/token.rb +23 -0
- data/test/foreman_app/app/models/trend.rb +22 -0
- data/test/foreman_app/app/models/trend_counter.rb +7 -0
- data/test/foreman_app/app/models/trend_importer.rb +50 -0
- data/test/foreman_app/app/models/user.rb +251 -0
- data/test/foreman_app/app/models/user_fact.rb +26 -0
- data/test/foreman_app/app/models/user_hostgroup.rb +10 -0
- data/test/foreman_app/app/models/user_role.rb +32 -0
- data/test/foreman_app/app/models/usergroup.rb +61 -0
- data/test/foreman_app/app/models/usergroup_member.rb +5 -0
- data/test/foreman_app/app/models/windows.rb +20 -0
- data/test/foreman_app/app/views/api/v1/architectures/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/architectures/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/architectures/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/audits/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/audits/show.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v1/auth_source_ldaps/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/auth_source_ldaps/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/bookmarks/create.json.rabl +2 -0
- data/test/foreman_app/app/views/api/v1/bookmarks/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/bookmarks/show.json.rabl +2 -0
- data/test/foreman_app/app/views/api/v1/bookmarks/update.json.rabl +8 -0
- data/test/foreman_app/app/views/api/v1/common_parameters/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/common_parameters/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/common_parameters/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/ec2.json.rabl +1 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/libvirt.json.rabl +0 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/openstack.json.rabl +1 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/ovirt.json.rabl +1 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/rackspace.json.rabl +1 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/show.json.rabl +8 -0
- data/test/foreman_app/app/views/api/v1/compute_resources/vmware.json.rabl +1 -0
- data/test/foreman_app/app/views/api/v1/config_templates/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/config_templates/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/config_templates/show.json.rabl +11 -0
- data/test/foreman_app/app/views/api/v1/domains/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/domains/show.json.rabl +2 -0
- data/test/foreman_app/app/views/api/v1/environments/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/environments/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/environments/show.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v1/errors/access_denied.json.rabl +4 -0
- data/test/foreman_app/app/views/api/v1/errors/not_found.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/errors/param_error.json.rabl +7 -0
- data/test/foreman_app/app/views/api/v1/errors/route_error.json.rabl +4 -0
- data/test/foreman_app/app/views/api/v1/errors/standard_error.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v1/errors/unauthorized.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/errors/unprocessable_entity.json.rabl +6 -0
- data/test/foreman_app/app/views/api/v1/home/index.json.rabl +24 -0
- data/test/foreman_app/app/views/api/v1/home/status.json.rabl +6 -0
- data/test/foreman_app/app/views/api/v1/hostgroups/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/hostgroups/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/hostgroups/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/hosts/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/hosts/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/hosts/show.json.rabl +12 -0
- data/test/foreman_app/app/views/api/v1/images/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/images/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/lookup_keys/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/lookup_keys/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/media/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/media/show.json.rabl +9 -0
- data/test/foreman_app/app/views/api/v1/models/index.rabl +4 -0
- data/test/foreman_app/app/views/api/v1/models/show.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/operatingsystems/create.json.rabl +4 -0
- data/test/foreman_app/app/views/api/v1/operatingsystems/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/operatingsystems/show.json.rabl +22 -0
- data/test/foreman_app/app/views/api/v1/operatingsystems/update.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/ptables/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/ptables/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/reports/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/reports/show.json.rabl +16 -0
- data/test/foreman_app/app/views/api/v1/roles/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/roles/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/roles/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/settings/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/settings/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/smart_proxies/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/smart_proxies/show.json.rabl +9 -0
- data/test/foreman_app/app/views/api/v1/subnets/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/subnets/index.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v1/subnets/show.json.rabl +17 -0
- data/test/foreman_app/app/views/api/v1/subnets/update.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/template_kinds/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/template_kinds/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/usergroups/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/usergroups/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/users/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v1/users/index.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v1/users/show.json.rabl +13 -0
- data/test/foreman_app/app/views/api/v2/config_templates/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/config_templates/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/config_templates/show.json.rabl +33 -0
- data/test/foreman_app/app/views/api/v2/errors/access_denied.json.rabl +4 -0
- data/test/foreman_app/app/views/api/v2/errors/not_found.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/errors/param_error.json.rabl +7 -0
- data/test/foreman_app/app/views/api/v2/errors/route_error.json.rabl +4 -0
- data/test/foreman_app/app/views/api/v2/errors/standard_error.json.rabl +5 -0
- data/test/foreman_app/app/views/api/v2/errors/unauthorized.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/errors/unprocessable_entity.json.rabl +6 -0
- data/test/foreman_app/app/views/api/v2/parameters/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/parameters/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/parameters/show.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/parameters/update.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/puppetclasses/show.json.rabl +7 -0
- data/test/foreman_app/app/views/api/v2/taxonomies/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/taxonomies/show.json.rabl +7 -0
- data/test/foreman_app/app/views/api/v2/taxonomies/update.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/template_combinations/create.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/template_combinations/index.json.rabl +3 -0
- data/test/foreman_app/app/views/api/v2/template_combinations/show.json.rabl +3 -0
- data/test/foreman_app/app/views/architectures/_form.html.erb +6 -0
- data/test/foreman_app/app/views/architectures/edit.html.erb +3 -0
- data/test/foreman_app/app/views/architectures/index.html.erb +21 -0
- data/test/foreman_app/app/views/architectures/new.html.erb +3 -0
- data/test/foreman_app/app/views/architectures/welcome.html.erb +14 -0
- data/test/foreman_app/app/views/audits/_list.erb +24 -0
- data/test/foreman_app/app/views/audits/index.html.erb +6 -0
- data/test/foreman_app/app/views/audits/show.html.erb +56 -0
- data/test/foreman_app/app/views/auth_source_ldaps/_form.html.erb +23 -0
- data/test/foreman_app/app/views/auth_source_ldaps/edit.html.erb +3 -0
- data/test/foreman_app/app/views/auth_source_ldaps/index.html.erb +22 -0
- data/test/foreman_app/app/views/auth_source_ldaps/new.html.erb +3 -0
- data/test/foreman_app/app/views/auth_source_ldaps/welcome.html.erb +8 -0
- data/test/foreman_app/app/views/bookmarks/_form.html.erb +8 -0
- data/test/foreman_app/app/views/bookmarks/_list.html.erb +7 -0
- data/test/foreman_app/app/views/bookmarks/edit.html.erb +3 -0
- data/test/foreman_app/app/views/bookmarks/index.html.erb +25 -0
- data/test/foreman_app/app/views/bookmarks/new.html.erb +3 -0
- data/test/foreman_app/app/views/bookmarks/welcome.html.erb +8 -0
- data/test/foreman_app/app/views/common/403.html.erb +9 -0
- data/test/foreman_app/app/views/common/404.html.erb +8 -0
- data/test/foreman_app/app/views/common/500.html.erb +19 -0
- data/test/foreman_app/app/views/common/_domain.html.erb +9 -0
- data/test/foreman_app/app/views/common/_domain_subnet.html.erb +10 -0
- data/test/foreman_app/app/views/common/_edit_habtm.erb +20 -0
- data/test/foreman_app/app/views/common/_notice.erb +20 -0
- data/test/foreman_app/app/views/common/_puppetclasses_or_envs_changed.html.erb +32 -0
- data/test/foreman_app/app/views/common/_searchbar.erb +37 -0
- data/test/foreman_app/app/views/common/_show_habtm.html.erb +1 -0
- data/test/foreman_app/app/views/common/os_selection/_architecture.html.erb +9 -0
- data/test/foreman_app/app/views/common/os_selection/_image_details.html.erb +7 -0
- data/test/foreman_app/app/views/common/os_selection/_initial.html.erb +15 -0
- data/test/foreman_app/app/views/common/os_selection/_operatingsystem.html.erb +15 -0
- data/test/foreman_app/app/views/common_parameters/_form.html.erb +6 -0
- data/test/foreman_app/app/views/common_parameters/_inherited_parameters.erb +23 -0
- data/test/foreman_app/app/views/common_parameters/_parameter.erb +14 -0
- data/test/foreman_app/app/views/common_parameters/_parameters.erb +6 -0
- data/test/foreman_app/app/views/common_parameters/_puppetclass_parameter.erb +16 -0
- data/test/foreman_app/app/views/common_parameters/_puppetclasses_parameters.erb +7 -0
- data/test/foreman_app/app/views/common_parameters/_show_parameter.html.erb +5 -0
- data/test/foreman_app/app/views/common_parameters/edit.html.erb +3 -0
- data/test/foreman_app/app/views/common_parameters/index.html.erb +22 -0
- data/test/foreman_app/app/views/common_parameters/new.html.erb +3 -0
- data/test/foreman_app/app/views/compute_resources/_form.html.erb +44 -0
- data/test/foreman_app/app/views/compute_resources/edit.html.erb +3 -0
- data/test/foreman_app/app/views/compute_resources/form/_ec2.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources/form/_libvirt.html.erb +9 -0
- data/test/foreman_app/app/views/compute_resources/form/_openstack.html.erb +9 -0
- data/test/foreman_app/app/views/compute_resources/form/_ovirt.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources/form/_rackspace.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources/form/_vmware.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources/index.html.erb +24 -0
- data/test/foreman_app/app/views/compute_resources/new.html.erb +3 -0
- data/test/foreman_app/app/views/compute_resources/show.html.erb +56 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_ec2.html.erb +10 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_libvirt.html.erb +33 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_openstack.html.erb +9 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_ovirt.html.erb +43 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_rackspace.html.erb +7 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/_vmware.html.erb +37 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/libvirt/_network.html.erb +9 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/libvirt/_volume.html.erb +6 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/ovirt/_network.html.erb +13 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/ovirt/_volume.html.erb +18 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/vmware/_network.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources_vms/form/vmware/_volume.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources_vms/index.html.erb +3 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_ec2.html.erb +25 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_libvirt.html.erb +23 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_openstack.html.erb +23 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_ovirt.html.erb +24 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_rackspace.html.erb +22 -0
- data/test/foreman_app/app/views/compute_resources_vms/index/_vmware.html.erb +27 -0
- data/test/foreman_app/app/views/compute_resources_vms/new.html.erb +9 -0
- data/test/foreman_app/app/views/compute_resources_vms/show.html.erb +8 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_ec2.html.erb +19 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_libvirt.html.erb +53 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_openstack.html.erb +19 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_ovirt.html.erb +47 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_rackspace.html.erb +19 -0
- data/test/foreman_app/app/views/compute_resources_vms/show/_vmware.html.erb +16 -0
- data/test/foreman_app/app/views/config_templates/_combination.html.erb +5 -0
- data/test/foreman_app/app/views/config_templates/_combinations.html.erb +6 -0
- data/test/foreman_app/app/views/config_templates/_diff.erb +14 -0
- data/test/foreman_app/app/views/config_templates/_form.html.erb +94 -0
- data/test/foreman_app/app/views/config_templates/edit.html.erb +3 -0
- data/test/foreman_app/app/views/config_templates/index.html.erb +31 -0
- data/test/foreman_app/app/views/config_templates/new.html.erb +3 -0
- data/test/foreman_app/app/views/dashboard/_status_table.html.erb +32 -0
- data/test/foreman_app/app/views/dashboard/index.html.erb +24 -0
- data/test/foreman_app/app/views/dashboard/welcome.html.erb +118 -0
- data/test/foreman_app/app/views/domains/_form.html.erb +43 -0
- data/test/foreman_app/app/views/domains/edit.html.erb +3 -0
- data/test/foreman_app/app/views/domains/index.html.erb +20 -0
- data/test/foreman_app/app/views/domains/new.html.erb +3 -0
- data/test/foreman_app/app/views/domains/welcome.html.erb +13 -0
- data/test/foreman_app/app/views/environments/_form.html.erb +38 -0
- data/test/foreman_app/app/views/environments/edit.html.erb +3 -0
- data/test/foreman_app/app/views/environments/index.html.erb +27 -0
- data/test/foreman_app/app/views/environments/new.html.erb +3 -0
- data/test/foreman_app/app/views/environments/welcome.html.erb +15 -0
- data/test/foreman_app/app/views/fact_values/index.html.erb +40 -0
- data/test/foreman_app/app/views/fact_values/welcome.html.erb +9 -0
- data/test/foreman_app/app/views/facts/show.html.erb +3 -0
- data/test/foreman_app/app/views/home/_location_dropdown.html.erb +17 -0
- data/test/foreman_app/app/views/home/_org_switcher.html.erb +11 -0
- data/test/foreman_app/app/views/home/_organization_dropdown.html.erb +17 -0
- data/test/foreman_app/app/views/home/_settings.html.erb +22 -0
- data/test/foreman_app/app/views/home/_topbar.html.erb +33 -0
- data/test/foreman_app/app/views/home/_user_dropdown.html.erb +10 -0
- data/test/foreman_app/app/views/host_mailer/_active_hosts.html.erb +30 -0
- data/test/foreman_app/app/views/host_mailer/_link_to_host.html.erb +5 -0
- data/test/foreman_app/app/views/host_mailer/_list.html.erb +13 -0
- data/test/foreman_app/app/views/host_mailer/_nonactive_hosts.html.erb +30 -0
- data/test/foreman_app/app/views/host_mailer/error_state.html.erb +10 -0
- data/test/foreman_app/app/views/host_mailer/summary.html.erb +17 -0
- data/test/foreman_app/app/views/hostgroups/_form.html.erb +69 -0
- data/test/foreman_app/app/views/hostgroups/edit.html.erb +3 -0
- data/test/foreman_app/app/views/hostgroups/index.html.erb +23 -0
- data/test/foreman_app/app/views/hostgroups/new.html.erb +3 -0
- data/test/foreman_app/app/views/hostgroups/welcome.html.erb +20 -0
- data/test/foreman_app/app/views/hosts/_assign_hosts.html.erb +42 -0
- data/test/foreman_app/app/views/hosts/_compute.html.erb +12 -0
- data/test/foreman_app/app/views/hosts/_conflicts.html.erb +28 -0
- data/test/foreman_app/app/views/hosts/_form.html.erb +109 -0
- data/test/foreman_app/app/views/hosts/_interfaces.html.erb +29 -0
- data/test/foreman_app/app/views/hosts/_list.html.erb +47 -0
- data/test/foreman_app/app/views/hosts/_metrics.html.erb +13 -0
- data/test/foreman_app/app/views/hosts/_operating_system.erb +41 -0
- data/test/foreman_app/app/views/hosts/_overview.html.erb +25 -0
- data/test/foreman_app/app/views/hosts/_progress.erb +8 -0
- data/test/foreman_app/app/views/hosts/_provisioning.html.erb +9 -0
- data/test/foreman_app/app/views/hosts/_selected_hosts.html.erb +31 -0
- data/test/foreman_app/app/views/hosts/_taxonomy_import_option.html.erb +2 -0
- data/test/foreman_app/app/views/hosts/_unattended.html.erb +34 -0
- data/test/foreman_app/app/views/hosts/assign_hosts.html.erb +5 -0
- data/test/foreman_app/app/views/hosts/console/log.html.erb +17 -0
- data/test/foreman_app/app/views/hosts/console/spice.html.erb +18 -0
- data/test/foreman_app/app/views/hosts/console/vnc.html.erb +21 -0
- data/test/foreman_app/app/views/hosts/edit.html.erb +7 -0
- data/test/foreman_app/app/views/hosts/index.html.erb +4 -0
- data/test/foreman_app/app/views/hosts/multiple_build.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/multiple_destroy.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/multiple_disable.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/multiple_enable.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/multiple_parameters.html.erb +12 -0
- data/test/foreman_app/app/views/hosts/multiple_puppetrun.html.erb +5 -0
- data/test/foreman_app/app/views/hosts/new.html.erb +3 -0
- data/test/foreman_app/app/views/hosts/query.html.erb +3 -0
- data/test/foreman_app/app/views/hosts/select_multiple_environment.html.erb +8 -0
- data/test/foreman_app/app/views/hosts/select_multiple_hostgroup.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/select_multiple_location.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/select_multiple_organization.html.erb +6 -0
- data/test/foreman_app/app/views/hosts/show.html.erb +55 -0
- data/test/foreman_app/app/views/hosts/storeconfig_klasses.html.erb +12 -0
- data/test/foreman_app/app/views/hosts/update_multiple_parameters.html.erb +18 -0
- data/test/foreman_app/app/views/hosts/welcome.html.erb +10 -0
- data/test/foreman_app/app/views/images/_form.html.erb +16 -0
- data/test/foreman_app/app/views/images/edit.html.erb +3 -0
- data/test/foreman_app/app/views/images/index.html.erb +26 -0
- data/test/foreman_app/app/views/images/new.html.erb +4 -0
- data/test/foreman_app/app/views/layouts/application.html.erb +69 -0
- data/test/foreman_app/app/views/locations/welcome.html.erb +9 -0
- data/test/foreman_app/app/views/lookup_keys/_fields.html.erb +42 -0
- data/test/foreman_app/app/views/lookup_keys/_value.html.erb +6 -0
- data/test/foreman_app/app/views/lookup_keys/edit.html.erb +7 -0
- data/test/foreman_app/app/views/lookup_keys/index.html.erb +22 -0
- data/test/foreman_app/app/views/media/_form.html.erb +53 -0
- data/test/foreman_app/app/views/media/edit.html.erb +3 -0
- data/test/foreman_app/app/views/media/index.html.erb +26 -0
- data/test/foreman_app/app/views/media/new.html.erb +3 -0
- data/test/foreman_app/app/views/media/welcome.html.erb +19 -0
- data/test/foreman_app/app/views/models/_form.html.erb +8 -0
- data/test/foreman_app/app/views/models/edit.html.erb +3 -0
- data/test/foreman_app/app/views/models/index.html.erb +26 -0
- data/test/foreman_app/app/views/models/new.html.erb +3 -0
- data/test/foreman_app/app/views/operatingsystems/_form.html.erb +38 -0
- data/test/foreman_app/app/views/operatingsystems/_template_defaults.html.erb +19 -0
- data/test/foreman_app/app/views/operatingsystems/_templates.html.erb +2 -0
- data/test/foreman_app/app/views/operatingsystems/edit.html.erb +3 -0
- data/test/foreman_app/app/views/operatingsystems/index.html.erb +22 -0
- data/test/foreman_app/app/views/operatingsystems/new.html.erb +3 -0
- data/test/foreman_app/app/views/organizations/welcome.html.erb +14 -0
- data/test/foreman_app/app/views/ptables/_form.html.erb +8 -0
- data/test/foreman_app/app/views/ptables/edit.html.erb +3 -0
- data/test/foreman_app/app/views/ptables/index.html.erb +23 -0
- data/test/foreman_app/app/views/ptables/new.html.erb +3 -0
- data/test/foreman_app/app/views/ptables/welcome.html.erb +52 -0
- data/test/foreman_app/app/views/puppetclasses/_class_parameters.html.erb +16 -0
- data/test/foreman_app/app/views/puppetclasses/_class_selection.html.erb +44 -0
- data/test/foreman_app/app/views/puppetclasses/_classes.html.erb +23 -0
- data/test/foreman_app/app/views/puppetclasses/_classes_parameters.html.erb +14 -0
- data/test/foreman_app/app/views/puppetclasses/_form.html.erb +90 -0
- data/test/foreman_app/app/views/puppetclasses/_selectedClasses.html.erb +4 -0
- data/test/foreman_app/app/views/puppetclasses/edit.html.erb +3 -0
- data/test/foreman_app/app/views/puppetclasses/index.html.erb +33 -0
- data/test/foreman_app/app/views/puppetclasses/new.html.erb +3 -0
- data/test/foreman_app/app/views/puppetclasses/no_route.html.erb +11 -0
- data/test/foreman_app/app/views/reports/_list.html.erb +34 -0
- data/test/foreman_app/app/views/reports/_metrics.html.erb +25 -0
- data/test/foreman_app/app/views/reports/_output.html.erb +13 -0
- data/test/foreman_app/app/views/reports/index.html.erb +3 -0
- data/test/foreman_app/app/views/reports/show.html.erb +37 -0
- data/test/foreman_app/app/views/reports/welcome.html.erb +11 -0
- data/test/foreman_app/app/views/roles/_form.html.erb +28 -0
- data/test/foreman_app/app/views/roles/edit.html.erb +3 -0
- data/test/foreman_app/app/views/roles/index.html.erb +28 -0
- data/test/foreman_app/app/views/roles/new.html.erb +3 -0
- data/test/foreman_app/app/views/roles/report.html.erb +52 -0
- data/test/foreman_app/app/views/settings/index.html.erb +29 -0
- data/test/foreman_app/app/views/smart_proxies/_form.html.erb +38 -0
- data/test/foreman_app/app/views/smart_proxies/autosign/_form.html.erb +9 -0
- data/test/foreman_app/app/views/smart_proxies/autosign/index.html.erb +21 -0
- data/test/foreman_app/app/views/smart_proxies/autosign/new.html.erb +3 -0
- data/test/foreman_app/app/views/smart_proxies/edit.html.erb +3 -0
- data/test/foreman_app/app/views/smart_proxies/index.html.erb +37 -0
- data/test/foreman_app/app/views/smart_proxies/new.html.erb +3 -0
- data/test/foreman_app/app/views/smart_proxies/puppetca/index.html.erb +36 -0
- data/test/foreman_app/app/views/statistics/index.html.erb +5 -0
- data/test/foreman_app/app/views/subnets/_fields.html.erb +17 -0
- data/test/foreman_app/app/views/subnets/_form.html.erb +34 -0
- data/test/foreman_app/app/views/subnets/edit.html.erb +3 -0
- data/test/foreman_app/app/views/subnets/import.html.erb +26 -0
- data/test/foreman_app/app/views/subnets/index.html.erb +28 -0
- data/test/foreman_app/app/views/subnets/new.html.erb +3 -0
- data/test/foreman_app/app/views/tasks/_list.html.erb +5 -0
- data/test/foreman_app/app/views/tasks/show.html.erb +1 -0
- data/test/foreman_app/app/views/taxonomies/_form.html.erb +111 -0
- data/test/foreman_app/app/views/taxonomies/_step1.html.erb +14 -0
- data/test/foreman_app/app/views/taxonomies/_step2.html.erb +18 -0
- data/test/foreman_app/app/views/taxonomies/clone.html.erb +3 -0
- data/test/foreman_app/app/views/taxonomies/edit.html.erb +4 -0
- data/test/foreman_app/app/views/taxonomies/index.html.erb +39 -0
- data/test/foreman_app/app/views/taxonomies/mismatches.html.erb +37 -0
- data/test/foreman_app/app/views/taxonomies/new.html.erb +3 -0
- data/test/foreman_app/app/views/taxonomies/step2.html.erb +3 -0
- data/test/foreman_app/app/views/trends/_fields.html.erb +7 -0
- data/test/foreman_app/app/views/trends/_form.html.erb +9 -0
- data/test/foreman_app/app/views/trends/_hosts.html.erb +13 -0
- data/test/foreman_app/app/views/trends/edit.html.erb +33 -0
- data/test/foreman_app/app/views/trends/index.html.erb +47 -0
- data/test/foreman_app/app/views/trends/new.html.erb +3 -0
- data/test/foreman_app/app/views/trends/show.html.erb +19 -0
- data/test/foreman_app/app/views/unattended/autowaik.xml.erb +2 -0
- data/test/foreman_app/app/views/unattended/autoyast.xml.erb +80 -0
- data/test/foreman_app/app/views/unattended/gpxe_kickstart_config.erb +5 -0
- data/test/foreman_app/app/views/unattended/grubby.erb +9 -0
- data/test/foreman_app/app/views/unattended/jumpstart.html.erb +10 -0
- data/test/foreman_app/app/views/unattended/jumpstart_finish.html.erb +51 -0
- data/test/foreman_app/app/views/unattended/kickstart.html.erb +71 -0
- data/test/foreman_app/app/views/unattended/preseed.html.erb +66 -0
- data/test/foreman_app/app/views/unattended/preseed_finish.html.erb +7 -0
- data/test/foreman_app/app/views/unattended/pxe_autowaik.erb +3 -0
- data/test/foreman_app/app/views/unattended/pxe_autoyast.erb +4 -0
- data/test/foreman_app/app/views/unattended/pxe_debian_config.erb +4 -0
- data/test/foreman_app/app/views/unattended/pxe_default.erb +23 -0
- data/test/foreman_app/app/views/unattended/pxe_jumpstart_config.erb +10 -0
- data/test/foreman_app/app/views/unattended/pxe_kickstart_config.erb +4 -0
- data/test/foreman_app/app/views/unattended/pxe_local.erb +11 -0
- data/test/foreman_app/app/views/unattended/snippets/_epel.erb +15 -0
- data/test/foreman_app/app/views/unattended/snippets/_http_proxy.erb +8 -0
- data/test/foreman_app/app/views/unattended/snippets/_puppet.conf.erb +15 -0
- data/test/foreman_app/app/views/unattended/snippets/_puppet.init.erb +8 -0
- data/test/foreman_app/app/views/unattended/snippets/_redhat_register.erb +67 -0
- data/test/foreman_app/app/views/unattended/snippets/_vmware.erb +62 -0
- data/test/foreman_app/app/views/usergroups/_form.html.erb +7 -0
- data/test/foreman_app/app/views/usergroups/edit.html.erb +3 -0
- data/test/foreman_app/app/views/usergroups/index.html.erb +24 -0
- data/test/foreman_app/app/views/usergroups/new.html.erb +3 -0
- data/test/foreman_app/app/views/users/_filters.html.erb +38 -0
- data/test/foreman_app/app/views/users/_form.html.erb +58 -0
- data/test/foreman_app/app/views/users/_user_fact.html.erb +14 -0
- data/test/foreman_app/app/views/users/edit.html.erb +3 -0
- data/test/foreman_app/app/views/users/index.html.erb +31 -0
- data/test/foreman_app/app/views/users/login.html.erb +22 -0
- data/test/foreman_app/app/views/users/new.html.erb +3 -0
- data/test/foreman_app/bundler.d/Gemfile.local.rb +2 -0
- data/test/foreman_app/bundler.d/assets.rb +12 -0
- data/test/foreman_app/bundler.d/console.rb +5 -0
- data/test/foreman_app/bundler.d/development.rb +17 -0
- data/test/foreman_app/bundler.d/fog.rb +3 -0
- data/test/foreman_app/bundler.d/i18n.rb +5 -0
- data/test/foreman_app/bundler.d/jsonp.rb +3 -0
- data/test/foreman_app/bundler.d/libvirt.rb +3 -0
- data/test/foreman_app/bundler.d/mysql.rb +3 -0
- data/test/foreman_app/bundler.d/mysql2.rb +3 -0
- data/test/foreman_app/bundler.d/openid.rb +3 -0
- data/test/foreman_app/bundler.d/ovirt.rb +3 -0
- data/test/foreman_app/bundler.d/postgresql.rb +3 -0
- data/test/foreman_app/bundler.d/sqlite.rb +3 -0
- data/test/foreman_app/bundler.d/test.rb +17 -0
- data/test/foreman_app/bundler.d/vmware.rb +3 -0
- data/test/foreman_app/config.ru +8 -0
- data/test/foreman_app/config/application.rb +114 -0
- data/test/foreman_app/config/boot.rb +6 -0
- data/test/foreman_app/config/database.yml +22 -0
- data/test/foreman_app/config/database.yml.example +22 -0
- data/test/foreman_app/config/email.yaml.example +9 -0
- data/test/foreman_app/config/environment.rb +5 -0
- data/test/foreman_app/config/environments/development.rb +38 -0
- data/test/foreman_app/config/environments/production.rb +112 -0
- data/test/foreman_app/config/environments/test.rb +42 -0
- data/test/foreman_app/config/ignored_environments.yml.sample +9 -0
- data/test/foreman_app/config/initializers/apipie.rb +71 -0
- data/test/foreman_app/config/initializers/backtrace_silencers.rb +7 -0
- data/test/foreman_app/config/initializers/email.rb +17 -0
- data/test/foreman_app/config/initializers/fast_gettext.rb +49 -0
- data/test/foreman_app/config/initializers/foreman.rb +24 -0
- data/test/foreman_app/config/initializers/hostable.rb +3 -0
- data/test/foreman_app/config/initializers/inflections.rb +10 -0
- data/test/foreman_app/config/initializers/local_secret_token.rb.example +10 -0
- data/test/foreman_app/config/initializers/mime_types.rb +6 -0
- data/test/foreman_app/config/initializers/puppet.rb +22 -0
- data/test/foreman_app/config/initializers/rack_openid.rb +8 -0
- data/test/foreman_app/config/initializers/secret_token.rb +15 -0
- data/test/foreman_app/config/initializers/session_store.rb +8 -0
- data/test/foreman_app/config/initializers/will_paginate.rb +27 -0
- data/test/foreman_app/config/initializers/wrap_parameters.rb +13 -0
- data/test/foreman_app/config/locales/README +24 -0
- data/test/foreman_app/config/locales/de.yml +203 -0
- data/test/foreman_app/config/locales/en.yml +205 -0
- data/test/foreman_app/config/locales/es.yml +199 -0
- data/test/foreman_app/config/locales/ja.yml +197 -0
- data/test/foreman_app/config/model.mappings.example +342 -0
- data/test/foreman_app/config/routes.rb +332 -0
- data/test/foreman_app/config/routes/api/apipiedoc.rb +4 -0
- data/test/foreman_app/config/routes/api/v1.rb +65 -0
- data/test/foreman_app/config/routes/api/v2.rb +208 -0
- data/test/foreman_app/config/settings.rb +13 -0
- data/test/foreman_app/config/settings.yaml +18 -0
- data/test/foreman_app/config/settings.yaml.example +17 -0
- data/test/foreman_app/db/migrate/20090714132448_create_hosts.rb +47 -0
- data/test/foreman_app/db/migrate/20090714132449_add_audits_table.rb +27 -0
- data/test/foreman_app/db/migrate/20090715143858_create_architectures.rb +19 -0
- data/test/foreman_app/db/migrate/20090717025820_create_media.rb +19 -0
- data/test/foreman_app/db/migrate/20090718060746_create_domains.rb +15 -0
- data/test/foreman_app/db/migrate/20090718064254_create_subnets.rb +18 -0
- data/test/foreman_app/db/migrate/20090720134126_create_operatingsystems.rb +16 -0
- data/test/foreman_app/db/migrate/20090722140138_create_models.rb +16 -0
- data/test/foreman_app/db/migrate/20090722141107_create_environments.rb +18 -0
- data/test/foreman_app/db/migrate/20090729132209_create_reports.rb +14 -0
- data/test/foreman_app/db/migrate/20090730152224_create_ptables.rb +24 -0
- data/test/foreman_app/db/migrate/20090802062223_create_puppetclasses.rb +26 -0
- data/test/foreman_app/db/migrate/20090804130144_create_parameters.rb +13 -0
- data/test/foreman_app/db/migrate/20090820130541_create_auth_sources.rb +25 -0
- data/test/foreman_app/db/migrate/20090905150131_create_hostgroups.rb +24 -0
- data/test/foreman_app/db/migrate/20090905155444_add_type_to_parameter.rb +9 -0
- data/test/foreman_app/db/migrate/20090907045751_add_domain_to_parameter.rb +10 -0
- data/test/foreman_app/db/migrate/20090915030726_change_report_field_type_to_text.rb +13 -0
- data/test/foreman_app/db/migrate/20090916053824_change_host_build_default_to_false.rb +11 -0
- data/test/foreman_app/db/migrate/20090920043521_add_index_to_host.rb +25 -0
- data/test/foreman_app/db/migrate/20090920064156_add_index_to_parameters.rb +15 -0
- data/test/foreman_app/db/migrate/20090920065522_add_index_to_reports.rb +9 -0
- data/test/foreman_app/db/migrate/20091012135004_create_users.rb +19 -0
- data/test/foreman_app/db/migrate/20091016031017_create_sessions.rb +16 -0
- data/test/foreman_app/db/migrate/20091022054108_add_status_to_report.rb +15 -0
- data/test/foreman_app/db/migrate/20091214045923_calc_existing_reports.rb +19 -0
- data/test/foreman_app/db/migrate/20091219132338_create_lookup_keys.rb +14 -0
- data/test/foreman_app/db/migrate/20091219132839_create_lookup_values.rb +17 -0
- data/test/foreman_app/db/migrate/20100115021803_change_mysql_reports_column.rb +14 -0
- data/test/foreman_app/db/migrate/20100310080727_add_family_to_os.rb +33 -0
- data/test/foreman_app/db/migrate/20100325142616_update_fact_names_and_values_to_bin.rb +15 -0
- data/test/foreman_app/db/migrate/20100414125652_add_releasename_to_os.rb +24 -0
- data/test/foreman_app/db/migrate/20100416124600_create_usergroups.rb +17 -0
- data/test/foreman_app/db/migrate/20100419151910_add_owner_to_hosts.rb +26 -0
- data/test/foreman_app/db/migrate/20100523114430_add_ubuntu_custom_lvm_ptable.rb +67 -0
- data/test/foreman_app/db/migrate/20100523141204_create_media_operatingsystems_and_migrate_data.rb +34 -0
- data/test/foreman_app/db/migrate/20100524080302_migrate_installation_medium_uri.rb +15 -0
- data/test/foreman_app/db/migrate/20100525094200_simplify_parameters.rb +62 -0
- data/test/foreman_app/db/migrate/20100601221000_update_os_minor.rb +13 -0
- data/test/foreman_app/db/migrate/20100616114400_change_family_in_os.rb +50 -0
- data/test/foreman_app/db/migrate/20100625155400_create_notices.rb +21 -0
- data/test/foreman_app/db/migrate/20100628123400_add_internal_auth.rb +33 -0
- data/test/foreman_app/db/migrate/20100629093200_create_roles.rb +23 -0
- data/test/foreman_app/db/migrate/20100701081235_add_user_domains_and_hostgroups.rb +20 -0
- data/test/foreman_app/db/migrate/20100822072954_create_user_facts.rb +18 -0
- data/test/foreman_app/db/migrate/20100823181036_add_enabled_to_hosts.rb +9 -0
- data/test/foreman_app/db/migrate/20100914092104_add_my_booleans_to_user.rb +13 -0
- data/test/foreman_app/db/migrate/20101018120548_create_messages.rb +18 -0
- data/test/foreman_app/db/migrate/20101018120603_create_sources.rb +18 -0
- data/test/foreman_app/db/migrate/20101018120621_create_logs.rb +22 -0
- data/test/foreman_app/db/migrate/20101019122857_add_metrics_to_report.rb +9 -0
- data/test/foreman_app/db/migrate/20101019183859_convert_reports.rb +38 -0
- data/test/foreman_app/db/migrate/20101103150254_add_owned_filter_to_user.rb +9 -0
- data/test/foreman_app/db/migrate/20101118130026_correct_media.rb +35 -0
- data/test/foreman_app/db/migrate/20101121080425_create_config_templates.rb +15 -0
- data/test/foreman_app/db/migrate/20101121135521_create_template_combinations.rb +15 -0
- data/test/foreman_app/db/migrate/20101122132041_create_operatingsystems_config_templates.rb +12 -0
- data/test/foreman_app/db/migrate/20101123152150_create_template_kinds.rb +18 -0
- data/test/foreman_app/db/migrate/20101123153303_create_os_default_templates.rb +15 -0
- data/test/foreman_app/db/migrate/20101125153351_add_default_templates.rb +59 -0
- data/test/foreman_app/db/migrate/20101130093613_add_sub_systems_to_subnet.rb +13 -0
- data/test/foreman_app/db/migrate/20101130100315_create_proxies.rb +13 -0
- data/test/foreman_app/db/migrate/20101202104444_add_proxy_to_domain.rb +11 -0
- data/test/foreman_app/db/migrate/20101213085232_add_grubby_template.rb +15 -0
- data/test/foreman_app/db/migrate/20110117162722_add_host_group_defaults.rb +21 -0
- data/test/foreman_app/db/migrate/20110128130239_add_default_pxe_menu_template.rb +15 -0
- data/test/foreman_app/db/migrate/20110213104226_create_proxy_features.rb +28 -0
- data/test/foreman_app/db/migrate/20110216101848_change_puppetmaster_column.rb +21 -0
- data/test/foreman_app/db/migrate/20110301154453_add_managed_to_hosts.rb +15 -0
- data/test/foreman_app/db/migrate/20110321070954_revert_face_names_and_values_to_text_records.rb +13 -0
- data/test/foreman_app/db/migrate/20110327123639_add_priority_to_parameter.rb +11 -0
- data/test/foreman_app/db/migrate/20110404150043_add_media_path_to_medium.rb +13 -0
- data/test/foreman_app/db/migrate/20110407091150_add_image_to_host.rb +15 -0
- data/test/foreman_app/db/migrate/20110412103238_remove_unused_fields_from_puppet_classes.rb +9 -0
- data/test/foreman_app/db/migrate/20110417102947_add_table_bookmarks.rb +31 -0
- data/test/foreman_app/db/migrate/20110420150600_add_solaris_templates.rb +42 -0
- data/test/foreman_app/db/migrate/20110613141800_add_solaris_disks.rb +16 -0
- data/test/foreman_app/db/migrate/20110616080444_add_look_up_key_id_to_puppet_class.rb +28 -0
- data/test/foreman_app/db/migrate/20110617190131_add_sparc_info_to_model.rb +11 -0
- data/test/foreman_app/db/migrate/20110619130336_add_ancestry_to_hostgroup.rb +11 -0
- data/test/foreman_app/db/migrate/20110628115422_create_settings.rb +18 -0
- data/test/foreman_app/db/migrate/20110712064120_update_audits_table.rb +16 -0
- data/test/foreman_app/db/migrate/20110712070522_create_host_class.rb +11 -0
- data/test/foreman_app/db/migrate/20110725142054_add_suse_templates.rb +46 -0
- data/test/foreman_app/db/migrate/20110801090318_add_vm_defaults_to_hostgroup.rb +9 -0
- data/test/foreman_app/db/migrate/20110803114134_add_subnet_and_domain_to_host_groups.rb +11 -0
- data/test/foreman_app/db/migrate/20111124095053_rename_changes_to_audited_changes.rb +9 -0
- data/test/foreman_app/db/migrate/20111124095054_add_remote_address_to_audits.rb +10 -0
- data/test/foreman_app/db/migrate/20111124095055_rename_parent_to_association.rb +11 -0
- data/test/foreman_app/db/migrate/20111205231500_add_gateway_and_dns_to_subnets.rb +13 -0
- data/test/foreman_app/db/migrate/20111227095806_ensure_all_hostnames_are_lowercase.rb +9 -0
- data/test/foreman_app/db/migrate/20120102071633_add_from_and_to_ranges_to_subnets.rb +13 -0
- data/test/foreman_app/db/migrate/20120110113051_create_subnet_domain.rb +21 -0
- data/test/foreman_app/db/migrate/20120122131037_create_compute_resources.rb +19 -0
- data/test/foreman_app/db/migrate/20120126113850_add_uuid_and_compute_id_to_host.rb +11 -0
- data/test/foreman_app/db/migrate/20120127141602_add_windows_templates.rb +47 -0
- data/test/foreman_app/db/migrate/20120311081257_create_nics.rb +52 -0
- data/test/foreman_app/db/migrate/20120313081913_add_puppet_master_proxy_to_host_and_host_group.rb +41 -0
- data/test/foreman_app/db/migrate/20120502105518_update_report_field_to_large_int.rb +9 -0
- data/test/foreman_app/db/migrate/20120506143325_create_images.rb +18 -0
- data/test/foreman_app/db/migrate/20120509131302_add_cert_name_to_host.rb +12 -0
- data/test/foreman_app/db/migrate/20120510113417_create_key_pairs.rb +15 -0
- data/test/foreman_app/db/migrate/20120521142924_add_dns_id_to_subnet.rb +9 -0
- data/test/foreman_app/db/migrate/20120523065531_add_image_id_to_host.rb +9 -0
- data/test/foreman_app/db/migrate/20120529113900_add_user_compute_resources.rb +14 -0
- data/test/foreman_app/db/migrate/20120529115814_add_compute_resources_boolean_to_user.rb +9 -0
- data/test/foreman_app/db/migrate/20120604114049_add_epel_snippets.rb +10 -0
- data/test/foreman_app/db/migrate/20120607074318_convert_params_to_text.rb +11 -0
- data/test/foreman_app/db/migrate/20120612070100_change_bookmark_column_to_text.rb +10 -0
- data/test/foreman_app/db/migrate/20120613082125_rename_association_to_associated.rb +25 -0
- data/test/foreman_app/db/migrate/20120620124658_fix_auditable_type.rb +9 -0
- data/test/foreman_app/db/migrate/20120620124659_fix_associated_type.rb +9 -0
- data/test/foreman_app/db/migrate/20120621135042_create_taxonomies.rb +14 -0
- data/test/foreman_app/db/migrate/20120623002052_add_ok_hosts_book_mark.rb +13 -0
- data/test/foreman_app/db/migrate/20120624081510_add_auditable_name_and_associated_name_to_audit.rb +29 -0
- data/test/foreman_app/db/migrate/20120624093958_add_os_family_to_media.rb +14 -0
- data/test/foreman_app/db/migrate/20120624094034_add_os_family_to_ptable.rb +17 -0
- data/test/foreman_app/db/migrate/20120705130038_add_attributes_to_compute_resources.rb +9 -0
- data/test/foreman_app/db/migrate/20120824142048_add_some_indexes.rb +23 -0
- data/test/foreman_app/db/migrate/20120905095532_create_environment_classes.rb +16 -0
- data/test/foreman_app/db/migrate/20120905131841_add_lookup_keys_override_and_required.rb +15 -0
- data/test/foreman_app/db/migrate/20120916080843_add_lookup_values_count_to_lookup_keys.rb +9 -0
- data/test/foreman_app/db/migrate/20120916080926_cache_lookup_values_count.rb +8 -0
- data/test/foreman_app/db/migrate/20120921000313_add_iam_role_to_images.rb +9 -0
- data/test/foreman_app/db/migrate/20120921105349_create_tokens.rb +15 -0
- data/test/foreman_app/db/migrate/20120927020752_add_bmc_feature_to_proxy.rb +8 -0
- data/test/foreman_app/db/migrate/20121003172526_add_taxonomy_ids_to_hosts.rb +11 -0
- data/test/foreman_app/db/migrate/20121011115320_change_domain_character_count.rb +9 -0
- data/test/foreman_app/db/migrate/20121012170851_create_trends.rb +25 -0
- data/test/foreman_app/db/migrate/20121012170936_create_trend_counters.rb +16 -0
- data/test/foreman_app/db/migrate/20121015113502_update_media_path_limit.rb +9 -0
- data/test/foreman_app/db/migrate/20121018152459_create_hostgroup_classes.rb +11 -0
- data/test/foreman_app/db/migrate/20121026160433_add_localboot_template.rb +15 -0
- data/test/foreman_app/db/migrate/20121029164911_rename_reply_adress_setting.rb +9 -0
- data/test/foreman_app/db/migrate/20121101141448_add_locations_organizations.rb +12 -0
- data/test/foreman_app/db/migrate/20121118120028_migrate_hypervisors_to_compute_resources.rb +20 -0
- data/test/foreman_app/db/migrate/20121118125341_create_taxable_taxonomies.rb +19 -0
- data/test/foreman_app/db/migrate/20121119102104_add_my_taxonomy_to_user.rb +11 -0
- data/test/foreman_app/db/migrate/20121218084123_change_smart_variable_length.rb +9 -0
- data/test/foreman_app/db/migrate/20121219040534_remove_replay_address_setting.rb +8 -0
- data/test/foreman_app/db/migrate/20130109155024_add_ignore_types_to_taxonomy.rb +9 -0
- data/test/foreman_app/db/migrate/20130121130826_add_digest_to_messages.rb +18 -0
- data/test/foreman_app/db/migrate/20130211160200_add_sti_to_hosts.rb +11 -0
- data/test/foreman_app/db/migrate/20130228145456_add_digest_to_sources.rb +22 -0
- data/test/foreman_app/db/migrate/20130329195742_remove_duplicate_snippets.rb +20 -0
- data/test/foreman_app/db/migrate/20130409081924_add_label_to_host_group.rb +18 -0
- data/test/foreman_app/db/migrate/20130417110127_add_sti_to_settings.rb +17 -0
- data/test/foreman_app/db/migrate/20130418134513_fix_sti_host_auditable_type.rb +9 -0
- data/test/foreman_app/db/migrate/20130419145808_add_id_to_user_hostgroup.rb +9 -0
- data/test/foreman_app/db/schema.rb +746 -0
- data/test/foreman_app/db/seeds.rb +9 -0
- data/test/foreman_app/db/test.sqlite3 +0 -0
- data/test/foreman_app/doc/README_FOR_APP +2 -0
- data/test/foreman_app/doc/apipie_examples.yml +4645 -0
- data/test/foreman_app/extras/changelog +39 -0
- data/test/foreman_app/extras/ci/migration.sh +64 -0
- data/test/foreman_app/extras/ci/setup.sh +19 -0
- data/test/foreman_app/extras/cli/foremancli +210 -0
- data/test/foreman_app/extras/dbmigrate +10 -0
- data/test/foreman_app/extras/foreman-release.spec +41 -0
- data/test/foreman_app/extras/foreman.repo +11 -0
- data/test/foreman_app/extras/git2nightly_snapshot +9 -0
- data/test/foreman_app/extras/git2release +22 -0
- data/test/foreman_app/extras/ignored_environments.yml.sample +10 -0
- data/test/foreman_app/extras/jumpstart/README +2 -0
- data/test/foreman_app/extras/jumpstart/admin +11 -0
- data/test/foreman_app/extras/jumpstart/curl +0 -0
- data/test/foreman_app/extras/jumpstart/curl-license +22 -0
- data/test/foreman_app/extras/jumpstart/curl.i386 +0 -0
- data/test/foreman_app/extras/jumpstart/curl.sparc +0 -0
- data/test/foreman_app/extras/jumpstart/dynamic_finish +18 -0
- data/test/foreman_app/extras/jumpstart/dynamic_profile +17 -0
- data/test/foreman_app/extras/jumpstart/nsswitch.conf +34 -0
- data/test/foreman_app/extras/jumpstart/rules +1 -0
- data/test/foreman_app/extras/jumpstart/rules.ok +2 -0
- data/test/foreman_app/extras/jumpstart/sysidcfg/sysidcfg_primary/sysidcfg +12 -0
- data/test/foreman_app/extras/noVNC/websockify.py +5 -0
- data/test/foreman_app/extras/noVNC/websockify/__init__.py +2 -0
- data/test/foreman_app/extras/noVNC/websockify/websocket.py +982 -0
- data/test/foreman_app/extras/noVNC/websockify/websocketproxy.py +393 -0
- data/test/foreman_app/extras/packaging/rpm/rel-eng/comps/comps-foreman-fedora18.xml +76 -0
- data/test/foreman_app/extras/packaging/rpm/rel-eng/comps/comps-foreman-rhel6.xml +115 -0
- data/test/foreman_app/extras/packaging/rpm/rel-eng/packages/foreman +1 -0
- data/test/foreman_app/extras/packaging/rpm/rel-eng/releasers.conf +59 -0
- data/test/foreman_app/extras/packaging/rpm/rel-eng/tito.props +3 -0
- data/test/foreman_app/extras/packaging/rpm/sources/0001-rubygem-actionmailer-fix-dep-versions.patch +19 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.cron.d +27 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.init +154 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.logrotate +10 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.repo +11 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.spec-devel.patch +55 -0
- data/test/foreman_app/extras/packaging/rpm/sources/foreman.sysconfig +21 -0
- data/test/foreman_app/extras/query/ssh_using_foreman +136 -0
- data/test/foreman_app/extras/rdoc/rdoc_prepare_script.rb +51 -0
- data/test/foreman_app/foreman.spec +621 -0
- data/test/foreman_app/lib/api/api_responder.rb +17 -0
- data/test/foreman_app/lib/api/authorization.rb +78 -0
- data/test/foreman_app/lib/api/version1.rb +7 -0
- data/test/foreman_app/lib/api/version2.rb +7 -0
- data/test/foreman_app/lib/api_constraints.rb +15 -0
- data/test/foreman_app/lib/audit_extensions.rb +63 -0
- data/test/foreman_app/lib/core_extensions.rb +100 -0
- data/test/foreman_app/lib/fog_extensions.rb +45 -0
- data/test/foreman_app/lib/fog_extensions/aws/flavor.rb +9 -0
- data/test/foreman_app/lib/fog_extensions/aws/server.rb +18 -0
- data/test/foreman_app/lib/fog_extensions/libvirt/server.rb +24 -0
- data/test/foreman_app/lib/fog_extensions/model.rb +27 -0
- data/test/foreman_app/lib/fog_extensions/openstack/flavor.rb +13 -0
- data/test/foreman_app/lib/fog_extensions/openstack/server.rb +40 -0
- data/test/foreman_app/lib/fog_extensions/ovirt/server.rb +15 -0
- data/test/foreman_app/lib/fog_extensions/ovirt/volume.rb +11 -0
- data/test/foreman_app/lib/fog_extensions/vsphere/folder.rb +14 -0
- data/test/foreman_app/lib/fog_extensions/vsphere/mini_server.rb +20 -0
- data/test/foreman_app/lib/fog_extensions/vsphere/mini_servers.rb +22 -0
- data/test/foreman_app/lib/fog_extensions/vsphere/server.rb +19 -0
- data/test/foreman_app/lib/foreman.rb +14 -0
- data/test/foreman_app/lib/foreman/access_control.rb +120 -0
- data/test/foreman_app/lib/foreman/access_permissions.rb +572 -0
- data/test/foreman_app/lib/foreman/controller.rb +2 -0
- data/test/foreman_app/lib/foreman/controller/auto_complete_search.rb +23 -0
- data/test/foreman_app/lib/foreman/controller/environments.rb +36 -0
- data/test/foreman_app/lib/foreman/controller/host_details.rb +69 -0
- data/test/foreman_app/lib/foreman/controller/smart_proxy_auth.rb +68 -0
- data/test/foreman_app/lib/foreman/controller/taxonomies_controller.rb +178 -0
- data/test/foreman_app/lib/foreman/controller/taxonomy_multiple.rb +56 -0
- data/test/foreman_app/lib/foreman/default_data/loader.rb +166 -0
- data/test/foreman_app/lib/foreman/exception.rb +37 -0
- data/test/foreman_app/lib/foreman/importer_puppetclass.rb +48 -0
- data/test/foreman_app/lib/foreman/model.rb +2 -0
- data/test/foreman_app/lib/foreman/model/ec2.rb +128 -0
- data/test/foreman_app/lib/foreman/model/libvirt.rb +150 -0
- data/test/foreman_app/lib/foreman/model/openstack.rb +130 -0
- data/test/foreman_app/lib/foreman/model/ovirt.rb +250 -0
- data/test/foreman_app/lib/foreman/model/rackspace.rb +108 -0
- data/test/foreman_app/lib/foreman/model/vmware.rb +181 -0
- data/test/foreman_app/lib/foreman/provision.rb +3 -0
- data/test/foreman_app/lib/foreman/provision/ssh.rb +102 -0
- data/test/foreman_app/lib/foreman/renderer.rb +68 -0
- data/test/foreman_app/lib/foreman/sti.rb +30 -0
- data/test/foreman_app/lib/foreman/thread_session.rb +163 -0
- data/test/foreman_app/lib/foreman/util.rb +25 -0
- data/test/foreman_app/lib/foreman/wrapped_exception.rb +23 -0
- data/test/foreman_app/lib/net.rb +50 -0
- data/test/foreman_app/lib/net/dhcp.rb +6 -0
- data/test/foreman_app/lib/net/dhcp/record.rb +56 -0
- data/test/foreman_app/lib/net/dhcp/sparc_record.rb +25 -0
- data/test/foreman_app/lib/net/dns.rb +78 -0
- data/test/foreman_app/lib/net/dns/a_record.rb +47 -0
- data/test/foreman_app/lib/net/dns/ptr_record.rb +52 -0
- data/test/foreman_app/lib/net/validations.rb +47 -0
- data/test/foreman_app/lib/orchestration/queue.rb +58 -0
- data/test/foreman_app/lib/proxy_api.rb +6 -0
- data/test/foreman_app/lib/proxy_api/bmc.rb +120 -0
- data/test/foreman_app/lib/proxy_api/dhcp.rb +70 -0
- data/test/foreman_app/lib/proxy_api/dns.rb +26 -0
- data/test/foreman_app/lib/proxy_api/features.rb +12 -0
- data/test/foreman_app/lib/proxy_api/puppet.rb +28 -0
- data/test/foreman_app/lib/proxy_api/puppetca.rb +38 -0
- data/test/foreman_app/lib/proxy_api/resource.rb +90 -0
- data/test/foreman_app/lib/proxy_api/tftp.rb +54 -0
- data/test/foreman_app/lib/puppet_setting.rb +69 -0
- data/test/foreman_app/lib/regexp_extensions.rb +14 -0
- data/test/foreman_app/lib/sso.rb +13 -0
- data/test/foreman_app/lib/sso/apache.rb +16 -0
- data/test/foreman_app/lib/sso/base.rb +27 -0
- data/test/foreman_app/lib/sso/signo.rb +60 -0
- data/test/foreman_app/lib/task.rb +39 -0
- data/test/foreman_app/lib/tasks/convert.rake +127 -0
- data/test/foreman_app/lib/tasks/exception.rake +32 -0
- data/test/foreman_app/lib/tasks/gettext.rake +9 -0
- data/test/foreman_app/lib/tasks/hosts.rake +67 -0
- data/test/foreman_app/lib/tasks/jenkins.rake +19 -0
- data/test/foreman_app/lib/tasks/load_default_data.rake +16 -0
- data/test/foreman_app/lib/tasks/locale.rake +43 -0
- data/test/foreman_app/lib/tasks/model.rake +83 -0
- data/test/foreman_app/lib/tasks/patches.rake +19 -0
- data/test/foreman_app/lib/tasks/pkg.rake +19 -0
- data/test/foreman_app/lib/tasks/puppet.rake +178 -0
- data/test/foreman_app/lib/tasks/reports.rake +82 -0
- data/test/foreman_app/lib/tasks/reset_permissions.rake +20 -0
- data/test/foreman_app/lib/tasks/security.rake +21 -0
- data/test/foreman_app/lib/tasks/smartproxy.rake +58 -0
- data/test/foreman_app/lib/tasks/test_api_dir.rake +10 -0
- data/test/foreman_app/lib/tasks/test_lib_dir.rake +14 -0
- data/test/foreman_app/lib/tasks/trends.rake +32 -0
- data/test/foreman_app/lib/timed_cached_store.rb +55 -0
- data/test/foreman_app/lib/ws_proxy.rb +78 -0
- data/test/foreman_app/locale/Makefile +54 -0
- data/test/foreman_app/locale/README +26 -0
- data/test/foreman_app/locale/de/foreman.po +4477 -0
- data/test/foreman_app/locale/en/foreman.po +4198 -0
- data/test/foreman_app/locale/es/foreman.po +4494 -0
- data/test/foreman_app/locale/foreman.pot +4198 -0
- data/test/foreman_app/locale/ja/foreman.po +4215 -0
- data/test/foreman_app/locale/model_attributes.rb +442 -0
- data/test/foreman_app/log/test.log +36021 -0
- data/test/foreman_app/public/404.html +26 -0
- data/test/foreman_app/public/422.html +26 -0
- data/test/foreman_app/public/500.html +26 -0
- data/test/foreman_app/public/blank.html +33 -0
- data/test/foreman_app/public/favicon.ico +0 -0
- data/test/foreman_app/public/robots.txt +5 -0
- data/test/foreman_app/script/foreman-config +147 -0
- data/test/foreman_app/script/performance/benchmarker +3 -0
- data/test/foreman_app/script/performance/profiler +3 -0
- data/test/foreman_app/script/rails +6 -0
- data/test/foreman_app/script/show-missing-rails-locales.sh +25 -0
- data/test/foreman_app/script/update-rails-locales.sh +16 -0
- data/test/foreman_app/test/fixtures/architectures.yml +10 -0
- data/test/foreman_app/test/fixtures/audits.yml +18 -0
- data/test/foreman_app/test/fixtures/auth_sources.yml +20 -0
- data/test/foreman_app/test/fixtures/bookmarks.yml +13 -0
- data/test/foreman_app/test/fixtures/brslc022.facts.yaml +68 -0
- data/test/foreman_app/test/fixtures/compute_resources.yml +28 -0
- data/test/foreman_app/test/fixtures/config_templates.yml +47 -0
- data/test/foreman_app/test/fixtures/domains.yml +18 -0
- data/test/foreman_app/test/fixtures/environment_classes.yml +15 -0
- data/test/foreman_app/test/fixtures/environments.yml +10 -0
- data/test/foreman_app/test/fixtures/fact_names.yml +5 -0
- data/test/foreman_app/test/fixtures/fact_values.yml +11 -0
- data/test/foreman_app/test/fixtures/features.yml +23 -0
- data/test/foreman_app/test/fixtures/host_classes.yml +9 -0
- data/test/foreman_app/test/fixtures/hostgroup_classes.yml +9 -0
- data/test/foreman_app/test/fixtures/hostgroups.yml +24 -0
- data/test/foreman_app/test/fixtures/hosts.yml +198 -0
- data/test/foreman_app/test/fixtures/images.yml +16 -0
- data/test/foreman_app/test/fixtures/key_pairs.yml +7 -0
- data/test/foreman_app/test/fixtures/logs.yml +11 -0
- data/test/foreman_app/test/fixtures/lookup_keys.yml +32 -0
- data/test/foreman_app/test/fixtures/media.yml +25 -0
- data/test/foreman_app/test/fixtures/messages.yml +7 -0
- data/test/foreman_app/test/fixtures/models.yml +10 -0
- data/test/foreman_app/test/fixtures/notices.yml +7 -0
- data/test/foreman_app/test/fixtures/operatingsystems.yml +49 -0
- data/test/foreman_app/test/fixtures/os_default_templates.yml +21 -0
- data/test/foreman_app/test/fixtures/parameters.yml +30 -0
- data/test/foreman_app/test/fixtures/ptables.yml +17 -0
- data/test/foreman_app/test/fixtures/puppetclasses.yml +13 -0
- data/test/foreman_app/test/fixtures/report-2.6.12-noops.yaml +627 -0
- data/test/foreman_app/test/fixtures/report-2.6.5-errors.yaml +60 -0
- data/test/foreman_app/test/fixtures/report-2.6.5.yaml +413 -0
- data/test/foreman_app/test/fixtures/report-3.0.1.yaml +283 -0
- data/test/foreman_app/test/fixtures/report-applied.yaml +86 -0
- data/test/foreman_app/test/fixtures/report-empty.yaml +31 -0
- data/test/foreman_app/test/fixtures/report-errors.yaml +66 -0
- data/test/foreman_app/test/fixtures/report-skipped.yaml +86 -0
- data/test/foreman_app/test/fixtures/reports.yml +13 -0
- data/test/foreman_app/test/fixtures/roles.yml +198 -0
- data/test/foreman_app/test/fixtures/sample_http_preseed_template +66 -0
- data/test/foreman_app/test/fixtures/sample_tokenised_template +66 -0
- data/test/foreman_app/test/fixtures/settings.yml +176 -0
- data/test/foreman_app/test/fixtures/smart_proxies.yml +23 -0
- data/test/foreman_app/test/fixtures/sources.yml +7 -0
- data/test/foreman_app/test/fixtures/subnet_domains.yml +9 -0
- data/test/foreman_app/test/fixtures/subnets.yml +26 -0
- data/test/foreman_app/test/fixtures/taxable_taxonomies.yml +15 -0
- data/test/foreman_app/test/fixtures/taxonomies.yml +15 -0
- data/test/foreman_app/test/fixtures/template_combinations.yml +19 -0
- data/test/foreman_app/test/fixtures/template_kinds.yml +14 -0
- data/test/foreman_app/test/fixtures/trend_counters.yml +9 -0
- data/test/foreman_app/test/fixtures/trends.yml +9 -0
- data/test/foreman_app/test/fixtures/trends_controller_test.rb +8 -0
- data/test/foreman_app/test/fixtures/user_facts.yml +7 -0
- data/test/foreman_app/test/fixtures/usergroups.yml +7 -0
- data/test/foreman_app/test/fixtures/users.yml +52 -0
- data/test/foreman_app/test/functional/api/v1/architectures_controller_test.rb +79 -0
- data/test/foreman_app/test/functional/api/v1/audits_controller_test.rb +20 -0
- data/test/foreman_app/test/functional/api/v1/auth_source_ldaps_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/bookmarks_controller_test.rb +60 -0
- data/test/foreman_app/test/functional/api/v1/common_parameters_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/compute_resources_controller_test.rb +50 -0
- data/test/foreman_app/test/functional/api/v1/config_templates_controller_test.rb +82 -0
- data/test/foreman_app/test/functional/api/v1/dashboard_controller_test.rb +12 -0
- data/test/foreman_app/test/functional/api/v1/domains_controller_test.rb +50 -0
- data/test/foreman_app/test/functional/api/v1/environments_controller_test.rb +40 -0
- data/test/foreman_app/test/functional/api/v1/fact_values_controller_test.rb +19 -0
- data/test/foreman_app/test/functional/api/v1/home_controller_test.rb +11 -0
- data/test/foreman_app/test/functional/api/v1/hostgroups_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/hosts_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/api/v1/images_controller_test.rb +47 -0
- data/test/foreman_app/test/functional/api/v1/lookup_keys_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/media_controller_test.rb +48 -0
- data/test/foreman_app/test/functional/api/v1/models_controller_test.rb +43 -0
- data/test/foreman_app/test/functional/api/v1/operatingsystems_controller_test.rb +55 -0
- data/test/foreman_app/test/functional/api/v1/ptables_controller_test.rb +48 -0
- data/test/foreman_app/test/functional/api/v1/puppetclasses_controller_test.rb +40 -0
- data/test/foreman_app/test/functional/api/v1/reports_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/api/v1/roles_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/settings_controller_test.rb +25 -0
- data/test/foreman_app/test/functional/api/v1/smart_proxies_controller_test.rb +72 -0
- data/test/foreman_app/test/functional/api/v1/subnets_controller_test.rb +58 -0
- data/test/foreman_app/test/functional/api/v1/template_kinds_controller_test.rb +11 -0
- data/test/foreman_app/test/functional/api/v1/usergroups_controller_test.rb +41 -0
- data/test/foreman_app/test/functional/api/v1/users_controller_test.rb +137 -0
- data/test/foreman_app/test/functional/api/v2/config_templates_controller_test.rb +80 -0
- data/test/foreman_app/test/functional/api/v2/domains_controller_test.rb +32 -0
- data/test/foreman_app/test/functional/api/v2/host_classes_controller_test.rb +29 -0
- data/test/foreman_app/test/functional/api/v2/hostgroup_class_controller_test.rb +29 -0
- data/test/foreman_app/test/functional/api/v2/locations_controller_test.rb +85 -0
- data/test/foreman_app/test/functional/api/v2/parameters_controller_test.rb +180 -0
- data/test/foreman_app/test/functional/api/v2/puppetclasses_controller_test.rb +103 -0
- data/test/foreman_app/test/functional/api/v2/template_combinations_controller_test.rb +38 -0
- data/test/foreman_app/test/functional/architectures_controller_test.rb +97 -0
- data/test/foreman_app/test/functional/audits_controller_test.rb +29 -0
- data/test/foreman_app/test/functional/auth_source_ldaps_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/bookmarks_controller_test.rb +51 -0
- data/test/foreman_app/test/functional/common_parameters_controller_test.rb +69 -0
- data/test/foreman_app/test/functional/compute_resources_controller_test.rb +157 -0
- data/test/foreman_app/test/functional/compute_resources_vms_controller_test.rb +160 -0
- data/test/foreman_app/test/functional/config_templates_controller_test.rb +132 -0
- data/test/foreman_app/test/functional/dashboard_controller_test.rb +38 -0
- data/test/foreman_app/test/functional/domains_controller_test.rb +101 -0
- data/test/foreman_app/test/functional/environments_controller_test.rb +234 -0
- data/test/foreman_app/test/functional/fact_values_controller_test.rb +138 -0
- data/test/foreman_app/test/functional/facts_controller_test.rb +12 -0
- data/test/foreman_app/test/functional/home_controller_test.rb +9 -0
- data/test/foreman_app/test/functional/hostgroups_controller_test.rb +125 -0
- data/test/foreman_app/test/functional/hosts_controller_test.rb +830 -0
- data/test/foreman_app/test/functional/images_controller_test.rb +55 -0
- data/test/foreman_app/test/functional/locations_controller_test.rb +149 -0
- data/test/foreman_app/test/functional/lookup_keys_controller_test.rb +43 -0
- data/test/foreman_app/test/functional/lookup_values_controller_test.rb +8 -0
- data/test/foreman_app/test/functional/media_controller_test.rb +95 -0
- data/test/foreman_app/test/functional/models_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/notices_controller_test.rb +36 -0
- data/test/foreman_app/test/functional/operatingsystems_controller_test.rb +104 -0
- data/test/foreman_app/test/functional/organizations_controller_test.rb +148 -0
- data/test/foreman_app/test/functional/ptables_controller_test.rb +142 -0
- data/test/foreman_app/test/functional/puppetclasses_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/reports_controller_test.rb +191 -0
- data/test/foreman_app/test/functional/roles_controller_test.rb +124 -0
- data/test/foreman_app/test/functional/settings_controller_test.rb +34 -0
- data/test/foreman_app/test/functional/smart_proxies/autosign_controller_test.rb +8 -0
- data/test/foreman_app/test/functional/smart_proxies/puppetca_controller_test.rb +8 -0
- data/test/foreman_app/test/functional/smart_proxies_controller_test.rb +85 -0
- data/test/foreman_app/test/functional/statistics_controller_test.rb +21 -0
- data/test/foreman_app/test/functional/subnets_controller_test.rb +89 -0
- data/test/foreman_app/test/functional/tasks_controller_test.rb +8 -0
- data/test/foreman_app/test/functional/unattended_controller_test.rb +141 -0
- data/test/foreman_app/test/functional/usergroups_controller_test.rb +66 -0
- data/test/foreman_app/test/functional/users_controller_test.rb +147 -0
- data/test/foreman_app/test/lib/foreman/access_permissions_test.rb +50 -0
- data/test/foreman_app/test/lib/foreman/default_settings/loader_test.rb +39 -0
- data/test/foreman_app/test/lib/foreman/model/ovirt_test.rb +72 -0
- data/test/foreman_app/test/lib/foreman/renderer_test.rb +32 -0
- data/test/foreman_app/test/lib/foreman/util_test.rb +40 -0
- data/test/foreman_app/test/lib/net/dhcp_test.rb +39 -0
- data/test/foreman_app/test/lib/net/net_test.rb +21 -0
- data/test/foreman_app/test/lib/net/validations_test.rb +19 -0
- data/test/foreman_app/test/lib/proxy_api/bmc_test.rb +256 -0
- data/test/foreman_app/test/lib/proxy_api/dhcp_test.rb +60 -0
- data/test/foreman_app/test/lib/puppet_setting_test.rb +92 -0
- data/test/foreman_app/test/performance/browsing_test.rb +9 -0
- data/test/foreman_app/test/test_helper.rb +164 -0
- data/test/foreman_app/test/unit/architecture_test.rb +106 -0
- data/test/foreman_app/test/unit/auth_source_ldap_test.rb +205 -0
- data/test/foreman_app/test/unit/auth_source_test.rb +34 -0
- data/test/foreman_app/test/unit/bookmark_test.rb +32 -0
- data/test/foreman_app/test/unit/classification_test.rb +46 -0
- data/test/foreman_app/test/unit/common_parameter_test.rb +100 -0
- data/test/foreman_app/test/unit/compute_resource_test.rb +88 -0
- data/test/foreman_app/test/unit/config_template_test.rb +67 -0
- data/test/foreman_app/test/unit/domain_parameter_test.rb +106 -0
- data/test/foreman_app/test/unit/domain_test.rb +161 -0
- data/test/foreman_app/test/unit/environment_class_test.rb +9 -0
- data/test/foreman_app/test/unit/environment_test.rb +35 -0
- data/test/foreman_app/test/unit/fact_value_test.rb +25 -0
- data/test/foreman_app/test/unit/facts.yml +91 -0
- data/test/foreman_app/test/unit/facts_importer_test.rb +50 -0
- data/test/foreman_app/test/unit/facts_with_caps.yml +91 -0
- data/test/foreman_app/test/unit/feature_test.rb +8 -0
- data/test/foreman_app/test/unit/group_parameter_test.rb +108 -0
- data/test/foreman_app/test/unit/helpers/architecture_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/audit_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/auth_sources_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/bookmarks_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/compute_resources_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/dashboard_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/domain_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/environments_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/fact_values_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/home_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/host_groups_helper_test.rb +14 -0
- data/test/foreman_app/test/unit/helpers/hosts_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/images_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/lookup_keys_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/medium_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/model_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/operatingsystem_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/parameters_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/ptables_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/puppetclasses_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/reports_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/smart_proxies/autosign_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/smart_proxies/puppetca_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/statistics_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/tasks_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/trends_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/unattended_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/usergroups_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/helpers/users_helper_test.rb +4 -0
- data/test/foreman_app/test/unit/host_class_test.rb +8 -0
- data/test/foreman_app/test/unit/host_mailer_test.rb +70 -0
- data/test/foreman_app/test/unit/host_observer_test.rb +35 -0
- data/test/foreman_app/test/unit/host_parameter_test.rb +119 -0
- data/test/foreman_app/test/unit/host_test.rb +606 -0
- data/test/foreman_app/test/unit/hostgroup_class_test.rb +11 -0
- data/test/foreman_app/test/unit/hostgroup_test.rb +178 -0
- data/test/foreman_app/test/unit/image_test.rb +5 -0
- data/test/foreman_app/test/unit/key_pair_test.rb +4 -0
- data/test/foreman_app/test/unit/location_test.rb +162 -0
- data/test/foreman_app/test/unit/log_test.rb +8 -0
- data/test/foreman_app/test/unit/lookup_key_test.rb +88 -0
- data/test/foreman_app/test/unit/medium_test.rb +120 -0
- data/test/foreman_app/test/unit/message_test.rb +8 -0
- data/test/foreman_app/test/unit/model_test.rb +90 -0
- data/test/foreman_app/test/unit/nic_test.rb +49 -0
- data/test/foreman_app/test/unit/notice_test.rb +19 -0
- data/test/foreman_app/test/unit/operatingsystem_test.rb +139 -0
- data/test/foreman_app/test/unit/orchestration/dhcp_test.rb +161 -0
- data/test/foreman_app/test/unit/orchestration/dns_test.rb +54 -0
- data/test/foreman_app/test/unit/orchestration/pxe_local_template +11 -0
- data/test/foreman_app/test/unit/orchestration/pxe_template +4 -0
- data/test/foreman_app/test/unit/orchestration/tftp_test.rb +49 -0
- data/test/foreman_app/test/unit/orchestration_test.rb +25 -0
- data/test/foreman_app/test/unit/organization_test.rb +163 -0
- data/test/foreman_app/test/unit/os_default_template_test.rb +8 -0
- data/test/foreman_app/test/unit/parameter_test.rb +44 -0
- data/test/foreman_app/test/unit/ptable_test.rb +119 -0
- data/test/foreman_app/test/unit/puppet_class_importer_test.rb +67 -0
- data/test/foreman_app/test/unit/puppetclass_test.rb +90 -0
- data/test/foreman_app/test/unit/report_test.rb +196 -0
- data/test/foreman_app/test/unit/role_test.rb +104 -0
- data/test/foreman_app/test/unit/setting_test.rb +158 -0
- data/test/foreman_app/test/unit/smart_proxy_test.rb +27 -0
- data/test/foreman_app/test/unit/source_test.rb +8 -0
- data/test/foreman_app/test/unit/sso.rb +26 -0
- data/test/foreman_app/test/unit/sso/apache_test.rb +38 -0
- data/test/foreman_app/test/unit/sso/base_test.rb +14 -0
- data/test/foreman_app/test/unit/sso/signo_test.rb +81 -0
- data/test/foreman_app/test/unit/subnet_domain_test.rb +8 -0
- data/test/foreman_app/test/unit/subnet_test.rb +182 -0
- data/test/foreman_app/test/unit/suse_test.rb +46 -0
- data/test/foreman_app/test/unit/taxable_taxonomy_test.rb +8 -0
- data/test/foreman_app/test/unit/template_combination_test.rb +8 -0
- data/test/foreman_app/test/unit/template_kind_test.rb +8 -0
- data/test/foreman_app/test/unit/token_test.rb +67 -0
- data/test/foreman_app/test/unit/trend_counter_test.rb +8 -0
- data/test/foreman_app/test/unit/trend_test.rb +8 -0
- data/test/foreman_app/test/unit/user_fact_test.rb +8 -0
- data/test/foreman_app/test/unit/user_test.rb +196 -0
- data/test/foreman_app/test/unit/usergroup_test.rb +161 -0
- data/test/foreman_app/tmp/cache/505/030/idle_timeout +1 -0
- data/test/foreman_app/tmp/cache/505/C00/use_gravatar +1 -0
- data/test/foreman_app/tmp/cache/7D9/CD0/email_reply_address +1 -0
- data/test/foreman_app/tmp/cache/94D/A30/discovery_organization +1 -0
- data/test/foreman_app/tmp/cache/ACF/DB0/authorize_login_delegation +1 -0
- data/test/foreman_app/tmp/secret_token +1 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_bold-web.eot +0 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_bold-web.svg +470 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_bold-web.ttf +0 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_bold-web.woff +0 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_regular-web.eot +0 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_regular-web.svg +470 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_regular-web.ttf +0 -0
- data/test/foreman_app/vendor/assets/fonts/overpass_regular-web.woff +0 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/ace.js +10 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/cockpit.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/ext-static_highlight.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/ext-textarea.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/keybinding-emacs.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/keybinding-vim.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/mode-diff.js +165 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/mode-ruby.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/mode-sh.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/theme-clouds.js +137 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/theme-dawn.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/theme-textmate.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/theme-twilight.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/worker-coffee.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/worker-css.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/worker-javascript.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/worker-json.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/ace/worker-xquery.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/background-size.htc +7 -0
- data/test/foreman_app/vendor/assets/javascripts/diff.js +296 -0
- data/test/foreman_app/vendor/assets/javascripts/flot.js +5 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.cookie.js +91 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.dataTables.bootstrap-paging.js +101 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.dataTables.min.js +155 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.jeditable.js +556 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.jnotify.js +209 -0
- data/test/foreman_app/vendor/assets/javascripts/jquery.multi-select.js +503 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/base64.js +147 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/des.js +273 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/display.js +700 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/input.js +1911 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/jsunzip.js +668 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/logo.js +1 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/playback.js +90 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/rfb.js +1846 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/ui.js +649 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/util.js +303 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/web-socket-js/README.txt +109 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/web-socket-js/swfobject.js +4 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/web-socket-js/web_socket.js +341 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/websock.js +356 -0
- data/test/foreman_app/vendor/assets/javascripts/noVNC/webutil.js +148 -0
- data/test/foreman_app/vendor/assets/javascripts/vendor.js +7 -0
- data/test/foreman_app/vendor/assets/stylesheets/jquery.jnotify.css +97 -0
- data/test/foreman_app/vendor/assets/stylesheets/multi-select.scss +126 -0
- data/test/foreman_app/vendor/assets/stylesheets/vendor.css +3 -0
- data/test/functional/discovers_controller_test.rb +40 -0
- data/test/test_helper.rb +28 -0
- data/test/unit/facts.yml +91 -0
- data/test/unit/host_discovered_test.rb +23 -0
- data/test/unit/setting_discovered_test.rb +9 -0
- metadata +2816 -0
data/README.md
ADDED
@@ -0,0 +1,128 @@
|
|
1
|
+
# foreman\_discovery
|
2
|
+
|
3
|
+
This plugin aims to enable MaaS hardware discovery in Foreman. It is of alpha quality
|
4
|
+
right now ;)
|
5
|
+
|
6
|
+
# Dependencies
|
7
|
+
|
8
|
+
* Foreman running from commit e36b1d6689773a9b (or newer)
|
9
|
+
|
10
|
+
# Installation
|
11
|
+
|
12
|
+
Require the gem in Foreman.
|
13
|
+
|
14
|
+
bundler.d/Gemfile.local.rb:
|
15
|
+
gem 'foreman_discovery'
|
16
|
+
|
17
|
+
If you want to use the very latest code, use a git gem:
|
18
|
+
|
19
|
+
gem 'foreman_discovery', :git => "https://github.com/theforeman/foreman_discovery.git"
|
20
|
+
|
21
|
+
Update & Restart Foreman:
|
22
|
+
|
23
|
+
bundle update
|
24
|
+
|
25
|
+
# Building the Discovery PXE Image
|
26
|
+
|
27
|
+
There is a rake task for the discovery image. Run this in the Foreman app root:
|
28
|
+
|
29
|
+
rake discovery:build_image
|
30
|
+
|
31
|
+
You image will be in ./discovery\_image. Run the rake task as root, or with passwordless
|
32
|
+
sudo, as the password prompts may get lost in the ruby->bash forking process.
|
33
|
+
|
34
|
+
# Configuration
|
35
|
+
|
36
|
+
## Image configuration
|
37
|
+
|
38
|
+
The PXE image has no configuration options during build. However, it will attempt to
|
39
|
+
download `/discovery_init.sh` from your Foreman server and run it. This is entirely
|
40
|
+
optional - if the server cannot be reached or the file cannot be found, the image
|
41
|
+
has a fallback script built in.
|
42
|
+
|
43
|
+
You can find an example script [here](extra/discovery_init.sh.example) - place your
|
44
|
+
modified version in the `public/` directory on your Foreman server.
|
45
|
+
|
46
|
+
## PXE config
|
47
|
+
|
48
|
+
Configure the PXE default to boot the Discovery Image built above, eg:
|
49
|
+
|
50
|
+
DEFAULT menu
|
51
|
+
PROMPT 0
|
52
|
+
MENU TITLE PXE Menu
|
53
|
+
TIMEOUT 200
|
54
|
+
TOTALTIMEOUT 6000
|
55
|
+
ONTIMEOUT discovery
|
56
|
+
|
57
|
+
LABEL discovery
|
58
|
+
MENU LABEL Boot Discovery
|
59
|
+
TEXT HELP
|
60
|
+
Boot the Foreman Discovery Image
|
61
|
+
Use TAB to edit options for specific needs.
|
62
|
+
ENDTEXT
|
63
|
+
KERNEL /boot/TinyCore-vmlinuz
|
64
|
+
APPEND initrd=/boot/TinyCore-initrd.gz foreman.ip=192.168.122.1:3000
|
65
|
+
|
66
|
+
Be sure to alter the foreman.ip appropriately. You can also use foreman.server to
|
67
|
+
specify a DNS record (`foreman.server=myforemanhost`) but in this case the port will
|
68
|
+
be assumed to be http (80). If all else fails (say, USB boot where we can't provide
|
69
|
+
options) it will look for a DNS record of `foreman`
|
70
|
+
|
71
|
+
## UI config
|
72
|
+
|
73
|
+
No configuration of the Foreman UI is required. If you are using Locations and/or Organisations,
|
74
|
+
Foreman will default to using the first Location and first Organisation for Discovered
|
75
|
+
hosts. If you wish to place them in some other Location/Organization, you can alter the
|
76
|
+
default Loc/Org in `More->Settings->Discovery Settings`
|
77
|
+
|
78
|
+
## Grace Note: Testing
|
79
|
+
|
80
|
+
If you only wish to test the plugin code itself, you don't need to create the PXE boot
|
81
|
+
image above, or have a TFTP server to run it from. Simply POST a hash of Host Facts to
|
82
|
+
`/fact_values/create?type=Host::Discovered`.The
|
83
|
+
[script](extra/discover_host#L73)
|
84
|
+
in my PXE image that does this can be used as an example.
|
85
|
+
|
86
|
+
The uploaded hash will appear as a discovered host, and provisioning it should work.
|
87
|
+
|
88
|
+
# Usage
|
89
|
+
|
90
|
+
Boot a machine using the new PXE config above. It should register with Foreman.
|
91
|
+
The new Host should show up in `More->Discovered Hosts`. Then select a Discovered Host
|
92
|
+
and choose Provision. You'll be taken to the normal Edit page for a Host, with the
|
93
|
+
discovered data filled in where possible. Fill in the details as normal.
|
94
|
+
|
95
|
+
On save, a reboot is sent to the discovered host, after which it should reboot into
|
96
|
+
the installer for the chosen OS, and finally into the installed OS.
|
97
|
+
|
98
|
+
Delete a machine and reboot it to have it move back to the Discovery Pool.
|
99
|
+
|
100
|
+
# Permissions
|
101
|
+
|
102
|
+
The plugin will create a Role called `Discovery` when first started. You can assign
|
103
|
+
this role to non-admins to allow them to use the discovery plugin. Alternatively
|
104
|
+
assign the `:perform_discovery` permission to an existing Role.
|
105
|
+
|
106
|
+
# TODO
|
107
|
+
|
108
|
+
* Add Tests
|
109
|
+
* Add API
|
110
|
+
* Add proper Location/Organization handling (via a Wizard maybe?)
|
111
|
+
* Add per-subnet discovery
|
112
|
+
|
113
|
+
# Copyright
|
114
|
+
|
115
|
+
Copyright (c) 2012-2013 Greg Sutcliffe
|
116
|
+
|
117
|
+
This program is free software: you can redistribute it and/or modify
|
118
|
+
it under the terms of the GNU General Public License as published by
|
119
|
+
the Free Software Foundation, either version 3 of the License, or
|
120
|
+
(at your option) any later version.
|
121
|
+
|
122
|
+
This program is distributed in the hope that it will be useful,
|
123
|
+
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
124
|
+
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
125
|
+
GNU General Public License for more details.
|
126
|
+
|
127
|
+
You should have received a copy of the GNU General Public License
|
128
|
+
along with this program. If not, see <http://www.gnu.org/licenses/>.
|
data/Rakefile
ADDED
@@ -0,0 +1,111 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'rubygems'
|
4
|
+
require 'rake'
|
5
|
+
require 'fileutils'
|
6
|
+
|
7
|
+
task :default => :test
|
8
|
+
|
9
|
+
ENGINE_DIR = File.expand_path('..', __FILE__)
|
10
|
+
FOREMAN_DIR = 'test/foreman_app'
|
11
|
+
|
12
|
+
namespace :test do
|
13
|
+
desc "Download latest foreman devel source and install dependencies"
|
14
|
+
task :foreman_prepare do
|
15
|
+
foreman_repo = 'https://github.com/theforeman/foreman.git'
|
16
|
+
foreman_gemfile = File.join(FOREMAN_DIR, "Gemfile")
|
17
|
+
unless File.exists?(foreman_gemfile)
|
18
|
+
puts "Foreman source code is not present at #{FOREMAN_DIR}"
|
19
|
+
puts "Downloading latest Foreman development branch into #{FOREMAN_DIR}..."
|
20
|
+
FileUtils.mkdir_p(FOREMAN_DIR)
|
21
|
+
|
22
|
+
unless system("git clone #{foreman_repo} #{FOREMAN_DIR}")
|
23
|
+
puts "Error while getting latest Foreman code from #{foreman_repo} into #{FOREMAN_DIR}"
|
24
|
+
fail
|
25
|
+
end
|
26
|
+
end
|
27
|
+
|
28
|
+
gemfile_content = File.read(foreman_gemfile)
|
29
|
+
unless gemfile_content.include?('FOREMAN_GEMFILE')
|
30
|
+
puts 'Preparing Gemfile'
|
31
|
+
gemfile_content.gsub!('__FILE__', 'FOREMAN_GEMFILE')
|
32
|
+
gemfile_content.insert(0, "FOREMAN_GEMFILE = __FILE__ unless defined? FOREMAN_GEMFILE\n")
|
33
|
+
File.open(foreman_gemfile, 'w') { |f| f << gemfile_content }
|
34
|
+
end
|
35
|
+
|
36
|
+
settings_file = "#{FOREMAN_DIR}/config/settings.yaml"
|
37
|
+
unless File.exists?(settings_file)
|
38
|
+
puts 'Preparing settings file'
|
39
|
+
FileUtils.copy("#{settings_file}.example", settings_file)
|
40
|
+
settings_content = File.read(settings_file)
|
41
|
+
settings_content.sub!('organizations_enabled: false', 'organizations_enabled: true')
|
42
|
+
settings_content << ":puppetgem: true\n"
|
43
|
+
File.open(settings_file, 'w') { |f| f << settings_content }
|
44
|
+
end
|
45
|
+
|
46
|
+
db_file = "#{FOREMAN_DIR}/config/database.yml"
|
47
|
+
unless File.exists?(db_file)
|
48
|
+
puts 'Preparing database file'
|
49
|
+
FileUtils.copy("#{db_file}.example", db_file)
|
50
|
+
end
|
51
|
+
|
52
|
+
["#{ENGINE_DIR}/.bundle/config", "#{FOREMAN_DIR}/.bundle/config"].each do |bundle_file|
|
53
|
+
unless File.exists?(bundle_file)
|
54
|
+
FileUtils.mkdir_p(File.dirname(bundle_file))
|
55
|
+
puts 'Preparing bundler configuration'
|
56
|
+
File.open(bundle_file, 'w') { |f| f << <<FILE }
|
57
|
+
---
|
58
|
+
BUNDLE_WITHOUT: console:development:fog:jsonp:libvirt:mysql:mysql2:ovirt:postgresql:vmware
|
59
|
+
FILE
|
60
|
+
end
|
61
|
+
end
|
62
|
+
|
63
|
+
local_gemfile = "#{FOREMAN_DIR}/bundler.d/Gemfile.local.rb"
|
64
|
+
unless File.exist?(local_gemfile)
|
65
|
+
File.open(local_gemfile, 'w') { |f| f << <<GEMFILE }
|
66
|
+
gem "puppet"
|
67
|
+
gem "facter"
|
68
|
+
GEMFILE
|
69
|
+
end
|
70
|
+
|
71
|
+
puts 'Installing dependencies...'
|
72
|
+
unless system('bundle install')
|
73
|
+
fail
|
74
|
+
end
|
75
|
+
end
|
76
|
+
|
77
|
+
task :db_prepare do
|
78
|
+
unless File.exists?(FOREMAN_DIR)
|
79
|
+
puts <<MESSAGE
|
80
|
+
Foreman source code not prepared. Run
|
81
|
+
|
82
|
+
rake test:foreman_prepare
|
83
|
+
|
84
|
+
to download foreman source and its dependencies
|
85
|
+
MESSAGE
|
86
|
+
fail
|
87
|
+
end
|
88
|
+
|
89
|
+
# once we are Ruby19 only, switch to block variant of cd
|
90
|
+
pwd = FileUtils.pwd
|
91
|
+
FileUtils.cd(FOREMAN_DIR)
|
92
|
+
unless system('rake db:test:prepare RAILS_ENV=test')
|
93
|
+
puts "Migrating database first"
|
94
|
+
system('rake db:migrate db:schema:dump db:test:prepare RAILS_ENV=test') || fail
|
95
|
+
end
|
96
|
+
FileUtils.cd(pwd)
|
97
|
+
end
|
98
|
+
|
99
|
+
task :set_loadpath do
|
100
|
+
%w[lib test].each do |dir|
|
101
|
+
$:.unshift(File.expand_path(dir, ENGINE_DIR))
|
102
|
+
end
|
103
|
+
end
|
104
|
+
|
105
|
+
task :all => [:db_prepare, :set_loadpath] do
|
106
|
+
Dir.glob('test/**/*_test.rb') { |f| require f.sub('test/','') unless f.include? '/foreman_app/' }
|
107
|
+
end
|
108
|
+
|
109
|
+
end
|
110
|
+
|
111
|
+
task :test => 'test:all'
|
@@ -0,0 +1,151 @@
|
|
1
|
+
class DiscoversController < ::ApplicationController
|
2
|
+
include Foreman::Controller::AutoCompleteSearch
|
3
|
+
include Foreman::Controller::TaxonomyMultiple
|
4
|
+
unloadable
|
5
|
+
|
6
|
+
before_filter :find_by_name, :only => %w[show edit update destroy refresh_facts convert]
|
7
|
+
before_filter :find_multiple, :only => [:multiple_destroy, :submit_multiple_destroy]
|
8
|
+
|
9
|
+
|
10
|
+
helper :hosts
|
11
|
+
|
12
|
+
layout 'layouts/application'
|
13
|
+
|
14
|
+
def index
|
15
|
+
hosts = ::Host::Discovered.search_for(params[:search], :order => params[:order])
|
16
|
+
# This `where` shouldn't be necessary, but randomly the sql query on the line above
|
17
|
+
# sometimes loses the `where` clause, leading to all Hosts on the Discovery index
|
18
|
+
@hosts = hosts.where(:type => "Host::Discovered").includes(:model, :location, :organization).paginate :page => params[:page]
|
19
|
+
respond_to do |format|
|
20
|
+
format.html { }
|
21
|
+
format.json { render :json => hosts }
|
22
|
+
end
|
23
|
+
end
|
24
|
+
|
25
|
+
def show
|
26
|
+
respond_to do |format|
|
27
|
+
format.html {
|
28
|
+
# filter graph time range
|
29
|
+
@range = nil
|
30
|
+
|
31
|
+
# summary report text
|
32
|
+
@report_summary = nil
|
33
|
+
}
|
34
|
+
end
|
35
|
+
end
|
36
|
+
|
37
|
+
def destroy
|
38
|
+
@host.destroy
|
39
|
+
redirect_to :action => 'index'
|
40
|
+
end
|
41
|
+
|
42
|
+
def edit
|
43
|
+
@host = @host.becomes(::Host::Managed)
|
44
|
+
@host.type = 'Host::Managed'
|
45
|
+
@host.managed = true
|
46
|
+
@host.build = true
|
47
|
+
|
48
|
+
render :template => 'hosts/edit'
|
49
|
+
end
|
50
|
+
|
51
|
+
def update
|
52
|
+
@host = @host.becomes(::Host::Managed)
|
53
|
+
@host.type = 'Host::Managed'
|
54
|
+
forward_url_options
|
55
|
+
Taxonomy.no_taxonomy_scope do
|
56
|
+
if @host.update_attributes(params[:host])
|
57
|
+
process_success :success_redirect => host_path(@host), :redirect_xhr => request.xhr?
|
58
|
+
else
|
59
|
+
load_vars_for_ajax
|
60
|
+
offer_to_overwrite_conflicts
|
61
|
+
process_error
|
62
|
+
end
|
63
|
+
end
|
64
|
+
end
|
65
|
+
|
66
|
+
def load_vars_for_ajax
|
67
|
+
return unless @host
|
68
|
+
|
69
|
+
@environment = @host.environment
|
70
|
+
@architecture = @host.architecture
|
71
|
+
@domain = @host.domain
|
72
|
+
@operatingsystem = @host.operatingsystem
|
73
|
+
@medium = @host.medium
|
74
|
+
end
|
75
|
+
|
76
|
+
# this is required for template generation (such as pxelinux) which is not done via a web request
|
77
|
+
def forward_url_options(host = @host)
|
78
|
+
host.url_options = url_options if @host.respond_to?(:url_options)
|
79
|
+
end
|
80
|
+
|
81
|
+
# if a save failed and the only reason was network conflicts then flag this so that the view
|
82
|
+
# is rendered differently and the next save operation will be forced
|
83
|
+
def offer_to_overwrite_conflicts
|
84
|
+
@host.overwrite = "true" if @host.errors.any? and @host.errors.are_all_conflicts?
|
85
|
+
end
|
86
|
+
|
87
|
+
def refresh_facts
|
88
|
+
if @host.is_a?(::Host::Discovered) and @host.refresh_facts
|
89
|
+
process_success :success_msg => "Facts refreshed for #{@host.name}", :success_redirect => :back
|
90
|
+
else
|
91
|
+
process_error :error_msg => "Failed to refresh facts for #{@host.name}", :redirect => :back
|
92
|
+
end
|
93
|
+
end
|
94
|
+
|
95
|
+
def find_by_name
|
96
|
+
params[:id].downcase! if params[:id].present?
|
97
|
+
@host = ::Host::Discovered.find_by_id(params[:id])
|
98
|
+
@host ||= ::Host::Discovered.find_by_name(params[:id])
|
99
|
+
return false unless @host
|
100
|
+
end
|
101
|
+
|
102
|
+
def find_multiple
|
103
|
+
# Lets search by name or id and make sure one of them exists first
|
104
|
+
if params[:host_names].present? or params[:host_ids].present?
|
105
|
+
@hosts = Host::Discovered.where("id IN (?) or name IN (?)", params[:host_ids], params[:host_names] )
|
106
|
+
if @hosts.empty?
|
107
|
+
error 'No hosts were found with that id or name'
|
108
|
+
redirect_to(discovers_path) and return false
|
109
|
+
end
|
110
|
+
else
|
111
|
+
error 'No Hosts selected'
|
112
|
+
redirect_to(discovers_path) and return false
|
113
|
+
end
|
114
|
+
|
115
|
+
rescue => e
|
116
|
+
error "Something went wrong while selecting hosts - #{e}"
|
117
|
+
redirect_to discovers_path
|
118
|
+
end
|
119
|
+
|
120
|
+
def multiple_destroy
|
121
|
+
end
|
122
|
+
|
123
|
+
def submit_multiple_destroy
|
124
|
+
# keep all the ones that were not deleted for notification.
|
125
|
+
@hosts.delete_if {|host| host.destroy}
|
126
|
+
|
127
|
+
missed_hosts = @hosts.map(&:name).join('<br/>')
|
128
|
+
if @hosts.empty?
|
129
|
+
notice "Destroyed selected hosts"
|
130
|
+
else
|
131
|
+
error "The following hosts were not deleted: #{missed_hosts}"
|
132
|
+
end
|
133
|
+
redirect_to(discovers_path)
|
134
|
+
end
|
135
|
+
|
136
|
+
def auto_complete_search
|
137
|
+
begin
|
138
|
+
@items = Host::Discovered.complete_for(params[:search])
|
139
|
+
@items = @items.map do |item|
|
140
|
+
category = (['and','or','not','has'].include?(item.to_s.sub(/^.*\s+/,''))) ? 'Operators' : ''
|
141
|
+
part = item.to_s.sub(/^.*\b(and|or)\b/i) {|match| match.sub(/^.*\s+/,'')}
|
142
|
+
completed = item.to_s.chomp(part)
|
143
|
+
{:completed => completed, :part => part, :label => item, :category => category}
|
144
|
+
end
|
145
|
+
rescue ScopedSearch::QueryNotSupported => e
|
146
|
+
@items = [{:error =>e.to_s}]
|
147
|
+
end
|
148
|
+
render :json => @items
|
149
|
+
end
|
150
|
+
|
151
|
+
end
|
@@ -0,0 +1,37 @@
|
|
1
|
+
module DiscoversHelper
|
2
|
+
|
3
|
+
def disc_report_column(record)
|
4
|
+
return record.last_report? ? time_ago_in_words(record.last_report.getlocal) +" ago": ""
|
5
|
+
end
|
6
|
+
|
7
|
+
def discovers_title_actions(host)
|
8
|
+
title_actions(
|
9
|
+
button_group(
|
10
|
+
link_to("Provision", hash_for_edit_discover_path(:id => host), :class => 'btn-primary')
|
11
|
+
),
|
12
|
+
button_group(
|
13
|
+
link_to("Refresh Facts", hash_for_refresh_facts_discover_path(:id => host))
|
14
|
+
),
|
15
|
+
button_group(
|
16
|
+
link_to("Delete", hash_for_discover_path(:id => host),
|
17
|
+
:class => "btn btn-danger", :confirm => 'Are you sure?', :method => :delete)
|
18
|
+
)
|
19
|
+
)
|
20
|
+
end
|
21
|
+
|
22
|
+
def multiple_discovers_actions_select
|
23
|
+
actions = [
|
24
|
+
['Delete Hosts', multiple_destroy_discovers_path, 'trash'],
|
25
|
+
]
|
26
|
+
actions << ['Assign Organization', select_multiple_organization_discovers_path, 'tags'] if SETTINGS[:organizations_enabled]
|
27
|
+
actions << ['Assign Location', select_multiple_location_discovers_path, 'map-marker'] if SETTINGS[:locations_enabled]
|
28
|
+
|
29
|
+
content_tag :span, :id => 'submit_multiple', :class => 'fl' do
|
30
|
+
actions.map do |action|
|
31
|
+
link_to(icon_text(action[2]), action[1], :title => action[0])
|
32
|
+
end.join(' ').html_safe
|
33
|
+
end
|
34
|
+
|
35
|
+
end
|
36
|
+
|
37
|
+
end
|
@@ -0,0 +1,97 @@
|
|
1
|
+
require 'foreman_discovery/facts'
|
2
|
+
|
3
|
+
class Host::Discovered < ::Host::Base
|
4
|
+
|
5
|
+
belongs_to :location
|
6
|
+
belongs_to :organization
|
7
|
+
|
8
|
+
scoped_search :on => :name, :complete_value => true, :default_order => true
|
9
|
+
scoped_search :on => :last_report, :complete_value => true
|
10
|
+
scoped_search :on => :ip, :complete_value => true
|
11
|
+
scoped_search :on => :mac, :complete_value => true
|
12
|
+
scoped_search :in => :model, :on => :name, :complete_value => true, :rename => :model
|
13
|
+
scoped_search :in => :fact_values, :on => :value, :in_key => :fact_names, :on_key => :name, :rename => :facts, :complete_value => true, :only_explicit => true
|
14
|
+
|
15
|
+
def self.importHostAndFacts data
|
16
|
+
# data might already be a hash, from refresh_facts
|
17
|
+
facts = data.is_a?(Hash) ? data : YAML::load(data)
|
18
|
+
case facts
|
19
|
+
# Discovered hosts don't have a name yet - use MAC for now
|
20
|
+
# TODO: make this more intelligent, we might not have an eth0...
|
21
|
+
when Puppet::Node::Facts
|
22
|
+
name = facts.values["macaddress_eth0"].downcase.gsub(/:/,'')
|
23
|
+
values = facts.values
|
24
|
+
when Hash
|
25
|
+
name = facts["macaddress_eth0"].downcase.gsub(/:/,'')
|
26
|
+
values = facts
|
27
|
+
return raise("invalid facts hash") unless name and values
|
28
|
+
else
|
29
|
+
return raise("Invalid Facts, much be a Puppet::Node::Facts or a Hash")
|
30
|
+
end
|
31
|
+
|
32
|
+
# filter facts
|
33
|
+
values.reject!{|k,v| k =~ /kernel|operatingsystem|osfamily|ruby|path|time|swap|free|filesystem/i }
|
34
|
+
|
35
|
+
if name
|
36
|
+
h = ::Host::Discovered.find_by_name name
|
37
|
+
end
|
38
|
+
h ||= Host.new :name => name, :type => "Host::Discovered"
|
39
|
+
h.type = "Host::Discovered"
|
40
|
+
h.mac = values["macaddress_eth0"]
|
41
|
+
|
42
|
+
if SETTINGS[:locations_enabled]
|
43
|
+
begin
|
44
|
+
h.location = (Location.find_by_name Setting[:discovery_location]) || Location.first
|
45
|
+
rescue
|
46
|
+
h.location = Location.first
|
47
|
+
end
|
48
|
+
end
|
49
|
+
if SETTINGS[:organizations_enabled]
|
50
|
+
begin
|
51
|
+
h.organization = (Organization.find_by_name Setting[:discovery_organization]) || Organization.first
|
52
|
+
rescue
|
53
|
+
h.organization = Organization.first
|
54
|
+
end
|
55
|
+
end
|
56
|
+
|
57
|
+
h.save if h.new_record?
|
58
|
+
h.importFacts(name, values)
|
59
|
+
end
|
60
|
+
|
61
|
+
def importFacts name, facts
|
62
|
+
# Discovered Hosts won't report in via puppet, so we can use that field to
|
63
|
+
# record the last time it sent facts...
|
64
|
+
self.last_report = Time.now
|
65
|
+
super
|
66
|
+
end
|
67
|
+
|
68
|
+
def attributes_to_import_from_facts
|
69
|
+
super + [:ip]
|
70
|
+
end
|
71
|
+
|
72
|
+
def populateFieldsFromFacts facts = self.facts_hash
|
73
|
+
importer = super
|
74
|
+
self.save
|
75
|
+
end
|
76
|
+
|
77
|
+
def refresh_facts
|
78
|
+
# TODO: Can we rely on self.ip? The lease might expire/change....
|
79
|
+
begin
|
80
|
+
logger.debug "retrieving facts from proxy"
|
81
|
+
facts = ForemanDiscovery::Facts.new(:url => "http://#{self.ip}:8443").facts
|
82
|
+
rescue Exception => e
|
83
|
+
raise "Could not get facts from Proxy: #{e}"
|
84
|
+
end
|
85
|
+
|
86
|
+
return self.class.importHostAndFacts facts
|
87
|
+
end
|
88
|
+
|
89
|
+
def self.model_name
|
90
|
+
ActiveModel::Name.new(Host)
|
91
|
+
end
|
92
|
+
|
93
|
+
def compute_resource
|
94
|
+
false
|
95
|
+
end
|
96
|
+
|
97
|
+
end
|