PowerShell/test/powershell/Modules/PSDesiredStateConfiguration/assets/dsc/BaseRegistration/BaseResource.schema.mof
2019-06-07 11:50:14 -07:00

208 lines
5.6 KiB
Plaintext
Executable file

[Abstract, ClassVersion("1.0.0")]
class OMI_BaseResource
{
[required] string ResourceId;
[write] string SourceInfo;
[write] string DependsOn[];
[required] string ModuleName;
[required] string ModuleVersion;
[write] string ConfigurationName;
};
[Abstract, ClassVersion("1.0.0")]
class MSFT_KeyValuePair
{
[Key]
string Key;
[write]
string Value;
};
[Abstract, ClassVersion("1.0.0")]
class MSFT_BaseConfigurationProviderRegistration
{
[key] String ClassName;
String DSCEngineCompatVersion;
String DSCModuleVersion;
};
[ClassVersion("1.0.0")]
class MSFT_CimConfigurationProviderRegistration : MSFT_BaseConfigurationProviderRegistration
{
String Namespace;
};
[ClassVersion("1.0.0")]
class MSFT_PSConfigurationProviderRegistration : MSFT_BaseConfigurationProviderRegistration
{
String ModuleName;
};
[ClassVersion("1.0.0")]
class OMI_ConfigurationDocument
{
String Version;
String Author;
String Copyright;
String HelpInfoUri;
String ContentType;
String GenerationDate;
String GenerationHost;
String Name;
String MinimumCompatibleVersion;
String CompatibleVersionAdditionalProperties[];
String DocumentType;
};
[ClassVersion("1.0.0")]
class MSFT_Credential
{
[MaxLen ( 256 )]
string UserName;
string Password;
};
// ===============================================================
// OMI_MetaConfigurationResource
// ===============================================================
[ClassVersion("1.0.0"),
Description (
"Base schema for all Metaconfiguration resources." )]
class OMI_MetaConfigurationResource
{
[required]
string ResourceId;
[write]
string SourceInfo;
};
// ===============================================================
// Configuration Download Manager
// ===============================================================
[ClassVersion("1.0.0"),
Description("Class defining the configuration download manager" ) ]
class OMI_ConfigurationDownloadManager : OMI_MetaConfigurationResource
{
};
[ClassVersion("1.0.0"),
Description("Web download manager class inheriting from OMI_ConfigurationDownloadManager" )]
class MSFT_WebDownloadManager : OMI_ConfigurationDownloadManager
{
[Description ("String URL of the download manager location" ) , Key]
string ServerURL;
[Description ("The certificate ID used to locate the certificate." ) ]
string CertificateID;
[Description ("Boolean variable to allow unsecure connections" ) ]
boolean AllowUnsecureConnection;
[Description ("Registration Key with which to register with the Pull Server" ) ]
string RegistrationKey;
[Description ("The set of configuration names with which to register with the Pull Server.")]
string ConfigurationNames[];
};
// ===============================================================
// Report Managers
// ===============================================================
[ClassVersion("1.0.0"),
Description("Class defining a report manager") ]
class OMI_ReportManager : OMI_MetaConfigurationResource
{
};
[ClassVersion("1.0.0"),
Description("Web report manager class inheriting from OMI_ReportManager class") ]
class MSFT_WebReportManager : OMI_ReportManager
{
[Description ("URL of the server used by report manager." ) , Key]
string ServerURL;
[Description ("The certificate ID used to locate the certificate for secure connections." ) ]
string CertificateID;
[Description("Specifies whether report manager can use unsecure connection over http.")]
boolean AllowUnsecureConnection;
[Description ("Registration Key with which to register with the Reporting Server" ) ]
string RegistrationKey;
};
// ===============================================================
// ResourceModule Managers
// ===============================================================
[ClassVersion("1.0.0"), Description("Class defining the structure of resource module managers") ]
class OMI_ResourceModuleManager : OMI_MetaConfigurationResource
{
};
[ClassVersion("1.0.0"),
Description("Web resource module manager class inheriting from OMI_ResourceModuleManager") ]
class MSFT_WebResourceManager : OMI_ResourceModuleManager
{
[Description ("String URL of the resource module manager location" ) , Key]
string ServerURL;
[Description ("The certificate ID used to locate the certificate." ) ]
string CertificateID;
[Description ("Boolean variable to allow unsecure connections" ) ]
boolean AllowUnsecureConnection;
[Description ("Registration Key with which to register with the Resource Repository Web" ) ]
string RegistrationKey;
};
[ClassVersion("1.0.0"),
Description("File resource module manager class inheriting from OMI_ResourceModuleManager class") ]
class MSFT_FileResourceManager : OMI_ResourceModuleManager
{
[Description ("String UNC path of the File resource manager" ) , Key]
string SourcePath;
[EmbeddedInstance("MSFT_Credential"),
Description ("Default credential to access resources." ) ]
string Credential;
};
[Description(
"This represents a Partial Configuration class."),
ClassVersion("1.0.0")]
class MSFT_PartialConfiguration : OMI_MetaConfigurationResource
{
[Description ("Description of the partial configuration" ) , Write]
String Description ;
[Description ("Defines the resources that are exclusive to this particular partial configuration" ) , Write]
String ExclusiveResources[];
[Description ("The configuration repository source that this partial configuration will use" ) , Write]
String ConfigurationSource;
[Description ("A dependency variable indicating which partial configuration must be applied prior to this" ) , Write]
String DependsOn[];
};