1
- using System . Globalization ;
2
- using System . Text . Json ;
1
+ using System . Text . Json ;
3
2
using Json . Patch ;
4
3
using k8s ;
5
4
using k8s . Models ;
6
5
7
- double ConvertToUnixTimestamp ( DateTime date )
8
- {
9
- var origin = new DateTime ( 1970 , 1 , 1 , 0 , 0 , 0 , 0 , DateTimeKind . Utc ) ;
10
- var diff = date . ToUniversalTime ( ) - origin ;
11
- return Math . Floor ( diff . TotalSeconds ) ;
12
- }
13
-
14
6
async Task RestartDaemonSetAsync ( string name , string @namespace , IKubernetes client )
15
7
{
16
8
var daemonSet = await client . AppsV1 . ReadNamespacedDaemonSetAsync ( name , @namespace ) ;
17
9
var options = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy . CamelCase , WriteIndented = true } ;
18
10
var old = JsonSerializer . SerializeToDocument ( daemonSet , options ) ;
19
-
20
- var restart = new Dictionary < string , string > ( daemonSet . Spec . Template . Metadata . Annotations )
11
+ var now = DateTimeOffset . Now . ToUnixTimeSeconds ( ) ;
12
+ var restart = new Dictionary < string , string >
21
13
{
22
- [ "date" ] = ConvertToUnixTimestamp ( DateTime . UtcNow ) . ToString ( CultureInfo . InvariantCulture )
14
+ [ "date" ] = now . ToString ( )
23
15
} ;
24
16
25
17
daemonSet . Spec . Template . Metadata . Annotations = restart ;
@@ -35,10 +27,10 @@ async Task RestartDeploymentAsync(string name, string @namespace, IKubernetes cl
35
27
var deployment = await client . AppsV1 . ReadNamespacedDeploymentAsync ( name , @namespace ) ;
36
28
var options = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy . CamelCase , WriteIndented = true } ;
37
29
var old = JsonSerializer . SerializeToDocument ( deployment , options ) ;
38
-
39
- var restart = new Dictionary < string , string > ( deployment . Spec . Template . Metadata . Annotations )
30
+ var now = DateTimeOffset . Now . ToUnixTimeSeconds ( ) ;
31
+ var restart = new Dictionary < string , string >
40
32
{
41
- [ "date" ] = ConvertToUnixTimestamp ( DateTime . UtcNow ) . ToString ( CultureInfo . InvariantCulture )
33
+ [ "date" ] = now . ToString ( )
42
34
} ;
43
35
44
36
deployment . Spec . Template . Metadata . Annotations = restart ;
@@ -54,10 +46,10 @@ async Task RestartStatefulSetAsync(string name, string @namespace, IKubernetes c
54
46
var deployment = await client . AppsV1 . ReadNamespacedStatefulSetAsync ( name , @namespace ) ;
55
47
var options = new JsonSerializerOptions { PropertyNamingPolicy = JsonNamingPolicy . CamelCase , WriteIndented = true } ;
56
48
var old = JsonSerializer . SerializeToDocument ( deployment , options ) ;
57
-
58
- var restart = new Dictionary < string , string > ( deployment . Spec . Template . Metadata . Annotations )
49
+ var now = DateTimeOffset . Now . ToUnixTimeSeconds ( ) ;
50
+ var restart = new Dictionary < string , string >
59
51
{
60
- [ "date" ] = ConvertToUnixTimestamp ( DateTime . UtcNow ) . ToString ( CultureInfo . InvariantCulture )
52
+ [ "date" ] = now . ToString ( )
61
53
} ;
62
54
63
55
deployment . Spec . Template . Metadata . Annotations = restart ;
0 commit comments