[:arrow_left:](/WQum2tYYSXGaBjnU2wMxzQ)To Pirata Dashboard
[:arrow_left:](/FQqugZ49RLOLDOdm0Z1GlQ?both)To TD Dashboard
# **DUPLICATE TO ASSET TEST** TD_Pirata
###### tags: `TD` `Notice`
Il s’agit de pouvoir dupliquer un asset existant pour effectuer des tests sans impacter l’asset de prod.
Les différentes étapes de création sont:
* -création d’un asset lib avec le même template que l’asset lib selectionné
* nommage Test<current_asset_lib>
* -création dans Shotgun
* -création filesystem
* -création d’un asset avec le même template que l’asset selectionné
* -nommage Test<current_asset>
* -création dans Shotgun
* -création filesystem
* -copie et renommage des fichiers de l’asset lib et de l’asset dans le nouveau répertoire
* -création des versions et des publish du nouvel asset
* -modification des scènes maya, renommage des top nodes
le script de création de l’asset test est le suivant:
C:\Shotgun\tk-framework-millimages\hooks\tk_multi_crudfiles\duplicate_asset_test.py
**Il faut réferencer le plugin dans :**
C:\Shotgun\tk-config-millimages\env\includes\settings_pirataetcapitano02\tk-multi-crudfiles\default.yml
```
- name: Duplicate Asset Test
hook: "{self}/open_routine.py:{tk-framework-millimages_vx.x.x}/tk_multi_crudfiles/duplicate_asset_test.py"
engine: tk-maya
engine_version: 2020
batch_mode: True
settings: {}
plugins: []
```
**Il faut également mettre à jour le fichier suivant pour que le menu soit disponible pour les assets:**
C:\Shotgun\tk-config-millimages\env\includes\settings\tk-shotgun\asset.yml
avec ceci:
################################################################################
includes:
- ../../engine_locations.yml
- ../tk-multi-launchapp/default.yml
- ../tk-multi-publish2/default.yml
- ../tk-multi-screeningroom/default.yml
- ../tk-shotgun-folders/default.yml
- ../tk-shotgun-launchfolder/default.yml
- ../tk-shotgun-batcher/default.yml
- ../tk-multi-crudfiles/default.yml
################################################################################
settings.tk-shotgun:
apps:
tk-multi-launchapp: "@settings.tk-multi-launchapp"
tk-multi-publish2: "@settings.tk-multi-publish2.tk-desktop2"
tk-multi-screeningroom: "@settings.tk-multi-screeningroom.rv"
tk-shotgun-folders: "@settings.tk-shotgun-folders"
tk-shotgun-launchfolder: "@settings.tk-shotgun-launchfolder"
tk-multi-crudfiles: "@settings.tk-multi-crudfiles"
location: "@engines.tk-shotgun.location"
settings.tk-shotgun.step:
apps:
tk-multi-launchapp: "@settings.tk-multi-launchapp.step"
tk-multi-publish2: "@settings.tk-multi-publish2.tk-desktop2"
tk-multi-screeningroom: "@settings.tk-multi-screeningroom.rv"
tk-shotgun-launchfolder: "@settings.tk-shotgun-launchfolder"
tk-shotgun-batcher: "@settings.tk-shotgun-batcher"
tk-multi-crudfiles: "@settings.tk-multi-crudfiles"
location: "@engines.tk-shotgun.location"
**Pour finir il faut mettre à jour le fichier suivant:
C:\Shotgun\tk-multi-crudfiles\app.py**
ajout dans `def init_app(self):`
```
duplicate_asset_name = "Duplicate..."
parameters = {
"title": duplicate_asset_name,
"deny_permissions": deny_permissions,
"deny_platforms": deny_platforms,
"supports_multiple_selection": True,
"short_name": "duplicate_asset"
}
```
duplicate_asset_callback = lambda entity_type, entity_ids: self.duplicate_asset(entity_type, entity_ids)
self.engine.register_command(duplicate_asset_name, duplicate_asset_callback, parameters)
et ajout de:
```
def duplicate_asset(self, entity_type, entity_ids):
if not entity_ids:
self.log_info("No entities specified!")
return
plugin_name = "Duplicate Asset Test"
for entity_id in entity_ids:
plugin_input = [{"asset_id": entity_id}]
self.execute_plugin(plugin_name, plugin_input=plugin_input)
```