nextcloud / nextcloud/workflow_script
Workflow script called multiple times
Nessuno ha ancora preso questa issue.
- Lingua principale
- PHP
- Stelle
- 89
- Fork
- 19
- Merge medio
- 6h 38m
- PR unite (30g)
- 3
Descrizione
Steps to reproduce
Context: I'm wanting to create a script to automatically convert videos. I wasn't seeing my script get triggered so I added 2 workflows for testing and had the script just log information when I noticed odd behavior. This is what I found.
- Install a vanilla nextcloud/vm instance of NextCloud
- Enable Workflow
- Add a workflow script on file upload (i.e. creation):
- When: File Created
- and User group membership is member of Users
- Run script: nc_video_converter upload %e %n %f
4.Add a workflow script on tag: - When: Tag assigned
- and User group membership is member of Users
- Run script: nc_video_converter tag %e %n %f
- Create a nc_video_converter script on the server
- sudo vim /usr/bin/nc_video_converter
#!/bin/bash echo "Running converter..." >> /var/log/nc_video_converter echo "$@" >> /var/log/nc_video_converter - sudo chmod +x /usr/bin/nc_video_converter
- (not sure if this is needed?) sudo chown www-data:www-data /usr/bin/nc_video_converter
- sudo vim /usr/bin/nc_video_converter
- Create a user assigned to the Users group
- Login as that user and upload a file
- Notice the /var/log/nc_video_converter file shows:
Running converter... tag OCP\SystemTag\ISystemTagObjectMapper::assignTags /myusername/files/Screen Shot 2020-04-02 at 4.02.43 PM.png /tmp/oc_tmp_6Z7GGl-.png Running converter... upload OCP\SystemTag\ISystemTagObjectMapper::assignTags /myusername/files/Screen Shot 2020-04-02 at 4.02.43 PM.png /tmp/oc_tmp_XjOYL4-.png - Add a tag to a file
- Notice the /var/log/nc_video_converter file shows:
Running converter... tag \OCP\Files::postCreate /myusername/files/Screen Shot 2020-04-02 at 4.02.33 PM.png /tmp/oc_tmp_Jd9L2p-.png Running converter... upload \OCP\Files::postCreate /myusername/files/Screen Shot 2020-04-02 at 4.02.33 PM.png /tmp/oc_tmp_5evyop-.png
Expected behaviour
I expect that when I upload a file that only the workflow for the file upload would be triggered.
I expect that when I tag a file that only the workflow for the tag would be triggered.
Actual behaviour
When I upload a file both the file upload AND the tag workflows were triggered. Interestingly, though, you can see that both workflows printed the same event name: OCP\SystemTag\ISystemTagObjectMapper::assignTags.
When I tag a file both both workflows were triggered. Interestingly, both workflows printed the same event name \OCP\Files::postCreate.
Workflow Script app
Workflow Script app version: 1.3.1
Server configuration
Operating system: Ubuntu 18.04 LTS (Linux ubuntu-bionic 4.15.0-91-generic)
Web server: Apache
Database: PostgreSQL
PHP version: PHP 7.2.24-0ubuntu0.18.04.3 (cli)
Nextcloud Version: 18.0.3
Where did you install Nextcloud from: github.com/nextcloud/vm using the virtualbox example
Signing status:
No errors have been found.
List of activated apps:
Enabled:
- accessibility: 1.4.0
- activity: 2.11.0
- admin_audit: 1.8.0
- cloud_federation_api: 1.1.0
- comments: 1.8.0
- dav: 1.14.0
- federatedfilesharing: 1.8.0
- federation: 1.8.0
- files: 1.13.1
- files_pdfviewer: 1.7.0
- files_rightclick: 0.15.2
- files_sharing: 1.10.1
- files_trashbin: 1.8.0
- files_versions: 1.11.0
- files_videoplayer: 1.7.0
- firstrunwizard: 2.7.0
- logreader: 2.3.0
- lookup_server_connector: 1.6.0
- nextcloud_announcements: 1.7.0
- notifications: 2.6.0
- oauth2: 1.6.0
- password_policy: 1.8.0
- photos: 1.0.0
- privacy: 1.2.0
- provisioning_api: 1.8.0
- recommendations: 0.6.0
- serverinfo: 1.8.0
- settings: 1.0.0
- sharebymail: 1.8.0
- support: 1.1.0
- survey_client: 1.6.0
- systemtags: 1.8.0
- text: 2.0.0
- theming: 1.9.0
- twofactor_backupcodes: 1.7.0
- updatenotification: 1.8.0
- video_converter: 0.1.3
- viewer: 1.2.0
- workflow_script: 1.3.1
- workflowengine: 2.0.0
Disabled:
- encryption
- files_external
- user_ldap
Nextcloud configuration:
or
Insert your config.php content here
Make sure to remove all sensitive content such as passwords. (e.g. database password, passwordsalt, secret, smtp password, …)
</details>
**Are you using external storage, if yes which one:** local/smb/sftp/...
**Are you using encryption:** yes/no
### Server log (data/nextcloud.log)
<details>
(not available)
</details>
Guida per i contributori
Apri la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Direzione di ricerca
Inizia riproducendo il problema con le app workflow_script 1.3.1 e workflowengine 2.0.0, usando le due configurazioni di workflow e lo script /usr/bin/nc_video_converter descritto qui. Traccia i nomi degli eventi OCP segnalati per la creazione dei file e l’assegnazione dei tag; il lavoro è completato quando il caricamento e l’assegnazione dei tag attivano ciascuno solo il workflow corrispondente con l’evento corretto.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- php
- Ambito
- backend
- Tipo di issue
- Bug
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 38/100