Cloudron makes it easy to run web apps like WordPress, Nextcloud, GitLab on your server. Find out more or install now.


Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • Bookmarks
  • Search
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Brand Logo

Cloudron Forum

Apps | Demo | Docs | Install
  1. Cloudron Forum
  2. EspoCRM
  3. EspoCRM Extension installation failure

EspoCRM Extension installation failure

Scheduled Pinned Locked Moved Solved EspoCRM
espocrm
10 Posts 3 Posters 2.4k Views 3 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • jimcavoliJ Offline
      jimcavoliJ Offline
      jimcavoli
      App Dev
      wrote on last edited by girish
      #1

      I've purchased the EspoCRM Advanced Pack (https://www.espocrm.com/extensions/advanced-pack/) and gone to install it per the instructions (https://www.espocrm.com/documentation/administration/extensions/) to an EspoCRM instance running on one of my Cloudron installations. The file uploads fine, but the extension installer fails, spitting out the following error(s):

      Error: Permission denied for 
      application/Espo/Modules/Advanced/Acl, 
      application/Espo/Modules/Advanced/Business/Report/EmailBuilder.php, 
      application/Espo/Modules/Advanced/Business/Workflow/AssignmentRules, 
      application/Espo/Modules/Advanced/Controllers, 
      application/Espo/Modules/Advanced/Core/Bpmn, 
      application/Espo/Modules/Advanced/Core, 
      application/Espo/Modules/Advanced/Entities, 
      application/Espo/Modules/Advanced/Hooks/BpmnProcess, 
      application/Espo/Modules/Advanced/Hooks/BpmnUserTask/Resolve.php, 
      application/Espo/Modules/Advanced/Hooks/Common/Workflow.php, 
      application/Espo/Modules/Advanced/Hooks/Workflow/ReloadWorkflows.php, 
      application/Espo/Modules/Advanced/Jobs, 
      application/Espo/Modules/Advanced/Notificators/BpmnUserTask.php, 
      application/Espo/Modules/Advanced/Reports, 
      application/Espo/Modules/Advanced/Repositories, 
      application/Espo/Modules/Advanced/Resources/i18n/cs_CZ, 
      application/Espo/Modules/Advanced/Resources/i18n/de_DE, 
      application/Espo/Modules/Advanced/Resources/i18n/en_US, 
      application/Espo/Modules/Advanced/Resources/i18n/fr_FR, 
      application/Espo/Modules/Advanced/Resources/i18n/it_IT, 
      application/Espo/Modules/Advanced/Resources/i18n/pl_PL, 
      application/Espo/Modules/Advanced/Resources/i18n/ru_RU, 
      application/Espo/Modules/Advanced/Resources/i18n/uk_UA, 
      application/Espo/Modules/Advanced/Resources/layouts/BpmnFlowNode/listSmall.json, 
      application/Espo/Modules/Advanced/Resources/layouts/BpmnFlowchart, 
      application/Espo/Modules/Advanced/Resources/layouts/BpmnProcess, 
      application/Espo/Modules/Advanced/Resources/layouts/BpmnUserTask, 
      application/Espo/Modules/Advanced/Resources/layouts/Report, 
      application/Espo/Modules/Advanced/Resources/layouts/Workflow, 
      application/Espo/Modules/Advanced/Resources/metadata/app, 
      application/Espo/Modules/Advanced/Resources/metadata/clientDefs, 
      application/Espo/Modules/Advanced/Resources/metadata/dashlets, 
      application/Espo/Modules/Advanced/Resources/metadata/entityAcl/Report.json, 
      application/Espo/Modules/Advanced/Resources/metadata/entityDefs, 
      application/Espo/Modules/Advanced/Resources/metadata/scopes, 
      application/Espo/Modules/Advanced/Resources, 
      application/Espo/Modules/Advanced/SelectManagers, 
      application/Espo/Modules/Advanced/Services, 
      client/modules/advanced/css/bpmn.css, 
      client/modules/advanced/fonts, 
      client/modules/advanced/lib/espo-bpmn.js, 
      client/modules/advanced/res/templates/bpmn-flow-node/fields/element/detail.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart/fields/flowchart, 
      client/modules/advanced/res/templates/bpmn-flowchart/modals/element-detail.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart/record/panels/flowchart.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart-element/fields/actions/detail.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart-element/fields/conditions/detail.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart-element/fields/flows-conditions/detail.tpl, 
      client/modules/advanced/res/templates/bpmn-flowchart-element/fields/timer, 
      client/modules/advanced/res/templates/bpmn-user-task/modals/resolve.tpl, 
      client/modules/advanced/res/templates/bpmn-user-task/record/resolve.tpl, 
      client/modules/advanced/res/templates/dashlets/options/report.tpl, 
      client/modules/advanced/res/templates/report/fields/email-sending-time/edit.tpl, 
      client/modules/advanced/res/templates/report/fields/email-sending-weekdays, 
      client/modules/advanced/res/templates/report/fields/filters-control, 
      client/modules/advanced/res/templates/report/filters, 
      client/modules/advanced/res/templates/report/modals, 
      client/modules/advanced/res/templates/report/record, 
      client/modules/advanced/res/templates/report/reports, 
      client/modules/advanced/res/templates/report, 
      client/modules/advanced/res/templates/workflow/action-fields, 
      client/modules/advanced/res/templates/workflow/action-modals, 
      client/modules/advanced/res/templates/workflow/actions, 
      client/modules/advanced/res/templates/workflow/condition-fields, 
      client/modules/advanced/res/templates/workflow/conditions, 
      client/modules/advanced/res/templates/workflow/field-definitions, 
      client/modules/advanced/res/templates/workflow/fields/help-text/detail.tpl, 
      client/modules/advanced/res/templates/workflow/record, 
      client/modules/advanced/src/controllers/report.js, 
      client/modules/advanced/src/dynamic-handlers, 
      client/modules/advanced/src
      

      It looks like /app/code/5.6.9/application/Espo/Modules and /app/code/5.6.9/client/modules are supposed to be writable - since those are where the extension installer is attempting to write files. This seems to be confirmed by visiting the /#Admin/systemRequirements page on the same EspoCRM instance - the only failures on that page are the ones shown in the partial screenshot below, which are also paths that are in the earlier error message when trying to install the extension:
      EspoCRM System Requirements.png

      Also, per the EspoCRM Server Configuration section of the Administration guide (https://www.espocrm.com/documentation/administration/server-configuration/#user-content-required-permissions-for-unix-based-systems) :

      /application/Espo/Modules, /client/modules – should be writable the current directory (775 for the current directory, 644 for files, 755 for directories and subdirectories);"

      From some poking around through ssh and digging through /home/yellowtent and the container, it looks like these folders also aren't symlinked out to the mutable appsdata presently, which would seem to indicate to me that this might likely be most cleanly fixed with an update to the packaged app. All that said, if there's something I'm missing or have done wrong, please let me know! It's very important to get this (and soon probably another or two) EspoCRM Extension working, and I definitely don't want to have to stand up a non-cloudron app install of EspoCRM just to do so.

      1 Reply Last reply
      1
      • girishG Offline
        girishG Offline
        girish
        Staff
        wrote on last edited by
        #2

        @jimcavoli This is a bug in the packaging. Working on a fix.

        1 Reply Last reply
        0
        • girishG Offline
          girishG Offline
          girish
          Staff
          wrote on last edited by
          #3

          This should be fixed now. Have pushed an update.

          1 Reply Last reply
          0
          • jimcavoliJ Offline
            jimcavoliJ Offline
            jimcavoli
            App Dev
            wrote on last edited by
            #4

            I'm now trying to install the VoIP Integration (https://www.espocrm.com/extensions/voip-integration/) extension. It fails with a similar but potentially much more problematic message:

            Error: Permission denied: 
            starface.php
            voip-service.php
            voip.php
            

            I noticed that in the the files directory for the Advanced Pack which is installable/updatable just contains the application and client folders, with each seeming to map down to a structure that follows from the root of the codebase, through symlinks, back out to the /app/data folder before any files are present.

            The VoIP Integration package is similarly set up, save for having those three additional files that are raising the errors just inside of files. So it looks like this particular extension is trying to add these three PHP files to the root of the codebase, which is of course read-only. Any idea how we can make this work?

            1 Reply Last reply
            0
            • jimcavoliJ Offline
              jimcavoliJ Offline
              jimcavoli
              App Dev
              wrote on last edited by
              #5

              I've also reached out to EspoCRM to ensure that this is correct and the intended design on their part

              1 Reply Last reply
              0
              • jimcavoliJ Offline
                jimcavoliJ Offline
                jimcavoli
                App Dev
                wrote on last edited by
                #6

                The only thing I can think of is prepping another location in /app/data to receive those files when uploaded and giving the codebase some potentially dead-ended symlinks. I don't think that would break anything on installations without the extension, but would allow it to work once added. That said, it's a little brittle if they were to change the filenames, but I can't think of many better ways to handle it without putting the whole codebase into /app/data which definitely defeats the purpose and benefit of the packaged app.

                1 Reply Last reply
                0
                • girishG Offline
                  girishG Offline
                  girish
                  Staff
                  wrote on last edited by
                  #7

                  @jimcavoli Thanks!

                  One idea to explore is to see if creating sym links in the root solves the problem. This way the package can come out of the box with some br0ken symlinks to support these extensions. If this is by design of the upstream app, then there is no other solution.

                  (Jim & I are working on this).

                  1 Reply Last reply
                  0
                  • girishG Offline
                    girishG Offline
                    girish
                    Staff
                    wrote on last edited by
                    #8

                    We released a new version that fixes this. @jimcavoli thanks for helping us fix it!

                    1 Reply Last reply
                    3
                    • D Offline
                      D Offline
                      dogansur
                      wrote on last edited by
                      #9

                      i have also faced same issue but its solved now

                      D 1 Reply Last reply
                      0
                      • D dogansur

                        i have also faced same issue but its solved now

                        D Offline
                        D Offline
                        dogansur
                        wrote on last edited by
                        #10

                        @dogansur this forum is very helpful.. .

                        1 Reply Last reply
                        0
                        Reply
                        • Reply as topic
                        Log in to reply
                        • Oldest to Newest
                        • Newest to Oldest
                        • Most Votes


                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Categories
                          • Recent
                          • Tags
                          • Popular
                          • Bookmarks
                          • Search