[arch-commits] Commit in gitlab/repos (13 files)

Felix Yan felixonmars at archlinux.org
Thu Apr 9 01:03:25 UTC 2020


    Date: Thursday, April 9, 2020 @ 01:03:24
  Author: felixonmars
Revision: 612871

archrelease: copy trunk to community-staging-x86_64

Added:
  gitlab/repos/community-staging-x86_64/
  gitlab/repos/community-staging-x86_64/PKGBUILD
    (from rev 612870, gitlab/trunk/PKGBUILD)
  gitlab/repos/community-staging-x86_64/build_fix.patch
    (from rev 612870, gitlab/trunk/build_fix.patch)
  gitlab/repos/community-staging-x86_64/gitlab-backup.service
    (from rev 612870, gitlab/trunk/gitlab-backup.service)
  gitlab/repos/community-staging-x86_64/gitlab-backup.timer
    (from rev 612870, gitlab/trunk/gitlab-backup.timer)
  gitlab/repos/community-staging-x86_64/gitlab-mailroom.service
    (from rev 612870, gitlab/trunk/gitlab-mailroom.service)
  gitlab/repos/community-staging-x86_64/gitlab-sidekiq.service
    (from rev 612870, gitlab/trunk/gitlab-sidekiq.service)
  gitlab/repos/community-staging-x86_64/gitlab-unicorn.service
    (from rev 612870, gitlab/trunk/gitlab-unicorn.service)
  gitlab/repos/community-staging-x86_64/gitlab.install
    (from rev 612870, gitlab/trunk/gitlab.install)
  gitlab/repos/community-staging-x86_64/gitlab.logrotate
    (from rev 612870, gitlab/trunk/gitlab.logrotate)
  gitlab/repos/community-staging-x86_64/gitlab.target
    (from rev 612870, gitlab/trunk/gitlab.target)
  gitlab/repos/community-staging-x86_64/gitlab.tmpfiles.d
    (from rev 612870, gitlab/trunk/gitlab.tmpfiles.d)
  gitlab/repos/community-staging-x86_64/ruby27-pop-extra-arg.patch
    (from rev 612870, gitlab/trunk/ruby27-pop-extra-arg.patch)

----------------------------+
 PKGBUILD                   |  224 +++++++++++++++++++++++++++++++++++++++++++
 build_fix.patch            |   23 ++++
 gitlab-backup.service      |   20 +++
 gitlab-backup.timer        |   10 +
 gitlab-mailroom.service    |   22 ++++
 gitlab-sidekiq.service     |   31 +++++
 gitlab-unicorn.service     |   34 ++++++
 gitlab.install             |   20 +++
 gitlab.logrotate           |    6 +
 gitlab.target              |    7 +
 gitlab.tmpfiles.d          |    1 
 ruby27-pop-extra-arg.patch |   26 ++++
 12 files changed, 424 insertions(+)

