Skip to content

Commit

Permalink
annofab関連のコマンドで、--annofab_user_id--annofab_passowrdを指定できるようにした。 (#…
Browse files Browse the repository at this point in the history
  • Loading branch information
yuji38kwmt committed Jan 16, 2024
1 parent 9ca0227 commit a5c2f30
Show file tree
Hide file tree
Showing 7 changed files with 50 additions and 7 deletions.
8 changes: 7 additions & 1 deletion annoworkcli/annofab/list_job_with_annofab_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -139,7 +139,11 @@ def main(args):
main_obj = ListJobWithAnnofabProject(
annowork_service=annowork_service,
workspace_id=args.workspace_id,
annofab_service=build_annofabapi_resource_and_login(mfa_code=args.annofab_mfa_code),
annofab_service=build_annofabapi_resource_and_login(
annofab_login_user_id=args.annofab_user_id,
annofab_login_password=args.annofab_password,
mfa_code=args.annofab_mfa_code,
),
parallelism=args.parallelism,
)
job_list = main_obj.get_job_list_added_annofab_project(
Expand Down Expand Up @@ -212,6 +216,8 @@ def parse_args(parser: argparse.ArgumentParser):
parser.add_argument("--parallelism", type=int, required=False, help="並列度。指定しない場合は、逐次的に処理します。")

parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")
parser.set_defaults(subcommand_func=main)


Expand Down
9 changes: 8 additions & 1 deletion annoworkcli/annofab/list_working_hours.py
Original file line number Diff line number Diff line change
Expand Up @@ -439,7 +439,11 @@ def main(args):
main_obj = ListWorkingHoursWithAnnofab(
annowork_service=build_annoworkapi(args),
workspace_id=args.workspace_id,
annofab_service=build_annofabapi_resource_and_login(mfa_code=args.annofab_mfa_code),
annofab_service=build_annofabapi_resource_and_login(
annofab_login_user_id=args.annofab_user_id,
annofab_login_password=args.annofab_password,
mfa_code=args.annofab_mfa_code,
),
parallelism=args.parallelism,
)

Expand Down Expand Up @@ -516,6 +520,9 @@ def parse_args(parser: argparse.ArgumentParser):

parser.add_argument("--parallelism", type=int, required=False, help="並列度。指定しない場合は、逐次的に処理します。")
parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")

parser.set_defaults(subcommand_func=main)


Expand Down
11 changes: 10 additions & 1 deletion annoworkcli/annofab/put_account_external_linkage_info.py
Original file line number Diff line number Diff line change
Expand Up @@ -80,7 +80,13 @@ def main(self, af_workspace_name: str, user_id_list: list[str]):

def main(args):
annowork_service = build_annoworkapi(args)
annofab_service = build_annofabapi_resource_and_login(mfa_code=args.annofab_mfa_code)
annofab_service = (
build_annofabapi_resource_and_login(
annofab_login_user_id=args.annofab_user_id,
annofab_login_password=args.annofab_password,
mfa_code=args.annofab_mfa_code,
)
)
user_id_list = get_list_from_args(args.user_id)
assert user_id_list is not None
PutAnnofabAccountId(
Expand Down Expand Up @@ -113,6 +119,9 @@ def parse_args(parser: argparse.ArgumentParser):
help="上書きする",
)
parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")

parser.set_defaults(subcommand_func=main)


Expand Down
9 changes: 8 additions & 1 deletion annoworkcli/annofab/put_job_from_annofab_project.py
Original file line number Diff line number Diff line change
Expand Up @@ -59,7 +59,11 @@ def main(args):
main_obj = PutJobFromAnnofabProject(
annowork_service=annowork_service,
workspace_id=args.workspace_id,
annofab_service=build_annofabapi_resource_and_login(mfa_code=args.annofab_mfa_code),
annofab_service=build_annofabapi_resource_and_login(
annofab_login_user_id=args.annofab_user_id,
annofab_login_password=args.annofab_password,
mfa_code=args.annofab_mfa_code,
),
)
main_obj.put_job_from_annofab_project(
parent_job_id=args.parent_job_id, annofab_project_id=args.annofab_project_id, job_id=args.job_id
Expand Down Expand Up @@ -99,6 +103,9 @@ def parse_args(parser: argparse.ArgumentParser):
help="追加するジョブのjob_idを指定してください。未指定の場合は ``--annofab_project_id`` の値と同じです。",
)
parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")

parser.set_defaults(subcommand_func=main)


Expand Down
9 changes: 8 additions & 1 deletion annoworkcli/annofab/reshape_working_hours.py
Original file line number Diff line number Diff line change
Expand Up @@ -1067,7 +1067,11 @@ def main(args):
main_obj = ReshapeWorkingHours(
annowork_service=build_annoworkapi(args),
workspace_id=args.workspace_id,
annofab_service=build_annofabapi_resource_and_login(mfa_code=args.annofab_mfa_code),
annofab_service=build_annofabapi_resource_and_login(
annofab_login_user_id=args.annofab_user_id,
annofab_login_password=args.annofab_password,
mfa_code=args.annofab_mfa_code,
),
parallelism=args.parallelism,
)

Expand Down Expand Up @@ -1233,6 +1237,9 @@ def parse_args(parser: argparse.ArgumentParser):

parser.add_argument("-o", "--output", type=Path, help="出力先")
parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")

parser.set_defaults(subcommand_func=main)


Expand Down
9 changes: 7 additions & 2 deletions annoworkcli/annofab/utils.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,12 @@
from annofabapi.exceptions import MfaEnabledUserExecutionError as AnnofabApiMfaEnabledUserExecutionError


def build_annofabapi_resource_and_login(*, mfa_code: Optional[str] = None) -> annofabapi.Resource:
def build_annofabapi_resource_and_login(
*,
annofab_login_user_id: Optional[str] = None,
annofab_login_password: Optional[str] = None,
mfa_code: Optional[str] = None
) -> annofabapi.Resource:
"""
annofabapi.Resourceインスタンスを生成したあと、ログインする。
Expand All @@ -17,7 +22,7 @@ def build_annofabapi_resource_and_login(*, mfa_code: Optional[str] = None) -> an
"""

service = build_annofabapi()
service = build_annofabapi(annofab_login_user_id, annofab_login_password)

try:
if mfa_code is not None:
Expand Down
2 changes: 2 additions & 0 deletions annoworkcli/annofab/visualize_statistics.py
Original file line number Diff line number Diff line change
Expand Up @@ -253,6 +253,8 @@ def parse_args(parser: argparse.ArgumentParser):
parser.add_argument("--temp_dir", type=Path, required=False, help="テンポラリディレクトリ")

parser.add_argument("--annofab_mfa_code", type=str, help="Annofabにログインする際のMFAコード")
parser.add_argument("--annofab_user_id", type=str, help="Annofabにログインする際のユーザID")
parser.add_argument("--annofab_password", type=str, help="Annofabにログインする際のパスワード")

# 残りの引数は `annofabcli statistics visualize`コマンドにそのまま渡す
parser.add_argument(
Expand Down

0 comments on commit a5c2f30

Please sign in to comment.