Refactor to make node_modules and package.json write-able

This commit is contained in:
Pirate Praveen 2020-12-21 20:48:56 +05:30
parent 43df5d0233
commit 0b96d9e2bc
6 changed files with 17 additions and 10 deletions

1
debian/control vendored
View file

@ -397,6 +397,7 @@ Depends: ${shlibs:Depends}, ${misc:Depends},
node-marked (>= 0.3~),
node-mermaid,
node-minimatch,
node-miragejs,
node-mousetrap,
node-pdfjs-dist,
# Include node-pikaday only after @gitlab/ui is accepted

View file

@ -50,7 +50,7 @@ jest.config.*.js usr/share/gitlab
lib usr/share/gitlab
locale usr/share/gitlab
MAINTENANCE.md usr/share/gitlab
package.json usr/share/gitlab
package.json var/lib/gitlab
PHILOSOPHY.md usr/share/gitlab
plugins usr/share/gitlab
PROCESS.md usr/share/gitlab

9
debian/gitlab.links vendored
View file

@ -1,17 +1,18 @@
var/lib/gitlab/public usr/share/gitlab/public
var/lib/gitlab/shared usr/share/gitlab/shared
var/lib/gitlab/db usr/share/gitlab/db
var/lib/gitlab/.node_modules usr/share/gitlab/node_modules
var/lib/gitlab/yarn.lock usr/share/gitlab/yarn.lock
var/lib/gitlab/node_modules usr/share/gitlab/node_modules
var/lib/gitlab/package.json usr/share/gitlab/package.json
var/lib/gitlab/yarn-error.log usr/share/gitlab/yarn-error.log
var/lib/gitlab/.ssh usr/share/gitlab/.ssh
var/lib/gitlab/.bundle usr/share/gitlab/.bundle
var/lib/gitlab/yarn.lock usr/share/gitlab/yarn.lock
var/lib/gitlab/.yarn usr/share/gitlab/.yarn
var/lib/gitlab/.yarnrc.yml usr/share/gitlab/.yarnrc.yml
var/lib/gitlab/.ssh usr/share/gitlab/.ssh
var/lib/gitlab/.bundle usr/share/gitlab/.bundle
var/lib/gitlab/secrets.yml etc/gitlab/secrets.yml
var/lib/gitlab/locale usr/share/gitlab/app/assets/javascripts/locale
usr/share/gitlab/app/assets/javascripts/locale.static/index.js var/lib/gitlab/locale/index.js
usr/share/gitlab/scripts var/lib/gitlab/scripts
var/log/gitlab usr/share/gitlab/log
var/log/gitlab/builds usr/share/gitlab/builds
run/gitlab usr/share/gitlab/tmp

View file

@ -131,6 +131,8 @@ case "$1" in
# Make yarn.lock writable
chown ${gitlab_user}: /var/lib/gitlab/yarn.lock
# Make package.json writable for yarn 2
chown ${gitlab_user}: /var/lib/gitlab/package.json
runuser -u ${gitlab_user} -- sh -c "chmod 700 ${gitlab_uploads_path}"
runuser -u ${gitlab_user} -- sh -c 'git config --global core.autocrlf "input"'

View file

@ -32,13 +32,13 @@ Use debian packaged node modules when available
- extensions: ['.js', '.gql', '.graphql'],
- modules: ['/usr/share/gitlab/node_modules','/usr/share/gitlab/node_modules/mermaid/node_modules', '/usr/lib/nodejs'],
+ extensions: ['.js', '.gql', '.graphql', '.json'],
+ modules: ['/usr/share/gitlab/node_modules','/usr/share/gitlab/vendor/node_modules','/usr/share/gitlab/node_modules/mermaid/node_modules', '/usr/share/nodejs/markdown-it/node_modules/', '/usr/lib/nodejs', '/usr/share/nodejs'],
+ modules: ['/var/lib/gitlab/node_modules','/usr/share/gitlab/vendor/node_modules','/usr/share/gitlab/node_modules/mermaid/node_modules', '/usr/share/nodejs/markdown-it/node_modules/', '/usr/lib/nodejs', '/usr/share/nodejs'],
alias,
},
resolveLoader: {
- modules: ['/usr/share/gitlab/node_modules', '/usr/lib/nodejs'],
+ modules: ['/usr/share/gitlab/node_modules', '/usr/lib/nodejs','/usr/share/nodejs'],
+ modules: ['/var/lib/gitlab/node_modules', '/usr/lib/nodejs','/usr/share/nodejs'],
},
module: {
@ -162,7 +162,8 @@ Use debian packaged node modules when available
- "mermaid": "^8.5.2",
"mersenne-twister": "1.1.0",
- "minimatch": "^3.0.4",
"miragejs": "^0.1.40",
- "miragejs": "^0.1.40",
+ "miragejs": "portal:/usr/share/nodejs/miragejs",
+ "mkdirp": "^1.0.4",
"mock-apollo-client": "^0.4.0",
"monaco-editor": "^0.20.0",

View file

@ -34,7 +34,7 @@ runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake db:migrate'
chmod 0700 ${gitlab_data_dir}/.gitlab_shell_secret
echo "Installing node modules..."
runuser -u ${gitlab_user} -- sh -c 'install -d /var/lib/gitlab/.node_modules'
cd /var/lib/gitlab
runuser -u ${gitlab_user} -- sh -c 'install -d /var/lib/gitlab/.cache'
runuser -u ${gitlab_user} -- sh -c 'yarnpkg set version berry'
runuser -u ${gitlab_user} -- sh -c 'if ! grep nodeLinker .yarnrc.yml >/dev/null; then echo "nodeLinker: \"node-modules\"" >>.yarnrc.yml; fi'
@ -42,6 +42,8 @@ runuser -u ${gitlab_user} -- sh -c 'yarnpkg install'
# Remove write permissions of .yarn-metadata.json files
runuser -u ${gitlab_user} -- sh -c 'test -d "/var/lib/gitlab/.cache/yarn/v6" && find /var/lib/gitlab/.cache/yarn/v6/ -name .yarn-metadata.json -perm -a=w -exec chmod 644 {} \;'
cd /usr/share/gitlab
echo "Precompiling locales..."
runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake gettext:po_to_json'
@ -51,4 +53,4 @@ runuser -u ${gitlab_user} -- sh -c '/usr/bin/bundle exec rake tmp:cache:clear as
echo "Webpacking..."
# Workaround for webpack crashing with nodejs 10 - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956211
# Build assets in production mode - https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=956508
runuser -u ${gitlab_user} -- sh -c 'NODE_ENV="production" NODE_OPTIONS="--max-old-space-size=4096" webpack --config config/webpack.config.js'
runuser -u ${gitlab_user} -- sh -c 'NODE_ENV="production" NODE_PATH="node_modules" NODE_OPTIONS="--max-old-space-size=4096" webpack --config config/webpack.config.js'