diff --git a/.github/workflows/pr_unittests.yaml b/.github/workflows/pr_unittests.yaml new file mode 100644 index 0000000000..811843d5e3 --- /dev/null +++ b/.github/workflows/pr_unittests.yaml @@ -0,0 +1,31 @@ +name: 🧐 Run Unit Tests + +on: + push: + branches: [ develop ] + pull_request: + branches: [ develop ] + + workflow_dispatch: + +concurrency: + group: ${{ github.workflow }}-${{ github.event.pull_request.number}} + cancel-in-progress: true + +permissions: + contents: read + pull-requests: write + +jobs: + tests: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v4 + - name: Set up Python + uses: actions/setup-python@v5 + with: + python-version: '3.9' + - name: Install requirements + run: ./tools/manage.sh create-env + - name: Run tests + run: ./tools/manage.sh run-tests diff --git a/client/ayon_core/lib/transcoding.py b/client/ayon_core/lib/transcoding.py index e9750864ac..1fda014bd8 100644 --- a/client/ayon_core/lib/transcoding.py +++ b/client/ayon_core/lib/transcoding.py @@ -53,7 +53,7 @@ IMAGE_EXTENSIONS = { ".kra", ".logluv", ".mng", ".miff", ".nrrd", ".ora", ".pam", ".pbm", ".pgm", ".ppm", ".pnm", ".pcx", ".pgf", ".pictor", ".png", ".psd", ".psb", ".psp", ".qtvr", - ".ras", ".rgbe", ".sgi", ".tga", + ".ras", ".rgbe", ".sgi", ".sxr", ".tga", ".tif", ".tiff", ".tiff/ep", ".tiff/it", ".ufo", ".ufp", ".wbmp", ".webp", ".xr", ".xt", ".xbm", ".xcf", ".xpm", ".xwd" } diff --git a/client/ayon_core/plugins/publish/extract_thumbnail.py b/client/ayon_core/plugins/publish/extract_thumbnail.py index bd2f7eb0ae..da429c1cd2 100644 --- a/client/ayon_core/plugins/publish/extract_thumbnail.py +++ b/client/ayon_core/plugins/publish/extract_thumbnail.py @@ -343,8 +343,7 @@ class ExtractThumbnail(pyblish.api.InstancePlugin): # to be published locally continue - valid = "review" in tags or "thumb-nuke" in tags - if not valid: + if "review" not in tags: continue if not repre.get("files"): diff --git a/client/ayon_core/plugins/publish/extract_usd_layer_contributions.py b/client/ayon_core/plugins/publish/extract_usd_layer_contributions.py index a2698b03de..ec1fddc6b1 100644 --- a/client/ayon_core/plugins/publish/extract_usd_layer_contributions.py +++ b/client/ayon_core/plugins/publish/extract_usd_layer_contributions.py @@ -479,6 +479,7 @@ class CollectUSDLayerContributions(pyblish.api.InstancePlugin, profile = {} # Define defaults + default_enabled = profile.get("contribution_enabled", True) default_contribution_layer = profile.get( "contribution_layer", None) default_apply_as_variant = profile.get( @@ -513,7 +514,7 @@ class CollectUSDLayerContributions(pyblish.api.InstancePlugin, "In both cases the USD data itself is free to have " "references and sublayers of its own." ), - default=True), + default=default_enabled), TextDef("contribution_target_product", label="Target product", tooltip=( diff --git a/server/settings/publish_plugins.py b/server/settings/publish_plugins.py index d10a6b7507..c9c66e65d9 100644 --- a/server/settings/publish_plugins.py +++ b/server/settings/publish_plugins.py @@ -91,6 +91,15 @@ class CollectUSDLayerContributionsProfileModel(BaseSettingsModel): " creating from within that task type." ), ) + contribution_enabled: bool = SettingsField( + True, + title="Contribution Enabled (default)", + description=( + "The default state for USD Contribution being marked enabled or" + " disabled for this profile." + ), + section="Instance attribute defaults", + ) contribution_layer: str = SettingsField( "", title="Contribution Department Layer", @@ -99,7 +108,6 @@ class CollectUSDLayerContributionsProfileModel(BaseSettingsModel): " matching this profile. The layer name should be in the" " 'Department Layer Orders' list to get a sensible order." ), - section="Instance attribute defaults", ) contribution_apply_as_variant: bool = SettingsField( True, @@ -1082,6 +1090,7 @@ DEFAULT_PUBLISH_VALUES = { { "product_types": ["model"], "task_types": [], + "contribution_enabled": True, "contribution_layer": "model", "contribution_apply_as_variant": True, "contribution_target_product": "usdAsset" @@ -1089,6 +1098,7 @@ DEFAULT_PUBLISH_VALUES = { { "product_types": ["look"], "task_types": [], + "contribution_enabled": True, "contribution_layer": "look", "contribution_apply_as_variant": True, "contribution_target_product": "usdAsset" @@ -1096,6 +1106,7 @@ DEFAULT_PUBLISH_VALUES = { { "product_types": ["groom"], "task_types": [], + "contribution_enabled": True, "contribution_layer": "groom", "contribution_apply_as_variant": True, "contribution_target_product": "usdAsset" @@ -1103,6 +1114,7 @@ DEFAULT_PUBLISH_VALUES = { { "product_types": ["rig"], "task_types": [], + "contribution_enabled": True, "contribution_layer": "rig", "contribution_apply_as_variant": True, "contribution_target_product": "usdAsset" @@ -1110,6 +1122,7 @@ DEFAULT_PUBLISH_VALUES = { { "product_types": ["usd"], "task_types": [], + "contribution_enabled": True, "contribution_layer": "assembly", "contribution_apply_as_variant": False, "contribution_target_product": "usdShot"