Skip to content

Commit 6db34d3

Browse files
committed
key-years
1 parent 694d12f commit 6db34d3

File tree

2 files changed

+9
-5
lines changed

2 files changed

+9
-5
lines changed

src/azure-cli/azure/cli/command_modules/role/_params.py

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,8 @@ def load_arguments(self, _):
191191
with self.argument_context(item) as c:
192192
# general credential arguments
193193
c.argument('years', type=int, default=None, arg_group='Credential',
194-
help='Number of years for which the credentials will be valid. Default: 1 year')
194+
help='Number of years for which the credentials will be valid. Each year contains 365 days.'
195+
'Leap years are not considered. Default: 1 year')
195196
c.argument('append', action='store_true', arg_group='Credential',
196197
help='Append the new credential instead of overwriting.')
197198
c.argument('end_date', default=None, arg_group='Credential',

src/azure-cli/azure/cli/command_modules/role/custom.py

Lines changed: 7 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,6 @@
2020
import uuid
2121

2222
import dateutil.parser
23-
from dateutil.relativedelta import relativedelta
2423
from knack.log import get_logger
2524
from knack.util import CLIError, todict
2625
from msrestazure.azure_exceptions import CloudError
@@ -1174,7 +1173,7 @@ def create_service_principal_for_rbac(
11741173
existing_sps = list(graph_client.service_principal_list(filter=query_exp))
11751174

11761175
app_start_date = datetime.datetime.now(datetime.timezone.utc)
1177-
app_end_date = app_start_date + relativedelta(years=years or 1)
1176+
app_end_date = app_start_date + datetime.timedelta(days=_years_to_days(years))
11781177

11791178
use_cert = False
11801179
public_cert_string = None
@@ -1659,7 +1658,7 @@ def _build_key_credentials(key_value=None, key_type=None, key_usage=None,
16591658
start_date = dateutil.parser.parse(start_date)
16601659

16611660
if not end_date:
1662-
end_date = start_date + relativedelta(years=1) - relativedelta(hours=24)
1661+
end_date = start_date + datetime.timedelta(days=_years_to_days(1))
16631662
elif isinstance(end_date, str):
16641663
end_date = dateutil.parser.parse(end_date)
16651664

@@ -1705,7 +1704,7 @@ def _reset_credential(cmd, graph_object, add_password_func, remove_password_func
17051704
raise CLIError('usage error: --years | --end-date')
17061705
if end_date is None:
17071706
years = years or 1
1708-
app_end_date = app_start_date + relativedelta(years=years)
1707+
app_end_date = app_start_date + datetime.timedelta(days=_years_to_days(years))
17091708
else:
17101709
app_end_date = dateutil.parser.parse(end_date)
17111710
if app_end_date.tzinfo is None:
@@ -2001,3 +2000,7 @@ def _get_member_groups(get_member_group_func, identifier, security_enabled_only)
20012000
"securityEnabledOnly": security_enabled_only
20022001
}
20032002
return get_member_group_func(identifier, body)
2003+
2004+
2005+
def _years_to_days(years):
2006+
return years * 365

0 commit comments

Comments
 (0)