From fe3781ecb65186745fd61a0f3fb023acae8a58fc Mon Sep 17 00:00:00 2001 From: Reggie Gibson <31147354+regedit32@users.noreply.github.com> Date: Tue, 14 May 2019 17:20:10 -0400 Subject: [PATCH] fixes #423 (#424) --- .../MSFT_xIisLogging.schema.mof | 16 +++--- .../MSFT_xWebApplication.schema.mof | 18 +++---- .../MSFT_xWebsite/MSFT_xWebsite.schema.mof | 54 +++++++++---------- README.md | 1 + 4 files changed, 45 insertions(+), 44 deletions(-) diff --git a/DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.schema.mof b/DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.schema.mof index acc905db0..a6803f21f 100644 --- a/DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.schema.mof +++ b/DSCResources/MSFT_xIisLogging/MSFT_xIisLogging.schema.mof @@ -1,11 +1,3 @@ -[ClassVersion("1.0.0")] -class MSFT_xLogCustomField -{ - [Required, Description("Name for the custom field")] String LogFieldName; - [Required, Description("Name for the source type")] String SourceName; - [Required, Description("Specify the source type"), ValueMap{"RequestHeader","ResponseHeader","ServerVariable"},Values{"RequestHeader","ResponseHeader","ServerVariable"}] String SourceType; -}; - [ClassVersion("1.0.0"), FriendlyName("xIisLogging")] class MSFT_xIisLogging : OMI_BaseResource { @@ -18,3 +10,11 @@ class MSFT_xIisLogging : OMI_BaseResource [Write, Description ("Specifies whether IIS will use Event Tracing or file logging"), ValueMap{"File","ETW","File,ETW"}, Values{"File","ETW","File,ETW"}] String LogTargetW3C; [Write, EmbeddedInstance("MSFT_xLogCustomField"), Description("Custom logging field information in the form of an array of embedded instances of MSFT_xLogCustomField CIM class")] String LogCustomFields[]; }; + +[ClassVersion("1.0.0")] +class MSFT_xLogCustomField +{ + [Required, Description("Name for the custom field")] String LogFieldName; + [Required, Description("Name for the source type")] String SourceName; + [Required, Description("Specify the source type"), ValueMap{"RequestHeader","ResponseHeader","ServerVariable"},Values{"RequestHeader","ResponseHeader","ServerVariable"}] String SourceType; +}; diff --git a/DSCResources/MSFT_xWebApplication/MSFT_xWebApplication.schema.mof b/DSCResources/MSFT_xWebApplication/MSFT_xWebApplication.schema.mof index cbd1dcd76..e933e4039 100644 --- a/DSCResources/MSFT_xWebApplication/MSFT_xWebApplication.schema.mof +++ b/DSCResources/MSFT_xWebApplication/MSFT_xWebApplication.schema.mof @@ -1,12 +1,3 @@ -[ClassVersion("1.0.0")] -class MSFT_xWebApplicationAuthenticationInformation -{ - [Write] Boolean Anonymous; - [Write] Boolean Basic; - [Write] Boolean Digest; - [Write] Boolean Windows; -}; - [ClassVersion("1.0.0.0"), FriendlyName("xWebApplication")] class MSFT_xWebApplication : OMI_BaseResource { @@ -23,3 +14,12 @@ class MSFT_xWebApplication : OMI_BaseResource [Write, Description ("Adds a AutostartProvider ApplicationType")] String ApplicationType; [Write, Description ("Adds EnabledProtocols on an Application"), ValueMap{"http","https","net.tcp","net.msmq","net.pipe"},Values{"http","https","net.tcp","net.msmq","net.pipe"}] String EnabledProtocols[]; }; + +[ClassVersion("1.0.0")] +class MSFT_xWebApplicationAuthenticationInformation +{ + [Write] Boolean Anonymous; + [Write] Boolean Basic; + [Write] Boolean Digest; + [Write] Boolean Windows; +}; diff --git a/DSCResources/MSFT_xWebsite/MSFT_xWebsite.schema.mof b/DSCResources/MSFT_xWebsite/MSFT_xWebsite.schema.mof index 43175d3a1..3d01c27ff 100644 --- a/DSCResources/MSFT_xWebsite/MSFT_xWebsite.schema.mof +++ b/DSCResources/MSFT_xWebsite/MSFT_xWebsite.schema.mof @@ -1,3 +1,30 @@ +[ClassVersion("2.0.0"), FriendlyName("xWebsite")] +class MSFT_xWebsite : OMI_BaseResource +{ + [Write,ValueMap{"Present", "Absent"},Values{"Present", "Absent"}] String Ensure; + [Key] String Name; + [Write] UInt32 SiteId; + [Write] String PhysicalPath; + [Write,ValueMap{"Started","Stopped"},Values{"Started", "Stopped"}] String State; + [Write] String ApplicationPool; + [Write, EmbeddedInstance("MSFT_xWebBindingInformation"), Description("Website's binding information in the form of an array of embedded instances of the MSFT_xWebBindingInformation CIM class.")] String BindingInfo[]; + [Write] String DefaultPage[]; + [Write] String EnabledProtocols; + [write, EmbeddedInstance("MSFT_xWebAuthenticationInformation"), Description("Hashtable containing authentication information (Anonymous, Basic, Digest, Windows)")] String AuthenticationInfo; + [Write, Description ("Allows the Website to automatically start without a request")] Boolean PreloadEnabled; + [Write, Description ("Enables Autostart on a Website.")] Boolean ServiceAutoStartEnabled; + [Write, Description ("Adds a AutostartProvider")] String ServiceAutoStartProvider; + [Write, Description ("Adds a AutostartProvider ApplicationType")] String ApplicationType; + [Write, Description ("The directory to be used for logfiles")] String LogPath; + [Write, Description ("The W3C logging fields"), ValueMap{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"},Values{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"}] String LogFlags[]; + [Write, Description ("How often the log file should rollover"), ValueMap{"Hourly","Daily","Weekly","Monthly","MaxSize"},Values{"Hourly","Daily","Weekly","Monthly","MaxSize"}] String LogPeriod; + [Write, Description ("How large the file should be before it is truncated")] String LogTruncateSize; + [Write, Description ("Use the localtime for file naming and rollover")] Boolean LoglocalTimeRollover; + [Write, Description ("Format of the Logfiles. Only W3C supports LogFlags"), ValueMap{"IIS","W3C","NCSA"}, Values{"IIS","W3C","NCSA"}] String LogFormat; + [Write, Description ("Specifies whether IIS will use Event Tracing or file logging"), ValueMap{"File","ETW","File,ETW"}, Values{"File","ETW","File,ETW"}] String LogTargetW3C; + [Write, EmbeddedInstance("MSFT_xLogCustomFieldInformation"), Description("Custom logging field information in the form of an array of embedded instances of MSFT_xLogCustomFieldInformation CIM class")] String LogCustomFields[]; +}; + [ClassVersion("1.0.0")] class MSFT_xWebBindingInformation { @@ -28,30 +55,3 @@ class MSFT_xLogCustomFieldInformation [Write] String SourceName; [Write, ValueMap{"RequestHeader","ResponseHeader","ServerVariable"},Values{"RequestHeader","ResponseHeader","ServerVariable"}] String SourceType; }; - -[ClassVersion("2.0.0"), FriendlyName("xWebsite")] -class MSFT_xWebsite : OMI_BaseResource -{ - [Write,ValueMap{"Present", "Absent"},Values{"Present", "Absent"}] String Ensure; - [Key] String Name; - [Write] UInt32 SiteId; - [Write] String PhysicalPath; - [Write,ValueMap{"Started","Stopped"},Values{"Started", "Stopped"}] String State; - [Write] String ApplicationPool; - [Write, EmbeddedInstance("MSFT_xWebBindingInformation"), Description("Website's binding information in the form of an array of embedded instances of the MSFT_xWebBindingInformation CIM class.")] String BindingInfo[]; - [Write] String DefaultPage[]; - [Write] String EnabledProtocols; - [write, EmbeddedInstance("MSFT_xWebAuthenticationInformation"), Description("Hashtable containing authentication information (Anonymous, Basic, Digest, Windows)")] String AuthenticationInfo; - [Write, Description ("Allows the Website to automatically start without a request")] Boolean PreloadEnabled; - [Write, Description ("Enables Autostart on a Website.")] Boolean ServiceAutoStartEnabled; - [Write, Description ("Adds a AutostartProvider")] String ServiceAutoStartProvider; - [Write, Description ("Adds a AutostartProvider ApplicationType")] String ApplicationType; - [Write, Description ("The directory to be used for logfiles")] String LogPath; - [Write, Description ("The W3C logging fields"), ValueMap{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"},Values{"Date","Time","ClientIP","UserName","SiteName","ComputerName","ServerIP","Method","UriStem","UriQuery","HttpStatus","Win32Status","BytesSent","BytesRecv","TimeTaken","ServerPort","UserAgent","Cookie","Referer","ProtocolVersion","Host","HttpSubStatus"}] String LogFlags[]; - [Write, Description ("How often the log file should rollover"), ValueMap{"Hourly","Daily","Weekly","Monthly","MaxSize"},Values{"Hourly","Daily","Weekly","Monthly","MaxSize"}] String LogPeriod; - [Write, Description ("How large the file should be before it is truncated")] String LogTruncateSize; - [Write, Description ("Use the localtime for file naming and rollover")] Boolean LoglocalTimeRollover; - [Write, Description ("Format of the Logfiles. Only W3C supports LogFlags"), ValueMap{"IIS","W3C","NCSA"}, Values{"IIS","W3C","NCSA"}] String LogFormat; - [Write, Description ("Specifies whether IIS will use Event Tracing or file logging"), ValueMap{"File","ETW","File,ETW"}, Values{"File","ETW","File,ETW"}] String LogTargetW3C; - [Write, EmbeddedInstance("MSFT_xLogCustomFieldInformation"), Description("Custom logging field information in the form of an array of embedded instances of MSFT_xLogCustomFieldInformation CIM class")] String LogCustomFields[]; -}; diff --git a/README.md b/README.md index 18d839868..f626102c4 100644 --- a/README.md +++ b/README.md @@ -321,6 +321,7 @@ This resource manages the IIS configuration section locking (overrideMode) to co ### Unreleased ### 2.6.0.0 +* Changed order of classes in schema.mof files to workaround [#423](https://github.com/PowerShell/xWebAdministration/issues/423) * Fix subject comparison multiple entries for helper function `Find-Certificate` that could not find the test helper function `Install-NewSelfSignedCertificateExScript`. * Updated unit test for helper function `Find-Certificate` to check for multiple