Skip to content

Commit

Permalink
feat: Add new setup to allow use nox command launch maya standalone
Browse files Browse the repository at this point in the history
Signed-off-by: loonghao <[email protected]>
  • Loading branch information
loonghao committed May 9, 2024
1 parent 382254f commit 74017fe
Show file tree
Hide file tree
Showing 2 changed files with 29 additions and 2 deletions.
22 changes: 20 additions & 2 deletions noxfile.py
Original file line number Diff line number Diff line change
Expand Up @@ -190,6 +190,22 @@ def dynamic_session(session: nox.Session):
)


def add_dynamic_maya_standalone_session(maya_version, mayapy, command):
session_name = f"maya-{maya_version}-s"

@nox.session(name=session_name, python=False)
def dynamic_session(session: nox.Session):
parser = argparse.ArgumentParser(prog=f"nox -s maya-{maya_version}-s")
parser.add_argument("pattern", type=str)
args = parser.parse_args(session.posargs)
session.run(
mayapy,
command,
args.pattern,
env={"PYTHONPATH": ROOT},
)


# Dynamic to set up nox sessions for Maya 2018-2026.
# For example, to run tests for Maya 2018, run:
# nox -s maya-2018
Expand All @@ -200,6 +216,8 @@ def dynamic_session(session: nox.Session):
maya_python = os.path.join(maya_setup["bin_root"], "mayapy.exe")
test_runner = os.path.join(ROOT, "tests", "_test_runner.py")
add_dynamic_maya_test_session(maya_version, maya_python, test_runner)
standalone_runner = os.path.join(ROOT, "run_maya_standalone.py")
add_dynamic_maya_standalone_session(maya_version, maya_python, standalone_runner)


@nox.session(name="make-zip")
Expand Down Expand Up @@ -237,6 +255,6 @@ def make_install_zip(session: nox.Session):
for root, _, files in os.walk(build_root):
for file in files:
zip_obj.write(os.path.join(root, file),
os.path.relpath(os.path.join(root, file),
os.path.join(build_root, '.')))
os.path.relpath(os.path.join(root, file),
os.path.join(build_root, '.')))
print("Saving to %s" % zip_file)
9 changes: 9 additions & 0 deletions run_maya_standalone.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
from maya_umbrella.maya_funs import maya_standalone_context
from maya_umbrella import MayaVirusScanner
import sys

pattern = sys.argv[-1]
print("Current pattern: {}".format(pattern))
with maya_standalone_context() as cmds:
api = MayaVirusScanner()
api.scan_files_from_pattern(pattern)

0 comments on commit 74017fe

Please sign in to comment.