Skip to content

SG-43458 [Part3] Config Hooks#139

Open
carlos-villavicencio-adsk wants to merge 3 commits into
ticket/SG-43457_migration_2from
ticket/SG-43458_migration_3
Open

SG-43458 [Part3] Config Hooks#139
carlos-villavicencio-adsk wants to merge 3 commits into
ticket/SG-43457_migration_2from
ticket/SG-43458_migration_3

Conversation

@carlos-villavicencio-adsk
Copy link
Copy Markdown
Contributor

Base branch #138

Config Hooks migrations

Configurable hooks for DCCs. The plan is to migrate them and conditionally make them work based on the FlowAM context.

  • FlowActions base class (requires BuildAssetDialog from the framework)
  • tk-maya_actions
  • tk-nuke_actions
  • tk-houdini_actions
  • tk-desktop_actions

Now loader hooks are fully compatible with the classic behavior.

Config (basic) requirements

More information on tk-config-flowam PR 241

env/includes/maya/apps.yml

maya.apps.tk-multi-loader2:
  action_mappings:
    Alembic Cache: [reference, import]
    Image: [texture_node, image_plane]
    Maya Scene: [reference, import]
    Photoshop Image: [texture_node, image_plane]
    Rendered Image: [texture_node, image_plane]
    Texture: [texture_node, image_plane]
    # MEDM specific mappings
    All: [reference_copy_link, download]
    Maya Workfile: [reference_am, open, discard_draft]
    Alembic: [reference_am]
    Template: [open]
  # MEDM specific entity mappings
  entity_mappings:
    Project: [build_new_template]
    Task: [build_new_scene]
  actions_hook: '{self}/tk-maya_actions.py'
  use_medm_data: true

env/includes/nuke/apps.yml

nuke.apps.tk-multi-loader2:
  action_mappings:
    Alembic Cache: []
    Flame Render: [ create_read_node] # create_read_node is an MEDM action
    Flame Quicktime: [ create_read_node]
    Image: [ create_read_node]
    Movie: [ create_read_node]
    NukeStudio Project: [open_project]
    Photoshop Image: [ create_read_node]
    Rendered Image: [ create_read_node]
    Texture: [ create_read_node]
    # MEDM specific mappings
    All: [reference_copy_link]
    Nuke Workfile: [open,  discard_draft]
    Generic Workfile: [reference_copy_link, create_read_node]
    File Sequence: [reference_copy_link, create_read_node]
    Template: [open]
  entity_mappings:
    Project: [build_new_template]
    Task: [build_new_script]
  actions_hook: '{self}/tk-nuke_actions.py'
...

env/includes/houdini/apps.yml

houdini.apps.tk-multi-loader2:
    action_mappings:
      Alembic Cache: [import]
      Image: []
      Photoshop Image: [file_cop]
      Rendered Image: [file_cop]
      Texture: [file_cop]
      # MEDM specific mappings
      All: [reference_copy_link]
      Houdini Workfile: [open, discard_draft]
    entity_mappings:
      Project: [build_new_template]
      Task: [build_new_scene]
    actions_hook: '{self}/tk-houdini_actions.py'
...

env/includes/desktop/project.yml

    tk-multi-loader2:
      location: "@common.apps.tk-multi-loader2.location"
      actions_hook: "{self}/tk-desktop_actions.py"
      use_medm_data: true
      action_mappings:
        # DCC file types - can only be published within DCC env to avoid data corruption
        Maya Scene: [download, reference_copy_link]
        Nuke Script: [download, reference_copy_link]
        Houdini Scene: [download, reference_copy_link]
        All: [download, publish, reference_copy_link]
      entity_mappings:
        Task: [create_generic_asset]
        Project: [create_generic_asset]
      entities:
        - caption: Current Project
          type: Query
          entity_type: Project
          publish_filters: []
          filters:
          - ["id", "is", "{context.project.id}"]
          hierarchy: [name]
        - caption: My Tasks
          type: Query
          entity_type: Task
          publish_filters: []
          filters:
          - [task_assignees, is, "{context.user}"]
          - ["project", "is", "{context.project}"]
          hierarchy: [entity, content]

@carlos-villavicencio-adsk carlos-villavicencio-adsk changed the base branch from master to ticket/SG-43457_migration_2 May 29, 2026 14:18
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant