inspec 2.0.32 → 2.0.45
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.rubocop.yml +101 -101
- data/CHANGELOG.md +2991 -2970
- data/Gemfile +55 -55
- data/LICENSE +14 -14
- data/MAINTAINERS.md +33 -33
- data/MAINTAINERS.toml +52 -52
- data/README.md +446 -437
- data/Rakefile +322 -322
- data/bin/inspec +12 -12
- data/docs/.gitignore +2 -2
- data/docs/README.md +40 -40
- data/docs/dsl_inspec.md +258 -258
- data/docs/dsl_resource.md +93 -93
- data/docs/glossary.md +99 -99
- data/docs/habitat.md +191 -191
- data/docs/inspec_and_friends.md +107 -107
- data/docs/matchers.md +169 -168
- data/docs/migration.md +293 -293
- data/docs/platforms.md +118 -118
- data/docs/plugin_kitchen_inspec.md +49 -49
- data/docs/profiles.md +370 -370
- data/docs/reporters.md +105 -105
- data/docs/resources/aide_conf.md.erb +75 -75
- data/docs/resources/apache.md.erb +67 -67
- data/docs/resources/apache_conf.md.erb +68 -68
- data/docs/resources/apt.md.erb +71 -71
- data/docs/resources/audit_policy.md.erb +47 -47
- data/docs/resources/auditd.md.erb +79 -79
- data/docs/resources/auditd_conf.md.erb +68 -68
- data/docs/resources/aws_cloudtrail_trail.md.erb +140 -140
- data/docs/resources/aws_cloudtrail_trails.md.erb +81 -81
- data/docs/resources/aws_cloudwatch_alarm.md.erb +86 -86
- data/docs/resources/aws_cloudwatch_log_metric_filter.md.erb +151 -151
- data/docs/resources/aws_config_recorder.md.erb +71 -71
- data/docs/resources/aws_ec2_instance.md.erb +106 -106
- data/docs/resources/aws_iam_access_key.md.erb +123 -123
- data/docs/resources/aws_iam_access_keys.md.erb +198 -198
- data/docs/resources/aws_iam_group.md.erb +46 -46
- data/docs/resources/aws_iam_groups.md.erb +43 -43
- data/docs/resources/aws_iam_password_policy.md.erb +76 -76
- data/docs/resources/aws_iam_policies.md.erb +82 -82
- data/docs/resources/aws_iam_policy.md.erb +144 -144
- data/docs/resources/aws_iam_role.md.erb +63 -63
- data/docs/resources/aws_iam_root_user.md.erb +58 -58
- data/docs/resources/aws_iam_user.md.erb +64 -64
- data/docs/resources/aws_iam_users.md.erb +89 -89
- data/docs/resources/aws_kms_keys.md.erb +84 -84
- data/docs/resources/aws_route_table.md.erb +47 -47
- data/docs/resources/aws_s3_bucket.md.erb +134 -134
- data/docs/resources/aws_security_group.md.erb +151 -151
- data/docs/resources/aws_security_groups.md.erb +91 -91
- data/docs/resources/aws_sns_topic.md.erb +63 -63
- data/docs/resources/aws_subnet.md.erb +133 -133
- data/docs/resources/aws_subnets.md.erb +126 -126
- data/docs/resources/aws_vpc.md.erb +120 -120
- data/docs/resources/aws_vpcs.md.erb +48 -48
- data/docs/resources/azure_generic_resource.md.erb +170 -170
- data/docs/resources/azure_resource_group.md.erb +284 -284
- data/docs/resources/azure_virtual_machine.md.erb +347 -347
- data/docs/resources/azure_virtual_machine_data_disk.md.erb +224 -224
- data/docs/resources/bash.md.erb +75 -75
- data/docs/resources/bond.md.erb +90 -90
- data/docs/resources/bridge.md.erb +57 -57
- data/docs/resources/bsd_service.md.erb +67 -67
- data/docs/resources/command.md.erb +138 -138
- data/docs/resources/cpan.md.erb +79 -79
- data/docs/resources/cran.md.erb +64 -64
- data/docs/resources/crontab.md.erb +89 -89
- data/docs/resources/csv.md.erb +54 -54
- data/docs/resources/dh_params.md.erb +205 -205
- data/docs/resources/directory.md.erb +30 -30
- data/docs/resources/docker.md.erb +219 -219
- data/docs/resources/docker_container.md.erb +104 -104
- data/docs/resources/docker_image.md.erb +94 -94
- data/docs/resources/docker_service.md.erb +114 -114
- data/docs/resources/elasticsearch.md.erb +242 -242
- data/docs/resources/etc_fstab.md.erb +125 -125
- data/docs/resources/etc_group.md.erb +75 -75
- data/docs/resources/etc_hosts.md.erb +78 -78
- data/docs/resources/etc_hosts_allow.md.erb +74 -74
- data/docs/resources/etc_hosts_deny.md.erb +74 -74
- data/docs/resources/file.md.erb +526 -515
- data/docs/resources/filesystem.md.erb +41 -41
- data/docs/resources/firewalld.md.erb +107 -107
- data/docs/resources/gem.md.erb +79 -79
- data/docs/resources/group.md.erb +61 -61
- data/docs/resources/grub_conf.md.erb +101 -101
- data/docs/resources/host.md.erb +86 -86
- data/docs/resources/http.md.erb +196 -196
- data/docs/resources/iis_app.md.erb +122 -122
- data/docs/resources/iis_site.md.erb +135 -135
- data/docs/resources/inetd_conf.md.erb +94 -94
- data/docs/resources/ini.md.erb +76 -76
- data/docs/resources/interface.md.erb +58 -58
- data/docs/resources/iptables.md.erb +64 -64
- data/docs/resources/json.md.erb +63 -63
- data/docs/resources/kernel_module.md.erb +120 -120
- data/docs/resources/kernel_parameter.md.erb +53 -53
- data/docs/resources/key_rsa.md.erb +85 -85
- data/docs/resources/launchd_service.md.erb +57 -57
- data/docs/resources/limits_conf.md.erb +75 -75
- data/docs/resources/login_def.md.erb +71 -71
- data/docs/resources/mount.md.erb +69 -69
- data/docs/resources/mssql_session.md.erb +60 -60
- data/docs/resources/mysql_conf.md.erb +99 -99
- data/docs/resources/mysql_session.md.erb +74 -74
- data/docs/resources/nginx.md.erb +79 -79
- data/docs/resources/nginx_conf.md.erb +128 -128
- data/docs/resources/npm.md.erb +60 -60
- data/docs/resources/ntp_conf.md.erb +60 -60
- data/docs/resources/oneget.md.erb +53 -53
- data/docs/resources/oracledb_session.md.erb +52 -52
- data/docs/resources/os.md.erb +141 -141
- data/docs/resources/os_env.md.erb +78 -78
- data/docs/resources/package.md.erb +120 -120
- data/docs/resources/packages.md.erb +67 -67
- data/docs/resources/parse_config.md.erb +103 -103
- data/docs/resources/parse_config_file.md.erb +138 -138
- data/docs/resources/passwd.md.erb +141 -141
- data/docs/resources/pip.md.erb +67 -67
- data/docs/resources/port.md.erb +137 -137
- data/docs/resources/postgres_conf.md.erb +79 -79
- data/docs/resources/postgres_hba_conf.md.erb +93 -93
- data/docs/resources/postgres_ident_conf.md.erb +76 -76
- data/docs/resources/postgres_session.md.erb +69 -69
- data/docs/resources/powershell.md.erb +102 -102
- data/docs/resources/processes.md.erb +109 -109
- data/docs/resources/rabbitmq_config.md.erb +41 -41
- data/docs/resources/registry_key.md.erb +158 -158
- data/docs/resources/runit_service.md.erb +57 -57
- data/docs/resources/security_policy.md.erb +47 -47
- data/docs/resources/service.md.erb +121 -121
- data/docs/resources/shadow.md.erb +146 -144
- data/docs/resources/ssh_config.md.erb +80 -80
- data/docs/resources/sshd_config.md.erb +83 -83
- data/docs/resources/ssl.md.erb +119 -119
- data/docs/resources/sys_info.md.erb +42 -42
- data/docs/resources/systemd_service.md.erb +57 -57
- data/docs/resources/sysv_service.md.erb +57 -57
- data/docs/resources/upstart_service.md.erb +57 -57
- data/docs/resources/user.md.erb +140 -140
- data/docs/resources/users.md.erb +127 -127
- data/docs/resources/vbscript.md.erb +55 -55
- data/docs/resources/virtualization.md.erb +57 -57
- data/docs/resources/windows_feature.md.erb +47 -47
- data/docs/resources/windows_hotfix.md.erb +53 -53
- data/docs/resources/windows_task.md.erb +95 -95
- data/docs/resources/wmi.md.erb +81 -81
- data/docs/resources/x509_certificate.md.erb +151 -151
- data/docs/resources/xinetd_conf.md.erb +156 -156
- data/docs/resources/xml.md.erb +85 -85
- data/docs/resources/yaml.md.erb +69 -69
- data/docs/resources/yum.md.erb +98 -98
- data/docs/resources/zfs_dataset.md.erb +53 -53
- data/docs/resources/zfs_pool.md.erb +47 -47
- data/docs/ruby_usage.md +203 -203
- data/docs/shared/matcher_be.md.erb +1 -1
- data/docs/shared/matcher_cmp.md.erb +43 -43
- data/docs/shared/matcher_eq.md.erb +3 -3
- data/docs/shared/matcher_include.md.erb +1 -1
- data/docs/shared/matcher_match.md.erb +1 -1
- data/docs/shell.md +215 -215
- data/examples/README.md +8 -8
- data/examples/inheritance/README.md +65 -65
- data/examples/inheritance/controls/example.rb +14 -14
- data/examples/inheritance/inspec.yml +15 -15
- data/examples/kitchen-ansible/.kitchen.yml +25 -25
- data/examples/kitchen-ansible/Gemfile +19 -19
- data/examples/kitchen-ansible/README.md +53 -53
- data/examples/kitchen-ansible/files/nginx.repo +6 -6
- data/examples/kitchen-ansible/tasks/main.yml +16 -16
- data/examples/kitchen-ansible/test/integration/default/default.yml +5 -5
- data/examples/kitchen-ansible/test/integration/default/web_spec.rb +28 -28
- data/examples/kitchen-chef/.kitchen.yml +20 -20
- data/examples/kitchen-chef/Berksfile +3 -3
- data/examples/kitchen-chef/Gemfile +19 -19
- data/examples/kitchen-chef/README.md +27 -27
- data/examples/kitchen-chef/metadata.rb +7 -7
- data/examples/kitchen-chef/recipes/default.rb +6 -6
- data/examples/kitchen-chef/recipes/nginx.rb +30 -30
- data/examples/kitchen-chef/test/integration/default/web_spec.rb +28 -28
- data/examples/kitchen-puppet/.kitchen.yml +22 -22
- data/examples/kitchen-puppet/Gemfile +20 -20
- data/examples/kitchen-puppet/Puppetfile +25 -25
- data/examples/kitchen-puppet/README.md +53 -53
- data/examples/kitchen-puppet/manifests/site.pp +33 -33
- data/examples/kitchen-puppet/metadata.json +11 -11
- data/examples/kitchen-puppet/test/integration/default/web_spec.rb +28 -28
- data/examples/meta-profile/README.md +37 -37
- data/examples/meta-profile/controls/example.rb +13 -13
- data/examples/meta-profile/inspec.yml +13 -13
- data/examples/profile-attribute.yml +2 -2
- data/examples/profile-attribute/README.md +14 -14
- data/examples/profile-attribute/controls/example.rb +11 -11
- data/examples/profile-attribute/inspec.yml +8 -8
- data/examples/profile-aws/controls/iam_password_policy_expiration.rb +8 -8
- data/examples/profile-aws/controls/iam_password_policy_max_age.rb +8 -8
- data/examples/profile-aws/controls/iam_root_user_mfa.rb +8 -8
- data/examples/profile-aws/controls/iam_users_access_key_age.rb +8 -8
- data/examples/profile-aws/controls/iam_users_console_users_mfa.rb +8 -8
- data/examples/profile-aws/inspec.yml +11 -11
- data/examples/profile-azure/controls/azure_resource_group_example.rb +24 -24
- data/examples/profile-azure/controls/azure_vm_example.rb +29 -29
- data/examples/profile-azure/inspec.yml +11 -11
- data/examples/profile-sensitive/README.md +29 -29
- data/examples/profile-sensitive/controls/sensitive-failures.rb +9 -9
- data/examples/profile-sensitive/controls/sensitive.rb +9 -9
- data/examples/profile-sensitive/inspec.yml +8 -8
- data/examples/profile/README.md +48 -48
- data/examples/profile/controls/example.rb +23 -23
- data/examples/profile/controls/gordon.rb +36 -36
- data/examples/profile/controls/meta.rb +34 -34
- data/examples/profile/inspec.yml +10 -10
- data/examples/profile/libraries/gordon_config.rb +53 -53
- data/inspec.gemspec +47 -47
- data/lib/bundles/README.md +3 -3
- data/lib/bundles/inspec-artifact.rb +7 -7
- data/lib/bundles/inspec-artifact/README.md +1 -1
- data/lib/bundles/inspec-artifact/cli.rb +277 -277
- data/lib/bundles/inspec-compliance.rb +16 -16
- data/lib/bundles/inspec-compliance/.kitchen.yml +20 -20
- data/lib/bundles/inspec-compliance/README.md +185 -185
- data/lib/bundles/inspec-compliance/api.rb +316 -316
- data/lib/bundles/inspec-compliance/api/login.rb +152 -152
- data/lib/bundles/inspec-compliance/bootstrap.sh +41 -41
- data/lib/bundles/inspec-compliance/cli.rb +254 -254
- data/lib/bundles/inspec-compliance/configuration.rb +103 -103
- data/lib/bundles/inspec-compliance/http.rb +86 -86
- data/lib/bundles/inspec-compliance/support.rb +36 -36
- data/lib/bundles/inspec-compliance/target.rb +98 -98
- data/lib/bundles/inspec-compliance/test/integration/default/cli.rb +93 -93
- data/lib/bundles/inspec-habitat.rb +12 -12
- data/lib/bundles/inspec-habitat/cli.rb +36 -36
- data/lib/bundles/inspec-habitat/log.rb +10 -10
- data/lib/bundles/inspec-habitat/profile.rb +390 -390
- data/lib/bundles/inspec-init.rb +8 -8
- data/lib/bundles/inspec-init/README.md +31 -31
- data/lib/bundles/inspec-init/cli.rb +97 -97
- data/lib/bundles/inspec-init/templates/profile/README.md +3 -3
- data/lib/bundles/inspec-init/templates/profile/controls/example.rb +19 -19
- data/lib/bundles/inspec-init/templates/profile/inspec.yml +8 -8
- data/lib/bundles/inspec-supermarket.rb +13 -13
- data/lib/bundles/inspec-supermarket/README.md +45 -45
- data/lib/bundles/inspec-supermarket/api.rb +84 -84
- data/lib/bundles/inspec-supermarket/cli.rb +73 -73
- data/lib/bundles/inspec-supermarket/target.rb +34 -34
- data/lib/fetchers/git.rb +163 -163
- data/lib/fetchers/local.rb +74 -74
- data/lib/fetchers/mock.rb +35 -35
- data/lib/fetchers/url.rb +204 -204
- data/lib/inspec.rb +24 -24
- data/lib/inspec/archive/tar.rb +29 -29
- data/lib/inspec/archive/zip.rb +19 -19
- data/lib/inspec/backend.rb +92 -92
- data/lib/inspec/base_cli.rb +355 -350
- data/lib/inspec/cached_fetcher.rb +66 -66
- data/lib/inspec/cli.rb +292 -292
- data/lib/inspec/completions/bash.sh.erb +45 -45
- data/lib/inspec/completions/fish.sh.erb +34 -34
- data/lib/inspec/completions/zsh.sh.erb +61 -61
- data/lib/inspec/control_eval_context.rb +179 -179
- data/lib/inspec/dependencies/cache.rb +72 -72
- data/lib/inspec/dependencies/dependency_set.rb +92 -92
- data/lib/inspec/dependencies/lockfile.rb +115 -115
- data/lib/inspec/dependencies/requirement.rb +123 -123
- data/lib/inspec/dependencies/resolver.rb +86 -86
- data/lib/inspec/describe.rb +27 -27
- data/lib/inspec/dsl.rb +66 -66
- data/lib/inspec/dsl_shared.rb +33 -33
- data/lib/inspec/env_printer.rb +157 -157
- data/lib/inspec/errors.rb +13 -13
- data/lib/inspec/exceptions.rb +12 -12
- data/lib/inspec/expect.rb +45 -45
- data/lib/inspec/fetcher.rb +45 -45
- data/lib/inspec/file_provider.rb +275 -275
- data/lib/inspec/formatters.rb +3 -3
- data/lib/inspec/formatters/base.rb +250 -250
- data/lib/inspec/formatters/json_rspec.rb +20 -20
- data/lib/inspec/formatters/show_progress.rb +12 -12
- data/lib/inspec/library_eval_context.rb +58 -58
- data/lib/inspec/log.rb +11 -11
- data/lib/inspec/metadata.rb +247 -247
- data/lib/inspec/method_source.rb +24 -24
- data/lib/inspec/objects.rb +14 -14
- data/lib/inspec/objects/attribute.rb +65 -65
- data/lib/inspec/objects/control.rb +61 -61
- data/lib/inspec/objects/describe.rb +92 -92
- data/lib/inspec/objects/each_loop.rb +36 -36
- data/lib/inspec/objects/list.rb +15 -15
- data/lib/inspec/objects/or_test.rb +40 -40
- data/lib/inspec/objects/ruby_helper.rb +15 -15
- data/lib/inspec/objects/tag.rb +27 -27
- data/lib/inspec/objects/test.rb +87 -87
- data/lib/inspec/objects/value.rb +27 -27
- data/lib/inspec/plugins.rb +60 -60
- data/lib/inspec/plugins/cli.rb +24 -24
- data/lib/inspec/plugins/fetcher.rb +86 -86
- data/lib/inspec/plugins/resource.rb +135 -135
- data/lib/inspec/plugins/secret.rb +15 -15
- data/lib/inspec/plugins/source_reader.rb +40 -40
- data/lib/inspec/polyfill.rb +12 -12
- data/lib/inspec/profile.rb +510 -510
- data/lib/inspec/profile_context.rb +207 -207
- data/lib/inspec/profile_vendor.rb +66 -66
- data/lib/inspec/reporters.rb +54 -50
- data/lib/inspec/reporters/base.rb +24 -24
- data/lib/inspec/reporters/cli.rb +356 -356
- data/lib/inspec/reporters/json.rb +116 -116
- data/lib/inspec/reporters/json_min.rb +48 -48
- data/lib/inspec/reporters/junit.rb +77 -77
- data/lib/inspec/require_loader.rb +33 -33
- data/lib/inspec/resource.rb +186 -186
- data/lib/inspec/rule.rb +266 -266
- data/lib/inspec/runner.rb +345 -345
- data/lib/inspec/runner_mock.rb +41 -41
- data/lib/inspec/runner_rspec.rb +175 -175
- data/lib/inspec/runtime_profile.rb +26 -26
- data/lib/inspec/schema.rb +213 -213
- data/lib/inspec/secrets.rb +19 -19
- data/lib/inspec/secrets/yaml.rb +30 -30
- data/lib/inspec/shell.rb +220 -220
- data/lib/inspec/shell_detector.rb +90 -90
- data/lib/inspec/source_reader.rb +29 -29
- data/lib/inspec/version.rb +8 -8
- data/lib/matchers/matchers.rb +339 -339
- data/lib/resource_support/aws.rb +41 -41
- data/lib/resource_support/aws/aws_backend_base.rb +12 -12
- data/lib/resource_support/aws/aws_backend_factory_mixin.rb +12 -12
- data/lib/resource_support/aws/aws_plural_resource_mixin.rb +21 -21
- data/lib/resource_support/aws/aws_resource_mixin.rb +66 -66
- data/lib/resource_support/aws/aws_singular_resource_mixin.rb +24 -24
- data/lib/resources/aide_conf.rb +159 -160
- data/lib/resources/apache.rb +48 -48
- data/lib/resources/apache_conf.rb +156 -156
- data/lib/resources/apt.rb +149 -149
- data/lib/resources/audit_policy.rb +63 -63
- data/lib/resources/auditd.rb +231 -231
- data/lib/resources/auditd_conf.rb +55 -55
- data/lib/resources/aws/aws_cloudtrail_trail.rb +77 -77
- data/lib/resources/aws/aws_cloudtrail_trails.rb +47 -47
- data/lib/resources/aws/aws_cloudwatch_alarm.rb +62 -62
- data/lib/resources/aws/aws_cloudwatch_log_metric_filter.rb +100 -100
- data/lib/resources/aws/aws_config_recorder.rb +98 -98
- data/lib/resources/aws/aws_ec2_instance.rb +157 -157
- data/lib/resources/aws/aws_iam_access_key.rb +106 -106
- data/lib/resources/aws/aws_iam_access_keys.rb +149 -144
- data/lib/resources/aws/aws_iam_group.rb +56 -56
- data/lib/resources/aws/aws_iam_groups.rb +52 -45
- data/lib/resources/aws/aws_iam_password_policy.rb +116 -116
- data/lib/resources/aws/aws_iam_policies.rb +53 -46
- data/lib/resources/aws/aws_iam_policy.rb +125 -119
- data/lib/resources/aws/aws_iam_role.rb +51 -51
- data/lib/resources/aws/aws_iam_root_user.rb +60 -60
- data/lib/resources/aws/aws_iam_user.rb +111 -111
- data/lib/resources/aws/aws_iam_users.rb +108 -96
- data/lib/resources/aws/aws_kms_keys.rb +53 -46
- data/lib/resources/aws/aws_route_table.rb +61 -61
- data/lib/resources/aws/aws_s3_bucket.rb +115 -115
- data/lib/resources/aws/aws_security_group.rb +93 -93
- data/lib/resources/aws/aws_security_groups.rb +68 -68
- data/lib/resources/aws/aws_sns_topic.rb +53 -53
- data/lib/resources/aws/aws_subnet.rb +88 -88
- data/lib/resources/aws/aws_subnets.rb +53 -53
- data/lib/resources/aws/aws_vpc.rb +69 -69
- data/lib/resources/aws/aws_vpcs.rb +45 -45
- data/lib/resources/azure/azure_backend.rb +377 -377
- data/lib/resources/azure/azure_generic_resource.rb +59 -59
- data/lib/resources/azure/azure_resource_group.rb +152 -152
- data/lib/resources/azure/azure_virtual_machine.rb +264 -264
- data/lib/resources/azure/azure_virtual_machine_data_disk.rb +136 -136
- data/lib/resources/bash.rb +35 -35
- data/lib/resources/bond.rb +68 -68
- data/lib/resources/bridge.rb +122 -122
- data/lib/resources/command.rb +73 -69
- data/lib/resources/cpan.rb +58 -58
- data/lib/resources/cran.rb +64 -64
- data/lib/resources/crontab.rb +169 -170
- data/lib/resources/csv.rb +60 -60
- data/lib/resources/dh_params.rb +82 -82
- data/lib/resources/directory.rb +25 -25
- data/lib/resources/docker.rb +236 -236
- data/lib/resources/docker_container.rb +89 -89
- data/lib/resources/docker_image.rb +83 -83
- data/lib/resources/docker_object.rb +57 -57
- data/lib/resources/docker_service.rb +90 -90
- data/lib/resources/elasticsearch.rb +169 -169
- data/lib/resources/etc_fstab.rb +101 -102
- data/lib/resources/etc_group.rb +152 -156
- data/lib/resources/etc_hosts.rb +82 -81
- data/lib/resources/etc_hosts_allow_deny.rb +122 -123
- data/lib/resources/file.rb +298 -298
- data/lib/resources/filesystem.rb +31 -31
- data/lib/resources/firewalld.rb +143 -144
- data/lib/resources/gem.rb +70 -70
- data/lib/resources/groups.rb +215 -215
- data/lib/resources/grub_conf.rb +237 -237
- data/lib/resources/host.rb +306 -300
- data/lib/resources/http.rb +251 -250
- data/lib/resources/iis_app.rb +101 -104
- data/lib/resources/iis_site.rb +148 -148
- data/lib/resources/inetd_conf.rb +62 -62
- data/lib/resources/ini.rb +29 -29
- data/lib/resources/interface.rb +129 -129
- data/lib/resources/iptables.rb +80 -69
- data/lib/resources/json.rb +117 -117
- data/lib/resources/kernel_module.rb +107 -107
- data/lib/resources/kernel_parameter.rb +58 -58
- data/lib/resources/key_rsa.rb +67 -67
- data/lib/resources/limits_conf.rb +55 -55
- data/lib/resources/login_def.rb +66 -66
- data/lib/resources/mount.rb +88 -88
- data/lib/resources/mssql_session.rb +101 -101
- data/lib/resources/mysql.rb +81 -81
- data/lib/resources/mysql_conf.rb +134 -134
- data/lib/resources/mysql_session.rb +71 -71
- data/lib/resources/nginx.rb +96 -96
- data/lib/resources/nginx_conf.rb +227 -227
- data/lib/resources/npm.rb +48 -48
- data/lib/resources/ntp_conf.rb +58 -58
- data/lib/resources/oneget.rb +71 -71
- data/lib/resources/oracledb_session.rb +139 -139
- data/lib/resources/os.rb +36 -36
- data/lib/resources/os_env.rb +76 -76
- data/lib/resources/package.rb +370 -370
- data/lib/resources/packages.rb +111 -111
- data/lib/resources/parse_config.rb +116 -116
- data/lib/resources/passwd.rb +74 -74
- data/lib/resources/pip.rb +89 -89
- data/lib/resources/platform.rb +109 -109
- data/lib/resources/port.rb +771 -771
- data/lib/resources/postgres.rb +130 -130
- data/lib/resources/postgres_conf.rb +121 -121
- data/lib/resources/postgres_hba_conf.rb +99 -100
- data/lib/resources/postgres_ident_conf.rb +76 -78
- data/lib/resources/postgres_session.rb +71 -71
- data/lib/resources/powershell.rb +53 -57
- data/lib/resources/processes.rb +204 -204
- data/lib/resources/rabbitmq_conf.rb +52 -52
- data/lib/resources/registry_key.rb +296 -296
- data/lib/resources/security_policy.rb +180 -180
- data/lib/resources/service.rb +789 -789
- data/lib/resources/shadow.rb +146 -140
- data/lib/resources/ssh_conf.rb +102 -102
- data/lib/resources/ssl.rb +99 -99
- data/lib/resources/sys_info.rb +28 -28
- data/lib/resources/toml.rb +32 -32
- data/lib/resources/users.rb +654 -654
- data/lib/resources/vbscript.rb +68 -69
- data/lib/resources/virtualization.rb +247 -247
- data/lib/resources/windows_feature.rb +84 -84
- data/lib/resources/windows_hotfix.rb +35 -35
- data/lib/resources/windows_task.rb +102 -105
- data/lib/resources/wmi.rb +110 -113
- data/lib/resources/x509_certificate.rb +143 -143
- data/lib/resources/xinetd.rb +111 -111
- data/lib/resources/xml.rb +46 -46
- data/lib/resources/yaml.rb +47 -47
- data/lib/resources/yum.rb +180 -180
- data/lib/resources/zfs_dataset.rb +60 -60
- data/lib/resources/zfs_pool.rb +49 -49
- data/lib/source_readers/flat.rb +39 -39
- data/lib/source_readers/inspec.rb +75 -75
- data/lib/utils/command_wrapper.rb +27 -27
- data/lib/utils/convert.rb +12 -12
- data/lib/utils/database_helpers.rb +77 -77
- data/lib/utils/erlang_parser.rb +192 -192
- data/lib/utils/filter.rb +272 -272
- data/lib/utils/filter_array.rb +27 -27
- data/lib/utils/find_files.rb +44 -44
- data/lib/utils/hash.rb +41 -41
- data/lib/utils/json_log.rb +18 -18
- data/lib/utils/latest_version.rb +22 -22
- data/lib/utils/modulator.rb +12 -12
- data/lib/utils/nginx_parser.rb +85 -85
- data/lib/utils/object_traversal.rb +49 -49
- data/lib/utils/parser.rb +274 -274
- data/lib/utils/plugin_registry.rb +93 -93
- data/lib/utils/simpleconfig.rb +120 -120
- data/lib/utils/spdx.rb +13 -13
- data/lib/utils/spdx.txt +343 -343
- metadata +2 -2
data/lib/resources/iis_app.rb
CHANGED
|
@@ -1,104 +1,101 @@
|
|
|
1
|
-
# encoding: utf-8
|
|
2
|
-
# frozen_string_literal: true
|
|
3
|
-
# check for web applications in IIS
|
|
4
|
-
# Note: this is only supported in windows 2012 and later
|
|
5
|
-
module Inspec::Resources
|
|
6
|
-
class IisApp < Inspec.resource(1)
|
|
7
|
-
name 'iis_app'
|
|
8
|
-
supports platform: 'windows'
|
|
9
|
-
desc 'Tests IIS application configuration on windows. Supported in server 2012+ only'
|
|
10
|
-
example "
|
|
11
|
-
describe iis_app('/myapp', 'Default Web Site') do
|
|
12
|
-
it { should exist }
|
|
13
|
-
it { should have_application_pool('MyAppPool') }
|
|
14
|
-
it { should have_protocols('http') }
|
|
15
|
-
it { should have_site_name('Default Web Site') }
|
|
16
|
-
it { should have_physical_path('C:\\inetpub\\wwwroot\\myapp') }
|
|
17
|
-
it { should have_path('\\My Application') }
|
|
18
|
-
end
|
|
19
|
-
"
|
|
20
|
-
|
|
21
|
-
def initialize(path, site_name)
|
|
22
|
-
@path = path
|
|
23
|
-
@site_name = site_name
|
|
24
|
-
@cache = nil
|
|
25
|
-
@inspec = inspec
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
end
|
|
103
|
-
end
|
|
104
|
-
end
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
# check for web applications in IIS
|
|
4
|
+
# Note: this is only supported in windows 2012 and later
|
|
5
|
+
module Inspec::Resources
|
|
6
|
+
class IisApp < Inspec.resource(1)
|
|
7
|
+
name 'iis_app'
|
|
8
|
+
supports platform: 'windows'
|
|
9
|
+
desc 'Tests IIS application configuration on windows. Supported in server 2012+ only'
|
|
10
|
+
example "
|
|
11
|
+
describe iis_app('/myapp', 'Default Web Site') do
|
|
12
|
+
it { should exist }
|
|
13
|
+
it { should have_application_pool('MyAppPool') }
|
|
14
|
+
it { should have_protocols('http') }
|
|
15
|
+
it { should have_site_name('Default Web Site') }
|
|
16
|
+
it { should have_physical_path('C:\\inetpub\\wwwroot\\myapp') }
|
|
17
|
+
it { should have_path('\\My Application') }
|
|
18
|
+
end
|
|
19
|
+
"
|
|
20
|
+
|
|
21
|
+
def initialize(path, site_name)
|
|
22
|
+
@path = path
|
|
23
|
+
@site_name = site_name
|
|
24
|
+
@cache = nil
|
|
25
|
+
@inspec = inspec
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
def application_pool
|
|
29
|
+
iis_app[:application_pool]
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
def protocols
|
|
33
|
+
iis_app[:protocols]
|
|
34
|
+
end
|
|
35
|
+
|
|
36
|
+
def site_name
|
|
37
|
+
iis_app[:site_name]
|
|
38
|
+
end
|
|
39
|
+
|
|
40
|
+
def path
|
|
41
|
+
iis_app[:path]
|
|
42
|
+
end
|
|
43
|
+
|
|
44
|
+
def physical_path
|
|
45
|
+
iis_app[:physical_path]
|
|
46
|
+
end
|
|
47
|
+
|
|
48
|
+
def exists?
|
|
49
|
+
!iis_app[:path].empty?
|
|
50
|
+
end
|
|
51
|
+
|
|
52
|
+
def has_site_name?(site_name)
|
|
53
|
+
iis_app[:site_name] == site_name
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
def has_application_pool?(application_pool)
|
|
57
|
+
iis_app[:application_pool] == application_pool
|
|
58
|
+
end
|
|
59
|
+
|
|
60
|
+
def has_path?(path)
|
|
61
|
+
iis_app[:path] == path
|
|
62
|
+
end
|
|
63
|
+
|
|
64
|
+
def has_physical_path?(physical_path)
|
|
65
|
+
iis_app[:physical_path] == physical_path
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
def has_protocol?(protocol)
|
|
69
|
+
iis_app[:protocols].include?(protocol)
|
|
70
|
+
end
|
|
71
|
+
|
|
72
|
+
def to_s
|
|
73
|
+
"iis_app '#{@site_name}#{@path}'"
|
|
74
|
+
end
|
|
75
|
+
|
|
76
|
+
private
|
|
77
|
+
|
|
78
|
+
def iis_app
|
|
79
|
+
return @cache unless @cache.nil?
|
|
80
|
+
command = "Import-Module WebAdministration; Get-WebApplication -Name '#{@path}' -Site '#{@site_name}' | Select-Object * | ConvertTo-Json"
|
|
81
|
+
cmd = @inspec.command(command)
|
|
82
|
+
|
|
83
|
+
begin
|
|
84
|
+
app = JSON.parse(cmd.stdout)
|
|
85
|
+
rescue JSON::ParserError => _e
|
|
86
|
+
return {}
|
|
87
|
+
end
|
|
88
|
+
|
|
89
|
+
# map our values to a hash table
|
|
90
|
+
info = {
|
|
91
|
+
site_name: @site_name,
|
|
92
|
+
path: @path,
|
|
93
|
+
application_pool: app['applicationPool'],
|
|
94
|
+
physical_path: app['PhysicalPath'],
|
|
95
|
+
protocols: app['enabledProtocols'],
|
|
96
|
+
}
|
|
97
|
+
|
|
98
|
+
@cache = info unless info.nil?
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
end
|
data/lib/resources/iis_site.rb
CHANGED
|
@@ -1,148 +1,148 @@
|
|
|
1
|
-
# encoding: utf-8
|
|
2
|
-
# frozen_string_literal: true
|
|
3
|
-
# check for site in IIS
|
|
4
|
-
# Usage:
|
|
5
|
-
# describe iis_site('Default Web Site') do
|
|
6
|
-
# it{ should exist }
|
|
7
|
-
# it{ should be_running }
|
|
8
|
-
# it{ should be_in_app_pool('Default App Pool') }
|
|
9
|
-
# it{ should have_path('C:\\inetpub\wwwroot\\DefaultWebSite') }
|
|
10
|
-
# it{ should have_binding('https :443:www.contoso.com sslFlags=0') }
|
|
11
|
-
# it{ should have_binding('net.pipe *') }
|
|
12
|
-
# end
|
|
13
|
-
#
|
|
14
|
-
# Note: this is only supported in windows 2012 and later
|
|
15
|
-
|
|
16
|
-
module Inspec::Resources
|
|
17
|
-
class IisSite < Inspec.resource(1)
|
|
18
|
-
name 'iis_site'
|
|
19
|
-
supports platform: 'windows'
|
|
20
|
-
desc 'Tests IIS site configuration on windows. Supported in server 2012+ only'
|
|
21
|
-
example "
|
|
22
|
-
describe iis_site('Default Web Site') do
|
|
23
|
-
it { should exist }
|
|
24
|
-
it { should be_running }
|
|
25
|
-
it { should have_app_pool('DefaultAppPool') }
|
|
26
|
-
it { should have_binding('https :443:www.contoso.com sslFlags=0') }
|
|
27
|
-
it { should have_binding('net.pipe *') }
|
|
28
|
-
it { should have_path('C:\\inetpub\\wwwroot') }
|
|
29
|
-
end
|
|
30
|
-
"
|
|
31
|
-
|
|
32
|
-
def initialize(site_name)
|
|
33
|
-
@site_name = site_name
|
|
34
|
-
@cache = nil
|
|
35
|
-
|
|
36
|
-
@site_provider = SiteProvider.new(inspec)
|
|
37
|
-
|
|
38
|
-
# verify that this resource is only supported on Windows
|
|
39
|
-
return skip_resource 'The `iis_site` resource is not supported on your OS.' if inspec.os[:family] != 'windows'
|
|
40
|
-
end
|
|
41
|
-
|
|
42
|
-
def app_pool
|
|
43
|
-
iis_site[:app_pool]
|
|
44
|
-
end
|
|
45
|
-
|
|
46
|
-
def bindings
|
|
47
|
-
iis_site[:bindings]
|
|
48
|
-
end
|
|
49
|
-
|
|
50
|
-
def state
|
|
51
|
-
iis_site[:state]
|
|
52
|
-
end
|
|
53
|
-
|
|
54
|
-
def path
|
|
55
|
-
iis_site[:path]
|
|
56
|
-
end
|
|
57
|
-
|
|
58
|
-
def exists?
|
|
59
|
-
!iis_site.nil? && !iis_site[:name].nil?
|
|
60
|
-
end
|
|
61
|
-
|
|
62
|
-
def running?
|
|
63
|
-
iis_site.nil? ? false : (iis_site[:state] == 'Started')
|
|
64
|
-
end
|
|
65
|
-
|
|
66
|
-
def has_app_pool?(app_pool)
|
|
67
|
-
iis_site.nil? ? false : iis_site[:app_pool] == app_pool
|
|
68
|
-
end
|
|
69
|
-
|
|
70
|
-
def has_path?(path)
|
|
71
|
-
iis_site.nil? ? false : iis_site[:path] == path
|
|
72
|
-
end
|
|
73
|
-
|
|
74
|
-
def has_binding?(binding)
|
|
75
|
-
iis_site.nil? ? false : (iis_site[:bindings].include? binding)
|
|
76
|
-
end
|
|
77
|
-
|
|
78
|
-
def to_s
|
|
79
|
-
"iis_site '#{@site_name}'"
|
|
80
|
-
end
|
|
81
|
-
|
|
82
|
-
def iis_site
|
|
83
|
-
return @cache if !@cache.nil?
|
|
84
|
-
@cache = @site_provider.iis_site(@site_name) if !@site_provider.nil?
|
|
85
|
-
end
|
|
86
|
-
end
|
|
87
|
-
|
|
88
|
-
class SiteProvider
|
|
89
|
-
attr_reader :inspec
|
|
90
|
-
|
|
91
|
-
def initialize(inspec)
|
|
92
|
-
@inspec = inspec
|
|
93
|
-
end
|
|
94
|
-
|
|
95
|
-
# want to populate everything using one powershell command here and spit it out as json
|
|
96
|
-
def iis_site(name)
|
|
97
|
-
command = "Get-Website '#{name}' | select-object -Property Name,State,PhysicalPath,bindings,ApplicationPool | ConvertTo-Json"
|
|
98
|
-
cmd = @inspec.command(command)
|
|
99
|
-
|
|
100
|
-
begin
|
|
101
|
-
site = JSON.parse(cmd.stdout)
|
|
102
|
-
rescue JSON::ParserError => _e
|
|
103
|
-
return nil
|
|
104
|
-
end
|
|
105
|
-
|
|
106
|
-
bindings_array = site['bindings']['Collection'].map { |k, _str|
|
|
107
|
-
k['protocol'] <<
|
|
108
|
-
' ' <<
|
|
109
|
-
k['bindingInformation'] <<
|
|
110
|
-
(k['protocol'] == 'https' ? ' sslFlags=' << flags : '')
|
|
111
|
-
}
|
|
112
|
-
|
|
113
|
-
# map our values to a hash table
|
|
114
|
-
info = {
|
|
115
|
-
name: site['name'],
|
|
116
|
-
state: site['state'],
|
|
117
|
-
path: site['physicalPath'],
|
|
118
|
-
bindings: bindings_array,
|
|
119
|
-
app_pool: site['applicationPool'],
|
|
120
|
-
}
|
|
121
|
-
|
|
122
|
-
info
|
|
123
|
-
end
|
|
124
|
-
end
|
|
125
|
-
|
|
126
|
-
# for compatability with serverspec
|
|
127
|
-
# this is deprecated syntax and will be removed in future versions
|
|
128
|
-
class IisSiteServerSpec < IisSite
|
|
129
|
-
name 'iis_website'
|
|
130
|
-
desc 'Tests IIS site configuration on windows. Deprecated, use `iis_site` instead.'
|
|
131
|
-
example "
|
|
132
|
-
describe iis_website('Default Website') do
|
|
133
|
-
it{ should exist }
|
|
134
|
-
it{ should be_running }
|
|
135
|
-
it{ should be_in_app_pool('Default App Pool') }
|
|
136
|
-
end
|
|
137
|
-
"
|
|
138
|
-
|
|
139
|
-
def initialize(site_name)
|
|
140
|
-
super(site_name)
|
|
141
|
-
warn '[DEPRECATION] `iis_website(site_name)` is deprecated. Please use `iis_site(site_name)` instead.'
|
|
142
|
-
end
|
|
143
|
-
|
|
144
|
-
def in_app_pool?(app_pool)
|
|
145
|
-
has_app_pool?(app_pool)
|
|
146
|
-
end
|
|
147
|
-
end
|
|
148
|
-
end
|
|
1
|
+
# encoding: utf-8
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
# check for site in IIS
|
|
4
|
+
# Usage:
|
|
5
|
+
# describe iis_site('Default Web Site') do
|
|
6
|
+
# it{ should exist }
|
|
7
|
+
# it{ should be_running }
|
|
8
|
+
# it{ should be_in_app_pool('Default App Pool') }
|
|
9
|
+
# it{ should have_path('C:\\inetpub\wwwroot\\DefaultWebSite') }
|
|
10
|
+
# it{ should have_binding('https :443:www.contoso.com sslFlags=0') }
|
|
11
|
+
# it{ should have_binding('net.pipe *') }
|
|
12
|
+
# end
|
|
13
|
+
#
|
|
14
|
+
# Note: this is only supported in windows 2012 and later
|
|
15
|
+
|
|
16
|
+
module Inspec::Resources
|
|
17
|
+
class IisSite < Inspec.resource(1)
|
|
18
|
+
name 'iis_site'
|
|
19
|
+
supports platform: 'windows'
|
|
20
|
+
desc 'Tests IIS site configuration on windows. Supported in server 2012+ only'
|
|
21
|
+
example "
|
|
22
|
+
describe iis_site('Default Web Site') do
|
|
23
|
+
it { should exist }
|
|
24
|
+
it { should be_running }
|
|
25
|
+
it { should have_app_pool('DefaultAppPool') }
|
|
26
|
+
it { should have_binding('https :443:www.contoso.com sslFlags=0') }
|
|
27
|
+
it { should have_binding('net.pipe *') }
|
|
28
|
+
it { should have_path('C:\\inetpub\\wwwroot') }
|
|
29
|
+
end
|
|
30
|
+
"
|
|
31
|
+
|
|
32
|
+
def initialize(site_name)
|
|
33
|
+
@site_name = site_name
|
|
34
|
+
@cache = nil
|
|
35
|
+
|
|
36
|
+
@site_provider = SiteProvider.new(inspec)
|
|
37
|
+
|
|
38
|
+
# verify that this resource is only supported on Windows
|
|
39
|
+
return skip_resource 'The `iis_site` resource is not supported on your OS.' if inspec.os[:family] != 'windows'
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
def app_pool
|
|
43
|
+
iis_site[:app_pool]
|
|
44
|
+
end
|
|
45
|
+
|
|
46
|
+
def bindings
|
|
47
|
+
iis_site[:bindings]
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
def state
|
|
51
|
+
iis_site[:state]
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
def path
|
|
55
|
+
iis_site[:path]
|
|
56
|
+
end
|
|
57
|
+
|
|
58
|
+
def exists?
|
|
59
|
+
!iis_site.nil? && !iis_site[:name].nil?
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
def running?
|
|
63
|
+
iis_site.nil? ? false : (iis_site[:state] == 'Started')
|
|
64
|
+
end
|
|
65
|
+
|
|
66
|
+
def has_app_pool?(app_pool)
|
|
67
|
+
iis_site.nil? ? false : iis_site[:app_pool] == app_pool
|
|
68
|
+
end
|
|
69
|
+
|
|
70
|
+
def has_path?(path)
|
|
71
|
+
iis_site.nil? ? false : iis_site[:path] == path
|
|
72
|
+
end
|
|
73
|
+
|
|
74
|
+
def has_binding?(binding)
|
|
75
|
+
iis_site.nil? ? false : (iis_site[:bindings].include? binding)
|
|
76
|
+
end
|
|
77
|
+
|
|
78
|
+
def to_s
|
|
79
|
+
"iis_site '#{@site_name}'"
|
|
80
|
+
end
|
|
81
|
+
|
|
82
|
+
def iis_site
|
|
83
|
+
return @cache if !@cache.nil?
|
|
84
|
+
@cache = @site_provider.iis_site(@site_name) if !@site_provider.nil?
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
|
|
88
|
+
class SiteProvider
|
|
89
|
+
attr_reader :inspec
|
|
90
|
+
|
|
91
|
+
def initialize(inspec)
|
|
92
|
+
@inspec = inspec
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
# want to populate everything using one powershell command here and spit it out as json
|
|
96
|
+
def iis_site(name)
|
|
97
|
+
command = "Get-Website '#{name}' | select-object -Property Name,State,PhysicalPath,bindings,ApplicationPool | ConvertTo-Json"
|
|
98
|
+
cmd = @inspec.command(command)
|
|
99
|
+
|
|
100
|
+
begin
|
|
101
|
+
site = JSON.parse(cmd.stdout)
|
|
102
|
+
rescue JSON::ParserError => _e
|
|
103
|
+
return nil
|
|
104
|
+
end
|
|
105
|
+
|
|
106
|
+
bindings_array = site['bindings']['Collection'].map { |k, _str|
|
|
107
|
+
k['protocol'] <<
|
|
108
|
+
' ' <<
|
|
109
|
+
k['bindingInformation'] <<
|
|
110
|
+
(k['protocol'] == 'https' ? ' sslFlags=' << flags : '')
|
|
111
|
+
}
|
|
112
|
+
|
|
113
|
+
# map our values to a hash table
|
|
114
|
+
info = {
|
|
115
|
+
name: site['name'],
|
|
116
|
+
state: site['state'],
|
|
117
|
+
path: site['physicalPath'],
|
|
118
|
+
bindings: bindings_array,
|
|
119
|
+
app_pool: site['applicationPool'],
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
info
|
|
123
|
+
end
|
|
124
|
+
end
|
|
125
|
+
|
|
126
|
+
# for compatability with serverspec
|
|
127
|
+
# this is deprecated syntax and will be removed in future versions
|
|
128
|
+
class IisSiteServerSpec < IisSite
|
|
129
|
+
name 'iis_website'
|
|
130
|
+
desc 'Tests IIS site configuration on windows. Deprecated, use `iis_site` instead.'
|
|
131
|
+
example "
|
|
132
|
+
describe iis_website('Default Website') do
|
|
133
|
+
it{ should exist }
|
|
134
|
+
it{ should be_running }
|
|
135
|
+
it{ should be_in_app_pool('Default App Pool') }
|
|
136
|
+
end
|
|
137
|
+
"
|
|
138
|
+
|
|
139
|
+
def initialize(site_name)
|
|
140
|
+
super(site_name)
|
|
141
|
+
warn '[DEPRECATION] `iis_website(site_name)` is deprecated. Please use `iis_site(site_name)` instead.'
|
|
142
|
+
end
|
|
143
|
+
|
|
144
|
+
def in_app_pool?(app_pool)
|
|
145
|
+
has_app_pool?(app_pool)
|
|
146
|
+
end
|
|
147
|
+
end
|
|
148
|
+
end
|