コード例 #1
0
        private static SnapshotPolicy CreatePolicy(string location, string name = "")
        {
            // Create basic policy records with a selection of data
            HourlySchedule HourlySchedule = new HourlySchedule
            {
                SnapshotsToKeep = 2,
                Minute          = 50
            };

            DailySchedule DailySchedule = new DailySchedule
            {
                SnapshotsToKeep = 4,
                Hour            = 14,
                Minute          = 30
            };

            WeeklySchedule WeeklySchedule = new WeeklySchedule
            {
                SnapshotsToKeep = 3,
                Day             = "Wednesday",
                Hour            = 14,
                Minute          = 45
            };

            MonthlySchedule MonthlySchedule = new MonthlySchedule
            {
                SnapshotsToKeep = 5,
                DaysOfMonth     = "10,11,12",
                Hour            = 14,
                Minute          = 15
            };

            SnapshotPolicy testSnapshotPolicy = new SnapshotPolicy(location: location, name: name)
            {
                Enabled         = true,
                HourlySchedule  = HourlySchedule,
                DailySchedule   = DailySchedule,
                WeeklySchedule  = WeeklySchedule,
                MonthlySchedule = MonthlySchedule
            };

            return(testSnapshotPolicy);
        }
コード例 #2
0
        /// <summary>
        /// Create Azure NetApp Files Snapshot Policy
        /// </summary>
        /// <param name="anfClient">ANF client</param>
        /// <param name="resourceGroupName">Resource Group name</param>
        /// <param name="accountName">Azure NetApp Files</param>
        /// <param name="snapshotPolicyName"></param>
        /// <returns></returns>
        public static async Task <SnapshotPolicy> CreateANFSnapshotPolicy(AzureNetAppFilesManagementClient anfClient,
                                                                          string resourceGroupName,
                                                                          string location,
                                                                          string accountName,
                                                                          string snapshotPolicyName)
        {
            SnapshotPolicy snapshotPolicyBody = new SnapshotPolicy()
            {
                Location       = location,
                Enabled        = true,
                HourlySchedule = new HourlySchedule()
                {
                    SnapshotsToKeep = 5,
                    Minute          = 50
                },

                DailySchedule = new DailySchedule()
                {
                    SnapshotsToKeep = 5,
                    Hour            = 15,
                    Minute          = 30
                },

                WeeklySchedule = new WeeklySchedule()
                {
                    SnapshotsToKeep = 5,
                    Day             = "Monday",
                    Hour            = 12,
                    Minute          = 30
                },

                MonthlySchedule = new MonthlySchedule()
                {
                    SnapshotsToKeep = 5,
                    DaysOfMonth     = "10,11,12",
                    Hour            = 14,
                    Minute          = 50
                }
            };

            return(await anfClient.SnapshotPolicies.CreateAsync(snapshotPolicyBody, resourceGroupName, accountName, snapshotPolicyName));
        }
 /// <summary>
 /// Create a snapshot policy
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='body'>
 /// Snapshot policy object supplied in the body of the operation.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group.
 /// </param>
 /// <param name='accountName'>
 /// The name of the NetApp account
 /// </param>
 /// <param name='snapshotPolicyName'>
 /// The name of the snapshot policy target
 /// </param>
 /// <param name='cancellationToken'>
 /// The cancellation token.
 /// </param>
 public static async Task <SnapshotPolicy> CreateAsync(this ISnapshotPoliciesOperations operations, SnapshotPolicy body, string resourceGroupName, string accountName, string snapshotPolicyName, CancellationToken cancellationToken = default(CancellationToken))
 {
     using (var _result = await operations.CreateWithHttpMessagesAsync(body, resourceGroupName, accountName, snapshotPolicyName, null, cancellationToken).ConfigureAwait(false))
     {
         return(_result.Body);
     }
 }
 /// <summary>
 /// Create a snapshot policy
 /// </summary>
 /// <param name='operations'>
 /// The operations group for this extension method.
 /// </param>
 /// <param name='body'>
 /// Snapshot policy object supplied in the body of the operation.
 /// </param>
 /// <param name='resourceGroupName'>
 /// The name of the resource group.
 /// </param>
 /// <param name='accountName'>
 /// The name of the NetApp account
 /// </param>
 /// <param name='snapshotPolicyName'>
 /// The name of the snapshot policy target
 /// </param>
 public static SnapshotPolicy Create(this ISnapshotPoliciesOperations operations, SnapshotPolicy body, string resourceGroupName, string accountName, string snapshotPolicyName)
 {
     return(operations.CreateAsync(body, resourceGroupName, accountName, snapshotPolicyName).GetAwaiter().GetResult());
 }