Zen 7.6 beta node_modules hozzáférés probléma

SecMan képe

Szerettem volna kipróbálni a Zen smink legújabb verzióját, igaz még csak béta verzióban van.

Minden szükséges előfeltétel (bundler, nodejs, npm, ruby) telepítve és sikeresen végig is mentem a readme lépésein. Természetesen külön mappában lévő alsmink létrehozásával.

De. Ilyen üzenetet kapok minden oldalon:
Warning: opendir(sites/all/themes/subtheme-neve/node_modules/browser-sync/node_modules/chokidar/node_modules/readdirp/node_modules/readable-stream/node_modules/inline-process-browser/node_modules/through2/node_modules/readable-stream/node_modules/isarray/build): failed to open dir: Permission denied file_scan_directory() függvényben (F:\inetpub\wwwroot\oldal-neve\includes\file.inc 2118 sor)

A környezet localhost, windows 7, IIS 7.5., PHP 5.4.24
Próbáltam a legfelső szinten lévő (közvetlenül az alsmink mappájában lévő) node_modules mappának és minden benne lévőnek tulajdonost váltani, próbáltam több féle felhasználónak is teljes hozzáférési beállításokkal, de már kb. az összes létező variációt végigpróbáltam és nem történt változás.

Melyik modulhoz, modulokhoz kapcsolódik a téma?: 
Drupal verzió: 
Fórum: 
ecrazor1911 képe

Én azt tapasztaltam, hogy a "node_modules" könyvtárban a NodeJS használ bizonyos *.info fájlokat, amit a Drupal félre értelmez (modulnak vagy sminknek veszi) és hibát okoz. Mindenképpen azt javaslom, hogy a node_modules könyvtárat mozgasd a drupal-on kívülre. Ha nagyon kell, akkor globálisan telepítsd fel a függőségeket.

Én fél napi szívás után találtam meg a hiba okát (igen a mágikus `strace` parancsig is eljutottam), miután segfault-ot okozott a drush modul engedélyezés/tiltásnál.

Lehet nálad is ez lesz a gond.

Update: Továbbá csúnya performancia gondokat is okoz, mert a drupal rekurzívan végignézi az összes könyvtárat van-e benne modul/smink. :-)

1
0
SecMan képe

Köszönöm.
Az *.info fájlok a package-ek telepítése után törlésre kerülnek a telepítő által. (ha nem sikerül törölnie akkor kézzel kell) Ez meg történt, nincs info fájl a node_modules könyvtárban. Erre hivatkoznak a readmeben: https://www.drupal.org/node/2329453 (ezt még át fogom tanulmányozni)

A tippet köszönöm, a kimozgatást is ki fogom próbálni, de egyelőre nem látom hogy az npm install végeredményét hogyan tudom befolyásolni. Új vagyok a package managerekben, de próbálkozom.

Addig is más ötlet, tipp, jótanácsot szívesen fogadok. Bár jogosultságra panaszkodik, ha az a baja, miért nem használt a jogosultság/tulajdonos állítás?

0
0
SecMan képe

Sikerült megoldanom, szerencsére közben kijött egy RC verzió és bővítették a readme-t.
A megoldás a következő volt (a starterkit és ruby részt kihagyom, azzal nem volt gond):
1. új mappa az inetpub-on (IIS-en) kívül, az inetpub mappával egy szinten van a kettő
2. gulpfile.js és package.json áthelyezése az új mappába
3.

  1. options.rootPath = {
  2. project : __dirname + '/',
  3. styleGuide : __dirname + '/styleguide/',
  4. theme : '../inetpub/wwwroot/drupal-telepites/sites/all/themes/projekt/'
  5. };

A theme útvonalát át kell írni, hogy megtalálja a drupalon belüli alsmink mappáját, későbbiekben ezt egészíti ki sass, css, js útvonalakkal.
Opcionálisan a stylguide is átírható lenne, de nekem megfelel, hogy nem a drupalon belül van.
4. A css lint továbbra is errort dobott az útvonalak miatt, így
  1. options.disableTask = {
  2. lintSass: true,
  3. browserSync: true
  4. };

5. innentől az új mappából indítható az npm install és a gulp, amitől a szükséges node_modules -ok már kikerültek a drupal (és IIS) alól
Innentől pedig az *.info fájlok se zavarják meg, és a jogosultságok, hosszú útvonalak sem.
0
0