Copied: gitlab/repos/community-staging-x86_64/PKGBUILD (from rev 612870, gitlab/trunk/PKGBUILD)
===================================================================
--- community-staging-x86_64/PKGBUILD	                        (rev 0)
+++ community-staging-x86_64/PKGBUILD	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,224 @@
+# Maintainer: Sven-Hendrik Haase <svenstaro at gmail.com>
+# Contributor: Pavol (Lopo) Hluchy <lopo AT losys DOT eu>
+# Contributor: Jonas Heinrich <onny at project-insanity.org>
+# Contributor: Massimiliano Torromeo <massimiliano.torromeo at gmail.com>
+# Contributor: Tobias Hunger <tobias DOT hunger AT gmail DOT com>
+# Contributor: Stefan Tatschner <stefan at sevenbyte.org>
+# Contributor: Caleb Maclennan <caleb at alerque.com>
+
+# NOTE: Gitlab isn't always compatible with modern Ruby versions. In that case, check the
+# commit log for an old fix on how to tell it to use older versions of Ruby. I'm afraid we'll
+# need this again at some point in the future.
+pkgname=gitlab
+pkgver=12.9.2
+pkgrel=2
+pkgdesc="Project management and code hosting application"
+arch=('x86_64')
+url="https://gitlab.com/gitlab-org/gitlab-foss"
+license=('MIT')
+options=(!buildflags)
+depends=('ruby' 'ruby-bundler' 'git' 'gitlab-workhorse' 'gitlab-gitaly' 'openssh' 'redis' 'libxslt' 'icu' 're2' 'http-parser' 'nodejs' 'openssl')
+makedepends=('cmake' 'postgresql' 'yarn' 'go' 'nodejs')
+optdepends=('postgresql: database backend'
+            'python-docutils: reStructuredText markup language support'
+            'smtp-server: mail server in order to receive mail notifications')
+backup=("etc/webapps/gitlab/application.rb"
+        "etc/webapps/gitlab/gitlab.yml"
+        "etc/webapps/gitlab/resque.yml"
+        "etc/webapps/gitlab/unicorn.rb"
+        "etc/logrotate.d/gitlab")
+source=(git+https://gitlab.com/gitlab-org/gitlab-foss.git#tag=v$pkgver
+        build_fix.patch
+        gitlab-unicorn.service
+        gitlab-sidekiq.service
+        gitlab-backup.service
+        gitlab-mailroom.service
+        gitlab-backup.timer
+        gitlab.target
+        gitlab.tmpfiles.d
+        gitlab.logrotate
+        ruby27-pop-extra-arg.patch)
+install='gitlab.install'
+sha512sums=('SKIP'
+            '9623de113358d3d6e49047f688e272d9394579734ace1bd647497e8717a90784546d27e547a29197a16c80d72ad9f2c79eb65f8edc631deadf2ec90ee86ea44b'
+            '1ad15b48890ad48e97a6fcea56132582f2b22aa27f4a1a1f4590f3ea72de4726e13ef6f3db2bc0984da1ef140bde092e74e0c9f8f1778f207f3fac4a31a77e4b'
+            '8ca36771f7568b190823ec47afeaf6ff75f61c5b6f31ce5d837a6dcd84a5b3da23fb07a1eceeda0752b2e61c4a8f4d17bf368fa2913e1487567944a8d29eeb58'
+            '0cbb9a1631b529a83d5c6db95fd3a684c8f06073890b31f6262c339360444e7452275d804fb6a119a3d61a0ef1b76d0e956f260a12f032d54c00308e8d9520b0'
+            '159530b50ac560c46703ef9ddd788cebc614bc53daa5b545ed8ac55f7ff4f9bb81a5149220a48770e8264e2cd5ca173f0f1f0ef4881f4e2350aaef007ea3e933'
+            'c11d2c59da8325551a465227096e8d39b0e4bcd5b1db21565cf3439e431838c04bc00aa6f07f4d493f3f47fd6b4e25aeb0fe0fc1a05756064706bf5708c960ec'
+            'bf33b818e4ea671c16f58563997ba5fe0a09090e5c03577ff974d31324d4e9782b85a9bb4f1749b97257ce93400c692de935f003770d52b5994c9cab9aee57c6'
+            'abacbff0d7be918337a17b56481c84e6bf3eddd9551efe78ba9fb74337179e95c9b60f41c49f275e05074a4074a616be36fa208a48fc12d5b940f0554fbd89c3'
+            '88e199d2f63e4f235930c35c6dfde80e6010e590907bd4de0af1fbfe6d5491ff56845aefcfe8edefa707712bd84fef96880655747b8bfb949ceeadc0456b0121'
+            '0cc5c1df3cd18978df9a01bb64680d3a375c1ff4de6a453045dd26355777b4f08e3a05f55f035c8012a9683100de0bc3d11c280debcb343eb7167fc25342d5c0')
+
+
+_datadir="/usr/share/webapps/gitlab"
+_etcdir="/etc/webapps/gitlab"
+_homedir="/var/lib/gitlab"
+_logdir="/var/log/gitlab"
+
+prepare() {
+  # Get first 7 characters from sha1 which has 40 characters in total
+  local revision=$(ls -d gitlab-foss | rev | cut -c 34-40 | rev)
+
+  cd gitlab-foss
+
+  patch -p1 < ../build_fix.patch
+
+  # GitLab tries to read its revision information from a file.
+  echo "${revision}" > REVISION
+
+  export SKIP_STORAGE_VALIDATION='true'
+
+  # Patching config files:
+  echo "Patching paths in and username gitlab.yml..."
+  sed -e "s|# user: git|user: gitlab|" \
+      -e "s|/home/git/gitaly/bin|/usr/bin|" \
+      -e "s|/home/git/repositories|${_homedir}/repositories|" \
+      -e "s|/home/git/gitlab-satellites|${_homedir}/satellites|" \
+      -e "s|# path: /mnt/gitlab|path: ${_homedir}/shared|" \
+      -e "s|/home/git/gitlab-shell|/usr/share/webapps/gitlab-shell|" \
+      -e "s|tmp/backups|${_homedir}/backups|" \
+      -e "s|/home/git/gitlab/tmp/sockets/private/gitaly.socket|${_homedir}/sockets/gitlab-gitaly.socket|" \
+      config/gitlab.yml.example > config/gitlab.yml
+
+  echo "Patching paths and timeout in unicorn.rb..."
+  sed -e "s|/home/git/gitlab/tmp/.*/|/run/gitlab/|g" \
+      -e "s|/var/run/|/run/|g" \
+      -e "s|/home/git/gitlab|${_datadir}|g" \
+      -e "s|${_datadir}/log/|${_logdir}/|g" \
+      config/unicorn.rb.example > config/unicorn.rb
+
+  # We need this one untouched because otherwise assets will fail
+  cp config/database.yml.postgresql config/database.yml.postgresql.orig
+
+  echo "Patching username in database.yml.postgresql..."
+  sed -i -e "s|username: git|username: gitlab|" config/database.yml.postgresql
+
+  echo "Patching redis connection in resque.yml"
+  sed -e "s|production: unix:/var/run/redis/redis.sock|production: redis://localhost:6379|" \
+      config/resque.yml.example > config/resque.yml.patched
+
+  echo "Setting up systemd service files ..."
+  for service_file in gitlab-sidekiq.service gitlab-unicorn.service gitlab.logrotate gitlab-backup.service gitlab-mailroom.service; do
+    sed -i "s|<HOMEDIR>|${_homedir}|g" "${srcdir}/${service_file}"
+    sed -i "s|<DATADIR>|${_datadir}|g" "${srcdir}/${service_file}"
+    sed -i "s|<LOGDIR>|${_logdir}|g" "${srcdir}/${service_file}"
+  done
+
+  # https://github.com/bundler/bundler/issues/6882
+  sed -e '/BUNDLED WITH/,+1d' -i Gemfile.lock
+  bundle lock --update=bundler-audit
+  # 'lock' adds 'BUNDLED WITH' back. Remove it again.
+  sed -e '/BUNDLED WITH/,+1d' -i Gemfile.lock
+}
+
+build() {
+  cd gitlab-foss
+
+  echo "Fetching bundled gems..."
+  # Gems will be installed into vendor/bundle
+  bundle config build.gpgme --use-system-libraries  # See https://bugs.archlinux.org/task/63654
+  bundle config force_ruby_platform true # some native gems are not available for newer ruby
+  bundle install --jobs=$(nproc) --no-cache --deployment --without development test aws kerberos
+
+  # workaround for a ruby2.7 issue
+  # https://gitlab.com/groups/gitlab-org/-/epics/2380
+  # https://github.com/ruby-grape/grape/issues/1967
+  pushd vendor/bundle/ruby/2.7.0/gems/grape-1.1.0/
+  patch -p1 < $srcdir/ruby27-pop-extra-arg.patch
+  popd
+
+  # We'll temporarily stick this in here so we can build the assets
+  cp config/database.yml.postgresql.orig config/database.yml
+  cp config/resque.yml.example config/resque.yml
+  sed -i 's/url.*/nope.sock/g' config/resque.yml
+
+  yarn install --production --pure-lockfile
+  bundle exec rake gitlab:assets:compile RAILS_ENV=production NODE_ENV=production NODE_OPTIONS="--max_old_space_size=4096"
+  bundle exec rake gettext:compile RAILS_ENV=production
+
+  # After building assets, clean this up again
+  rm config/database.yml config/database.yml.postgresql.orig
+  mv config/resque.yml.patched config/resque.yml
+}
+
+package() {
+  cd gitlab-foss
+  depends+=('gitlab-shell')
+
+  install -d "${pkgdir}/usr/share/webapps"
+
+  cp -r "${srcdir}"/gitlab-foss "${pkgdir}${_datadir}"
+  # Remove unneeded directories: node_modules is only needed during build
+  rm -r "${pkgdir}${_datadir}/node_modules"
+  # https://gitlab.com/gitlab-org/omnibus-gitlab/blob/194cf8f12e51c26980c09de6388bbd08409e1209/config/software/gitlab-rails.rb#L179
+  for dir in spec qa rubocop app/assets vendor/assets; do
+    rm -r "${pkgdir}${_datadir}/${dir}"
+  done
+
+  chown -R root:root "${pkgdir}${_datadir}"
+  chmod 755 "${pkgdir}${_datadir}"
+
+  install -dm750 -o 105 -g 105 "${pkgdir}${_homedir}"
+  install -dm750 -o 105 -g 105 "${pkgdir}${_homedir}/satellites"
+  install -dm750 -o 105 -g 105 "${pkgdir}${_homedir}/shared/"{,artifacts,lfs-objects}
+  install -dm750 -o 105 -g 105 "${pkgdir}${_homedir}/builds"
+  install -dm700 -o 105 -g 105 "${pkgdir}${_homedir}/uploads"
+  install -dm750 -o 105 -g 105 "${pkgdir}${_homedir}/backups"
+  install -dm750 -o 105 -g 105 "${pkgdir}${_etcdir}"
+  install -dm755 "${pkgdir}/usr/share/doc/gitlab"
+
+  ln -fs /run/gitlab "${pkgdir}${_homedir}/pids"
+  ln -fs /run/gitlab "${pkgdir}${_homedir}/sockets"
+  ln -fs ${_datadir}/log "${pkgdir}${_homedir}/log"
+
+  rm -rf "${pkgdir}${_datadir}/public/uploads" && ln -fs "${_homedir}/uploads" "${pkgdir}${_datadir}/public/uploads"
+  rm -rf "${pkgdir}${_datadir}/builds" && ln -fs "${_homedir}/builds" "${pkgdir}${_datadir}/builds"
+  rm -rf "${pkgdir}${_datadir}/tmp" && ln -fs /var/tmp "${pkgdir}${_datadir}/tmp"
+  rm -rf "${pkgdir}${_datadir}/log" && ln -fs "${_logdir}" "${pkgdir}${_datadir}/log"
+
+  # Fixes https://bugs.archlinux.org/task/59762
+  ln -s "${_datadir}/config/boot.rb" "${pkgdir}"/${_etcdir}/boot.rb
+
+  mv "${pkgdir}${_datadir}/.gitlab_workhorse_secret" "${pkgdir}${_etcdir}/gitlab_workhorse_secret"
+  chmod 660 "${pkgdir}${_etcdir}/gitlab_workhorse_secret"
+  chown root:105 "${pkgdir}${_etcdir}/gitlab_workhorse_secret"
+  ln -fs "${_etcdir}/gitlab_workhorse_secret" "${pkgdir}${_datadir}/.gitlab_workhorse_secret"
+
+  ln -fs /etc/webapps/gitlab-shell/secret "${pkgdir}${_datadir}/.gitlab_shell_secret"
+
+  sed -i "s|require_relative '../lib|require '${_datadir}/lib|" config/application.rb
+
+  # Install config files
+  for config_file in application.rb gitlab.yml unicorn.rb resque.yml; do
+    mv "config/${config_file}" "${pkgdir}${_etcdir}/"
+    [[ -f "${pkgdir}${_datadir}/config/${config_file}" ]] && rm "${pkgdir}${_datadir}/config/${config_file}"
+    ln -fs "${_etcdir}/${config_file}" "${pkgdir}${_datadir}/config/"
+  done
+
+  # Install database symlink
+  ln -fs "${_etcdir}/database.yml" "${pkgdir}${_datadir}/config/database.yml"
+
+  # Install secrets symlink
+  ln -fs "${_etcdir}/secrets.yml" "${pkgdir}${_datadir}/config/secrets.yml"
+
+  # Install license and help files
+  mv README.md MAINTENANCE.md CONTRIBUTING.md CHANGELOG.md PROCESS.md VERSION config/*.{example,postgresql} "${pkgdir}/usr/share/doc/gitlab"
+  install -Dm644 "LICENSE" "${pkgdir}/usr/share/licenses/gitlab/LICENSE"
+
+  # https://gitlab.com/gitlab-org/gitlab-foss/issues/765
+  cp -r "${pkgdir}${_datadir}/doc" "${pkgdir}${_datadir}/public/help"
+  find "${pkgdir}${_datadir}/public/help" -name "*.md" -exec rm {} \;
+  find "${pkgdir}${_datadir}/public/help/" -depth -type d -empty -exec rmdir {} \;
+
+  chown 105:105 "${pkgdir}${_datadir}/db/schema.rb"
+
+  # Install systemd service files
+  for service_file in gitlab-unicorn.service gitlab-sidekiq.service gitlab-backup.service gitlab-backup.timer gitlab.target gitlab-mailroom.service; do
+    install -Dm644 "${srcdir}/${service_file}" "${pkgdir}/usr/lib/systemd/system/${service_file}"
+  done
+
+  install -Dm644 "${srcdir}/gitlab.tmpfiles.d" "${pkgdir}/usr/lib/tmpfiles.d/gitlab.conf"
+  install -Dm644 "${srcdir}/gitlab.logrotate" "${pkgdir}/etc/logrotate.d/gitlab"
+}

Copied: gitlab/repos/community-staging-x86_64/build_fix.patch (from rev 612870, gitlab/trunk/build_fix.patch)
===================================================================
--- community-staging-x86_64/build_fix.patch	                        (rev 0)
+++ community-staging-x86_64/build_fix.patch	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,23 @@
+commit 96ff060075dc13332347c0c4d69bd4df5c6be8b7
+Author: Anatol Pomozov <anatol.pomozov at gmail.com>
+Date:   Sat Mar 21 09:13:31 2020 -0700
+
+    ArchLinux fixes
+
+diff --git a/Gemfile b/Gemfile
+index 51350401807..60b49c90adf 100644
+--- a/Gemfile
++++ b/Gemfile
+@@ -310,6 +310,12 @@ gem 'gettext_i18n_rails', '~> 1.8.0'
+ gem 'gettext_i18n_rails_js', '~> 1.3'
+ gem 'gettext', '~> 3.2.2', require: false, group: :development
+ 
++# Ping the gems that are needed for the old gettext
++# https://github.com/ruby-gettext/gettext/issues/64 the fix is available in gettext 3.3.0
++gem 'irb', '~> 1.1.0'  # use irb version that matches ruby 2.6. Later irb versions heavily modified its API and it breaks gettext
++gem 'e2mmap' # 'irb' 1.1.1 requires it
++
++
+ gem 'batch-loader', '~> 1.4.0'
+ 
+ # Perf bar

Copied: gitlab/repos/community-staging-x86_64/gitlab-backup.service (from rev 612870, gitlab/trunk/gitlab-backup.service)
===================================================================
--- community-staging-x86_64/gitlab-backup.service	                        (rev 0)
+++ community-staging-x86_64/gitlab-backup.service	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,20 @@
+[Unit]
+Description=GitLab Backup process
+Requires=
+After=network.target
+
+[Service]
+Type=oneshot
+User=gitlab
+Group=gitlab
+SyslogIdentifier=gitlab-backup
+WorkingDirectory=<DATADIR>
+# Prevent ExecJS from complaining that Node is not installed in production
+Environment=RAILS_ENV=production EXECJS_RUNTIME=Disabled
+CapabilityBoundingSet=
+PrivateTmp=true
+PrivateDevices=true
+ProtectSystem=full
+ProtectHome=true
+NoNewPrivileges=true
+ExecStart=/usr/bin/bundle exec rake gitlab:backup:create

Copied: gitlab/repos/community-staging-x86_64/gitlab-backup.timer (from rev 612870, gitlab/trunk/gitlab-backup.timer)
===================================================================
--- community-staging-x86_64/gitlab-backup.timer	                        (rev 0)
+++ community-staging-x86_64/gitlab-backup.timer	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,10 @@
+[Unit]
+Description=Daily gitlab backup
+
+[Timer]
+OnCalendar=daily
+AccuracySec=12h
+Persistent=true
+
+[Install]
+WantedBy=multi-user.target

Copied: gitlab/repos/community-staging-x86_64/gitlab-mailroom.service (from rev 612870, gitlab/trunk/gitlab-mailroom.service)
===================================================================
--- community-staging-x86_64/gitlab-mailroom.service	                        (rev 0)
+++ community-staging-x86_64/gitlab-mailroom.service	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,22 @@
+[Unit]
+Description=Gitlab Mailroom Worker
+Requires=gitlab-unicorn.service
+Wants=gitlab-unicorn.service
+After=gitlab-unicorn.service
+StartLimitIntervalSec=100s
+
+[Service]
+User=gitlab
+Group=gitlab
+WorkingDirectory=<DATADIR>
+# Prevent ExecJS from complaining that Node is not installed in production
+Environment=RAILS_ENV=production EXECJS_RUNTIME=Disabled
+SyslogIdentifier=gitlab-mailroom
+PIDFile=/run/gitlab/mailroom.pid
+ExecStart=/usr/bin/bundle exec mail_room -q -c <DATADIR>/config/mail_room.yml
+ExecStop=/usr/bin/kill -QUIT $MAINPID
+Restart=on-failure
+RestartSec=1
+
+[Install]
+WantedBy=multi-user.target

Copied: gitlab/repos/community-staging-x86_64/gitlab-sidekiq.service (from rev 612870, gitlab/trunk/gitlab-sidekiq.service)
===================================================================
--- community-staging-x86_64/gitlab-sidekiq.service	                        (rev 0)
+++ community-staging-x86_64/gitlab-sidekiq.service	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,31 @@
+[Unit]
+Description=GitLab Sidekiq Worker
+Requires=redis.service gitlab-unicorn.service
+Wants=mysqld.service postgresql.service
+After=redis.service mysqld.service postgresql.service network.target gitlab-unicorn.service
+JoinsNamespaceOf=gitlab-unicorn.service
+StartLimitIntervalSec=100s
+
+[Service]
+User=gitlab
+Group=gitlab
+WorkingDirectory=<DATADIR>
+# Prevent ExecJS from complaining that Node is not installed in production
+Environment=RAILS_ENV=production EXECJS_RUNTIME=Disabled
+SyslogIdentifier=gitlab-sidekiq
+PIDFile=/run/gitlab/sidekiq.pid
+PrivateTmp=true
+ProtectSystem=full
+ProtectHome=true
+# These options break Gitlab's email delivery if you
+# use postfix' sendmail wrapper. If you use an SMTP server
+# instead you can safely enable these security features.
+#NoNewPrivileges=true
+#CapabilityBoundingSet=
+ExecStart=/usr/bin/bundle exec sidekiq -C <DATADIR>/config/sidekiq_queues.yml -e production
+ExecStop=/usr/bin/bundle exec sidekiqctl stop /run/gitlab/sidekiq.pid
+Restart=on-failure
+RestartSec=1
+
+[Install]
+WantedBy=multi-user.target

Copied: gitlab/repos/community-staging-x86_64/gitlab-unicorn.service (from rev 612870, gitlab/trunk/gitlab-unicorn.service)
===================================================================
--- community-staging-x86_64/gitlab-unicorn.service	                        (rev 0)
+++ community-staging-x86_64/gitlab-unicorn.service	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,34 @@
+[Unit]
+Description=GitLab Unicorn Server
+Requires=redis.service
+Wants=mysqld.service postgresql.service
+After=redis.service mysqld.service postgresql.service network.target
+StartLimitIntervalSec=100s
+
+[Service]
+User=gitlab
+Group=gitlab
+WorkingDirectory=<DATADIR>
+# Prevent ExecJS from complaining that Node is not installed in production
+Environment=RAILS_ENV=production EXECJS_RUNTIME=Disabled
+SyslogIdentifier=gitlab-unicorn
+PIDFile=/run/gitlab/unicorn.pid
+RuntimeDirectory=gitlab
+RuntimeDirectoryMode=775
+PrivateTmp=true
+PrivateDevices=true
+ProtectSystem=full
+ProtectHome=true
+# These options break Gitlab's email delivery if you
+# use postfix' sendmail wrapper. If you use an SMTP server
+# instead you can safely enable these security features.
+#NoNewPrivileges=true
+#CapabilityBoundingSet=
+ExecStart=/usr/bin/bundle exec unicorn_rails -c <DATADIR>/config/unicorn.rb -E production
+ExecStop=/usr/bin/kill -QUIT $MAINPID
+ExecReload=/usr/bin/kill -USR2 $MAINPID
+Restart=on-failure
+RestartSec=1
+
+[Install]
+WantedBy=multi-user.target

Copied: gitlab/repos/community-staging-x86_64/gitlab.install (from rev 612870, gitlab/trunk/gitlab.install)
===================================================================
--- community-staging-x86_64/gitlab.install	                        (rev 0)
+++ community-staging-x86_64/gitlab.install	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,20 @@
+post_install() {
+    echo "Configure your /etc/webapps/gitlab/gitlab.yml"
+    echo "Set up your redis to run on /var/run/redis/redis.sock or configure gitlab to use redis TCP"
+    echo "Put a secret bytestring to /etc/webapps/gitlab/secret"
+    echo "Copy /usr/share/doc/gitlab/secrets.yml.example to /etc/webapps/gitlab/secrets.yml and configure it"
+    echo "Copy a database example config from /usr/share/doc/gitlab/ to /etc/webapps/gitlab/database.yml and configure it"
+    echo "Setup the database:"
+    echo "# su - gitlab -s /bin/sh -c \"cd '/usr/share/webapps/gitlab'; EXECJS_RUNTIME=Disabled bundle exec rake gitlab:setup RAILS_ENV=production\""
+    echo "Finally run the following commands to check your installation:"
+    echo "# su - gitlab -s /bin/sh -c \"cd '/usr/share/webapps/gitlab'; EXECJS_RUNTIME=Disabled bundle exec rake gitlab:env:info RAILS_ENV=production\""
+    echo "# su - gitlab -s /bin/sh -c \"cd '/usr/share/webapps/gitlab'; EXECJS_RUNTIME=Disabled bundle exec rake gitlab:check RAILS_ENV=production\""
+}
+
+post_upgrade() {
+    echo "You should upgrade your database:"
+    echo "# su - gitlab -s /bin/sh -c \"cd '/usr/share/webapps/gitlab'; EXECJS_RUNTIME=Disabled bundle exec rake db:migrate RAILS_ENV=production\""
+    echo "Afterwards, restart gitlab-related services:"
+    echo "# systemctl daemon-reload"
+    echo "# systemctl restart gitlab-sidekiq gitlab-unicorn gitlab-workhorse gitlab-gitaly"
+}

Copied: gitlab/repos/community-staging-x86_64/gitlab.logrotate (from rev 612870, gitlab/trunk/gitlab.logrotate)
===================================================================
--- community-staging-x86_64/gitlab.logrotate	                        (rev 0)
+++ community-staging-x86_64/gitlab.logrotate	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,6 @@
+<LOGDIR>/*.log {
+	missingok
+	compress
+	notifempty
+	copytruncate
+}

Copied: gitlab/repos/community-staging-x86_64/gitlab.target (from rev 612870, gitlab/trunk/gitlab.target)
===================================================================
--- community-staging-x86_64/gitlab.target	                        (rev 0)
+++ community-staging-x86_64/gitlab.target	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,7 @@
+[Unit]
+Description=GitLab - Self Hosted Git Management
+Requires=gitlab-unicorn.service gitlab-workhorse.service
+Wants=gitlab-sidekiq.service gitlab-backup.timer gitlab-gitaly.service gitlab-mailroom.service
+
+[Install]
+WantedBy=multi-user.target

Copied: gitlab/repos/community-staging-x86_64/gitlab.tmpfiles.d (from rev 612870, gitlab/trunk/gitlab.tmpfiles.d)
===================================================================
--- community-staging-x86_64/gitlab.tmpfiles.d	                        (rev 0)
+++ community-staging-x86_64/gitlab.tmpfiles.d	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1 @@
+d /run/gitlab 0775 gitlab gitlab - -

Copied: gitlab/repos/community-staging-x86_64/ruby27-pop-extra-arg.patch (from rev 612870, gitlab/trunk/ruby27-pop-extra-arg.patch)
===================================================================
--- community-staging-x86_64/ruby27-pop-extra-arg.patch	                        (rev 0)
+++ community-staging-x86_64/ruby27-pop-extra-arg.patch	2020-04-09 01:03:24 UTC (rev 612871)
@@ -0,0 +1,26 @@
+From 9ff085264c5ce3db12290c68bc8373578234e425 Mon Sep 17 00:00:00 2001
+From: dm1try <me at dmitry.it>
+Date: Sat, 11 Jan 2020 22:24:15 +0300
+Subject: [PATCH] fix args forwarding in Middleware::Stack#merge_with for ruby
+ 2.7.0 ref #1967
+
+---
+ CHANGELOG.md                        | 1 +
+ lib/grape/middleware/stack.rb       | 3 ++-
+ spec/grape/middleware/stack_spec.rb | 9 +++++++++
+ 3 files changed, 12 insertions(+), 1 deletion(-)
+
+diff --git a/lib/grape/middleware/stack.rb b/lib/grape/middleware/stack.rb
+index 8509a4653..488a51498 100644
+--- a/lib/grape/middleware/stack.rb
++++ b/lib/grape/middleware/stack.rb
+@@ -78,7 +78,8 @@ def use(*args, &block)
+       def merge_with(middleware_specs)
+         middleware_specs.each do |operation, *args|
+           if args.last.is_a?(Proc)
+-            public_send(operation, *args, &args.pop)
++            last_proc = args.pop
++            public_send(operation, *args, &last_proc)
+           else
+             public_send(operation, *args)
+           end



More information about the arch-commits mailing list