def __init__(self):
    super(SettingCompaction, self).__init__()
    self.parser.prog = 'couchbase-cli setting-compaction'
    group = self.parser.add_argument_group('Compaction settings')
    group.add_argument('--compaction-db-percentage', dest='db_perc', metavar='<perc>', type=int, help='Compacts the db once the fragmentation reaches this percentage')
    group.add_argument('--compaction-db-size', dest='db_size', metavar='<mebibytes>', type=int, help='Compacts db once the fragmentation reaches this size (MiB)')
    group.add_argument('--compaction-view-percentage', dest='view_perc', metavar='<perc>', type=int, help='Compacts the view once the fragmentation reaches this percentage')
    group.add_argument('--compaction-view-size', dest='view_size', metavar='<mebibytes>', type=int, help='Compacts view once the fragmentation reaches this size (MiB)')
    group.add_argument('--compaction-period-from', dest='from_period', metavar='<HH:MM>', help='Only run compaction after this time')
    group.add_argument('--compaction-period-to', dest='to_period', metavar='<HH:MM>', help='Only run compaction before this time')
    group.add_argument('--enable-compaction-abort', dest='enable_abort', metavar='<1|0>', choices=['0', '1'], help='Allow compactions to be aborted')
    group.add_argument('--enable-compaction-parallel', dest='enable_parallel', metavar='<1|0>', choices=['0', '1'], help='Allow parallel compactions')
    group.add_argument('--metadata-purge-interval', dest='purge_interval', metavar='<float>', type=float, help='The metadata purge interval')
    group.add_argument('--gsi-compaction-mode', dest='gsi_mode', choices=['append', 'circular'], help='Sets the gsi compaction mode (append or circular)')
    group.add_argument('--compaction-gsi-percentage', dest='gsi_perc', type=int, metavar='<perc>', help=('Starts compaction once gsi file fragmentation has reached this percentage' + '(Append mode only)'))
    group.add_argument('--compaction-gsi-interval', dest='gsi_interval', metavar='<days>', help='A comma separated list of days compaction can run (Circular mode only)')
    group.add_argument('--compaction-gsi-period-from', dest='gsi_from_period', metavar='<HH:MM>', help='Allow gsi compaction to run after this time (Circular mode only)')
    group.add_argument('--compaction-gsi-period-to', dest='gsi_to_period', metavar='<HH:MM>', help='Allow gsi compaction to run before this time (Circular mode only)')
    group.add_argument('--enable-gsi-compaction-abort', dest='enable_gsi_abort', metavar='<1|0>', choices=['0', '1'], help=('Abort gsi compaction if when run outside of the accepted interaval' + '(Circular mode only)'))
def __init__(self):
    super(SettingCompaction, self).__init__()
    self.parser.prog = 'couchbase-cli setting-compaction'
    group = self.parser.add_argument_group('Compaction settings')
    group.add_argument('--compaction-db-percentage', dest='db_perc', metavar='<perc>', type=int, help='Compacts the db once the fragmentation reaches this percentage')
    group.add_argument('--compaction-db-size', dest='db_size', metavar='<mebibytes>', type=int, help='Compacts db once the fragmentation reaches this size (MiB)')
    group.add_argument('--compaction-view-percentage', dest='view_perc', metavar='<perc>', type=int, help='Compacts the view once the fragmentation reaches this percentage')
    group.add_argument('--compaction-view-size', dest='view_size', metavar='<mebibytes>', type=int, help='Compacts view once the fragmentation reaches this size (MiB)')
    group.add_argument('--compaction-period-from', dest='from_period', metavar='<HH:MM>', help='Only run compaction after this time')
    group.add_argument('--compaction-period-to', dest='to_period', metavar='<HH:MM>', help='Only run compaction before this time')
    group.add_argument('--enable-compaction-abort', dest='enable_abort', metavar='<1|0>', choices=['0', '1'], help='Allow compactions to be aborted')
    group.add_argument('--enable-compaction-parallel', dest='enable_parallel', metavar='<1|0>', choices=['0', '1'], help='Allow parallel compactions')
    group.add_argument('--metadata-purge-interval', dest='purge_interval', metavar='<float>', type=float, help='The metadata purge interval')
    group.add_argument('--gsi-compaction-mode', dest='gsi_mode', choices=['append', 'circular'], help='Sets the gsi compaction mode (append or circular)')
    group.add_argument('--compaction-gsi-percentage', dest='gsi_perc', type=int, metavar='<perc>', help=('Starts compaction once gsi file fragmentation has reached this percentage' + '(Append mode only)'))
    group.add_argument('--compaction-gsi-interval', dest='gsi_interval', metavar='<days>', help='A comma separated list of days compaction can run (Circular mode only)')
    group.add_argument('--compaction-gsi-period-from', dest='gsi_from_period', metavar='<HH:MM>', help='Allow gsi compaction to run after this time (Circular mode only)')
    group.add_argument('--compaction-gsi-period-to', dest='gsi_to_period', metavar='<HH:MM>', help='Allow gsi compaction to run before this time (Circular mode only)')
    group.add_argument('--enable-gsi-compaction-abort', dest='enable_gsi_abort', metavar='<1|0>', choices=['0', '1'], help=('Abort gsi compaction if when run outside of the accepted interaval' + '(Circular mode only)'))