152
152
SPEC_S3_ENDPOINT ,
153
153
SPEC_S3_BUCKET ,
154
154
SPEC_S3_PATH ,
155
- SPEC_BACKUP ,
156
- SPEC_BACKUP_BACKUPS3 ,
157
- SPEC_BACKUP_BACKUPS3_NAME ,
158
- SPEC_BACKUP_MANUAL ,
159
- SPEC_BACKUP_TRIGGER_ID ,
160
- SPEC_BACKUP_CRON ,
161
- SPEC_BACKUP_CRON_ENABLE ,
162
- SPEC_BACKUP_CRON_SCHEDULE ,
163
- SPEC_BACKUP_POLICY ,
164
- SPEC_BACKUP_POLICY_ARCHIVE ,
165
- SPEC_BACKUP_POLICY_ARCHIVE_DEFAULT_VALUE ,
166
- SPEC_BACKUP_POLICY_COMPRESSION ,
167
- SPEC_BACKUP_POLICY_COMPRESSION_DEFAULT_VALUE ,
168
- SPEC_BACKUP_POLICY_ENCRYPTION ,
169
- SPEC_BACKUP_POLICY_ENCRYPTION_DEFAULT_VALUE ,
170
- SPEC_BACKUP_POLICY_RETENTION ,
171
- SPEC_BACKUP_POLICY_RETENTION_DEFAULT_VALUE ,
155
+ SPEC_BACKUPCLUSTER ,
156
+ SPEC_BACKUPTOS3 ,
157
+ SPEC_BACKUPTOS3_NAME ,
158
+ SPEC_BACKUPTOS3_MANUAL ,
159
+ SPEC_BACKUPTOS3_MANUAL_TRIGGER_ID ,
160
+ SPEC_BACKUPTOS3_CRON ,
161
+ SPEC_BACKUPTOS3_CRON_ENABLE ,
162
+ SPEC_BACKUPTOS3_CRON_SCHEDULE ,
163
+ SPEC_BACKUPTOS3_POLICY ,
164
+ SPEC_BACKUPTOS3_POLICY_ARCHIVE ,
165
+ SPEC_BACKUPTOS3_POLICY_ARCHIVE_DEFAULT_VALUE ,
166
+ SPEC_BACKUPTOS3_POLICY_COMPRESSION ,
167
+ SPEC_BACKUPTOS3_POLICY_COMPRESSION_DEFAULT_VALUE ,
168
+ SPEC_BACKUPTOS3_POLICY_ENCRYPTION ,
169
+ SPEC_BACKUPTOS3_POLICY_ENCRYPTION_DEFAULT_VALUE ,
170
+ SPEC_BACKUPTOS3_POLICY_RETENTION ,
171
+ SPEC_BACKUPTOS3_POLICY_RETENTION_DEFAULT_VALUE ,
172
172
RESTORE_FROMS3 ,
173
173
RESTORE_FROMS3_NAME ,
174
174
RESTORE_FROMS3_RECOVERY ,
224
224
VOLUMECLAIMTEMPLATES )
225
225
DIFF_FIELD_SPEC_ANTIAFFINITY = (SPEC , SPEC_ANTIAFFINITY )
226
226
DIFF_FIELD_SPEC_S3 = (SPEC , SPEC_S3 )
227
- DIFF_FIELD_SPEC_BACKUP = (SPEC , SPEC_BACKUP )
228
- DIFF_FIELD_SPEC_BACKUP_MANUAL = (SPEC , SPEC_BACKUP , SPEC_BACKUP_MANUAL )
227
+ DIFF_FIELD_SPEC_BACKUPS3 = (SPEC , SPEC_BACKUPCLUSTER , SPEC_BACKUPTOS3 )
228
+ DIFF_FIELD_SPEC_BACKUPS3_MANUAL = (SPEC , SPEC_BACKUPCLUSTER , SPEC_BACKUPTOS3 , SPEC_BACKUPTOS3_MANUAL )
229
229
STATEFULSET_REPLICAS = 1
230
230
PG_CONFIG_MASTER_LARGE_THAN_SLAVE = ("max_connections" , "max_worker_processes" , "max_wal_senders" , "max_prepared_transactions" , "max_locks_per_transaction" )
231
231
PG_CONFIG_IGNORE = ("block_size" , "data_checksums" , "data_directory_mode" ,
@@ -1648,10 +1648,10 @@ def get_policy_env(policy: TypedDict) -> List:
1648
1648
res = list ()
1649
1649
1650
1650
default_policy = {
1651
- SPEC_BACKUP_POLICY_ARCHIVE : SPEC_BACKUP_POLICY_ARCHIVE_DEFAULT_VALUE ,
1652
- SPEC_BACKUP_POLICY_COMPRESSION : SPEC_BACKUP_POLICY_COMPRESSION_DEFAULT_VALUE ,
1653
- SPEC_BACKUP_POLICY_ENCRYPTION : SPEC_BACKUP_POLICY_ENCRYPTION_DEFAULT_VALUE ,
1654
- SPEC_BACKUP_POLICY_RETENTION : SPEC_BACKUP_POLICY_RETENTION_DEFAULT_VALUE
1651
+ SPEC_BACKUPTOS3_POLICY_ARCHIVE : SPEC_BACKUPTOS3_POLICY_ARCHIVE_DEFAULT_VALUE ,
1652
+ SPEC_BACKUPTOS3_POLICY_COMPRESSION : SPEC_BACKUPTOS3_POLICY_COMPRESSION_DEFAULT_VALUE ,
1653
+ SPEC_BACKUPTOS3_POLICY_ENCRYPTION : SPEC_BACKUPTOS3_POLICY_ENCRYPTION_DEFAULT_VALUE ,
1654
+ SPEC_BACKUPTOS3_POLICY_RETENTION : SPEC_BACKUPTOS3_POLICY_RETENTION_DEFAULT_VALUE
1655
1655
}
1656
1656
1657
1657
for k , v in policy .items ():
@@ -1845,7 +1845,10 @@ def is_backup_mode(
1845
1845
status : kopf .Status ,
1846
1846
logger : logging .Logger ,
1847
1847
) -> bool :
1848
- if spec .get (SPEC_BACKUP ) == None :
1848
+ if spec .get (SPEC_BACKUPCLUSTER ) == None :
1849
+ return False
1850
+
1851
+ if spec [SPEC_BACKUPCLUSTER ].get (SPEC_BACKUPTOS3 ) == None :
1849
1852
return False
1850
1853
1851
1854
return True
@@ -1865,7 +1868,7 @@ def is_s3_manual_backup_mode(
1865
1868
logger .warning ("s3 related information is not set." )
1866
1869
return False
1867
1870
1868
- if spec [SPEC_BACKUP ].get (SPEC_BACKUP_MANUAL ) != None :
1871
+ if spec [SPEC_BACKUPCLUSTER ].get (SPEC_BACKUPTOS3 , {}). get ( SPEC_BACKUPTOS3_MANUAL ) != None :
1869
1872
return True
1870
1873
1871
1874
return False
@@ -1885,7 +1888,7 @@ def is_s3_cron_backup_mode(
1885
1888
logger .warning ("s3 related information is not set." )
1886
1889
return False
1887
1890
1888
- if spec [SPEC_BACKUP ].get (SPEC_BACKUP_CRON ) != None :
1891
+ if spec [SPEC_BACKUPCLUSTER ].get (SPEC_BACKUPTOS3 , {}). get ( SPEC_BACKUPTOS3_CRON ) != None :
1889
1892
return True
1890
1893
1891
1894
return False
@@ -1923,10 +1926,10 @@ def backup_postgresql_to_s3(
1923
1926
s3 = spec [SPEC_S3 ].copy ()
1924
1927
s3_list = get_s3_env (s3 )
1925
1928
1926
- backup_policy = spec .get (SPEC_BACKUP , {}). get ( SPEC_BACKUP_POLICY , {})
1929
+ backup_policy = spec [ SPEC_BACKUPCLUSTER ][ SPEC_BACKUPTOS3 ] .get (SPEC_BACKUPTOS3_POLICY , {})
1927
1930
policy_list = get_policy_env (backup_policy )
1928
1931
1929
- name = spec [SPEC_BACKUP ] .get (SPEC_BACKUP_BACKUPS3 , {}). get ( SPEC_BACKUP_BACKUPS3_NAME , None )
1932
+ name = spec [SPEC_BACKUPCLUSTER ][ SPEC_BACKUPTOS3 ] .get (SPEC_BACKUPTOS3_NAME , None )
1930
1933
name_list = get_backup_name_env (meta , name )
1931
1934
1932
1935
s3_info = [* s3_list , * policy_list , * name_list ]
@@ -3575,7 +3578,7 @@ def correct_backup_status(
3575
3578
logger : logging .Logger ,
3576
3579
) -> None :
3577
3580
if is_s3_manual_backup_mode (meta , spec , patch , status , logger ) or is_s3_cron_backup_mode (meta , spec , patch , status , logger ):
3578
- if spec .get (SPEC_BACKUP , {}).get (SPEC_BACKUP_POLICY , {}). get ( SPEC_BACKUP_POLICY_ARCHIVE , "" ) == "on" :
3581
+ if spec [ SPEC_BACKUPCLUSTER ][ SPEC_BACKUPTOS3 ] .get (SPEC_BACKUPTOS3_POLICY , {}).get (SPEC_BACKUPTOS3_POLICY_ARCHIVE , "" ) == "on" :
3579
3582
readwrite_conns = connections (spec , meta , patch ,
3580
3583
get_field (POSTGRESQL , READWRITEINSTANCE ),
3581
3584
False , None , logger , None , status , False )
@@ -4856,11 +4859,11 @@ def update_cluster(
4856
4859
update_configs (meta , spec , patch , status , logger , AC , FIELD , OLD ,
4857
4860
NEW )
4858
4861
4859
- if FIELD [0 :len (DIFF_FIELD_SPEC_BACKUP_MANUAL
4860
- )] == DIFF_FIELD_SPEC_BACKUP_MANUAL or (
4861
- FIELD [0 :len (DIFF_FIELD_SPEC_BACKUP )]
4862
- == DIFF_FIELD_SPEC_BACKUP and AC == "add"
4863
- and OLD is None and SPEC_BACKUP_MANUAL in NEW ):
4862
+ if FIELD [0 :len (DIFF_FIELD_SPEC_BACKUPS3_MANUAL
4863
+ )] == DIFF_FIELD_SPEC_BACKUPS3_MANUAL or (
4864
+ FIELD [0 :len (DIFF_FIELD_SPEC_BACKUPS3 )]
4865
+ == DIFF_FIELD_SPEC_BACKUPS3 and AC == "add"
4866
+ and OLD is None and SPEC_BACKUPTOS3_MANUAL in NEW ):
4864
4867
need_backup_cluster = True
4865
4868
4866
4869
@@ -4922,8 +4925,9 @@ def cron_cluster(
4922
4925
scheduler : BackgroundScheduler ,
4923
4926
) -> None :
4924
4927
4925
- new_cron_expression = spec .get (SPEC_BACKUP , {}).get (SPEC_BACKUP_CRON , {}).get (SPEC_BACKUP_CRON_SCHEDULE , None )
4926
- cron_enable = spec .get (SPEC_BACKUP , {}).get (SPEC_BACKUP_CRON , {}).get (SPEC_BACKUP_CRON_ENABLE , None )
4928
+ cron = spec .get (SPEC_BACKUPCLUSTER , {}).get (SPEC_BACKUPTOS3 , {}).get (SPEC_BACKUPTOS3_CRON , {})
4929
+ new_cron_expression = cron .get (SPEC_BACKUPTOS3_CRON_SCHEDULE , None )
4930
+ cron_enable = cron .get (SPEC_BACKUPTOS3_CRON_ENABLE , None )
4927
4931
jobs = scheduler .get_jobs ()
4928
4932
4929
4933
if cron_enable :
0 commit comments