Artifact uploads fails when using a Windows network share to store artifacts, a Windows runner is used AND the project configuration includes `artifacts:reports:dotenv`
Summary
This is a reincarnation of gitlab-runner#27887 (closed). The latter included a number of unrelated symptoms, some of which were red herrings, some of which have workarounds, and one which is a legitimate and reproducible bug. Said remaining legitimate bug is not in runner (or at least no only in runner, and the primary symptom originates in the Ruby), which is why it's being reincarnated here. Refer to that ticket for the full history, but the summary is here.
Steps to reproduce
- Configure a self-managed instance of GitLab to use a Windows network share as the CI artifact storage location by pointing
gitlab_rails['artifacts_path']
to a Windows share. - Create a job that echo's something to a file, and add that file as a
dotenv
artifact
(see below project config) - Ensure a Windows runner is used by adding a
windows
tag on the job or any other tag that you use with Windows runners (see below project config) - Trigger a pipeline run
Example Project
stages:
- test
test:
stage: test
tags:
- windows
script:
- echo test job!!!!!!!!!!!!!!
- Add-Content -Path build.env -Value "MY_ENV_VAR=true"
artifacts:
reports:
dotenv: build.env
What is the current bug behavior?
The job fails when uploading the artifact(s) with the following error:
In the job log in UI:
WARNING: Uploading artifacts as "dotenv" to coordinator... POST https://<your-gitlab-instance>/api/v4/jobs/<JOB_ID>/artifacts: 500 Internal Server Error id=1296 responseStatus=500 Internal Server Error status=500 token=*****
FATAL: invalid argument
In the production.log
:
Errno::EINVAL (Invalid argument @ rb_sysopen - /mnt/gitlab_artifacts/tmp/cache/1674730624-14775-0002-4887/.env.gz):
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `initialize'
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `open'
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `open'
/opt/gitlab/embedded/service/gitlab-rails/app/models/concerns/ci/artifactable.rb:46:in `each_blob'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/parse_dotenv_artifact_service.rb:38:in `parse!'
Note that the upload does NOT fail when artifacts:paths
is used instead of artifacts:reports:dotenv
What is the expected correct behavior?
Uploading the dotenv
artifact succeeds.
Relevant logs and/or screenshots
Click to expand the details of the error
Errno::EINVAL (Invalid argument @ rb_sysopen - /mnt/gitlab_artifacts/tmp/cache/1674730624-14775-0002-4887/.env.gz):
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `initialize'
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `open'
/opt/gitlab/embedded/service/gitlab-rails/app/uploaders/gitlab_uploader.rb:103:in `open'
/opt/gitlab/embedded/service/gitlab-rails/app/models/concerns/ci/artifactable.rb:46:in `each_blob'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/parse_dotenv_artifact_service.rb:38:in `parse!'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/parse_dotenv_artifact_service.rb:13:in `execute'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/job_artifacts/create_service.rb:169:in `parse_dotenv_artifact'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/job_artifacts/create_service.rb:121:in `parse_artifact'
/opt/gitlab/embedded/service/gitlab-rails/app/services/ci/job_artifacts/create_service.rb:43:in `execute'
/opt/gitlab/embedded/service/gitlab-rails/lib/api/ci/runner.rb:326:in `block (2 levels) in <class:Runner>'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:59:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:59:in `block (2 levels) in generate_api_method'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/notifications.rb:205:in `instrument'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:58:in `block in generate_api_method'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:341:in `execute'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:267:in `block in run'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/notifications.rb:205:in `instrument'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:247:in `run'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:322:in `block in build_stack'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:36:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:36:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/service/gitlab-rails/ee/lib/gitlab/middleware/ip_restrictor.rb:14:in `block in call'
/opt/gitlab/embedded/service/gitlab-rails/ee/lib/gitlab/ip_address_state.rb:10:in `with'
/opt/gitlab/embedded/service/gitlab-rails/ee/lib/gitlab/middleware/ip_restrictor.rb:13:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:36:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/api/api_guard.rb:215:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:36:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-oauth2-1.21.3/lib/rack/oauth2/server/resource.rb:20:in `_call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-oauth2-1.21.3/lib/rack/oauth2/server/resource/bearer.rb:8:in `_call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-oauth2-1.21.3/lib/rack/oauth2/server/abstract/handler.rb:17:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/error.rb:39:in `block in call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/error.rb:38:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/error.rb:38:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape_logging-1.8.4/lib/grape_logging/middleware/request_logger.rb:60:in `block in call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape_logging-1.8.4/lib/grape_logging/middleware/request_logger.rb:58:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape_logging-1.8.4/lib/grape_logging/middleware/request_logger.rb:58:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/middleware/base.rb:29:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/head.rb:12:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:231:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/endpoint.rb:225:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router/route.rb:58:in `exec'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:116:in `process_route'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:72:in `block in identity'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:91:in `transaction'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:70:in `identity'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:55:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:132:in `with_optimization'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/router.rb:54:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/api/instance.rb:167:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/api/instance.rb:71:in `call!'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/grape-1.5.2/lib/grape/api/instance.rb:66:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:20:in `block in <class:Constraints>'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/mapper.rb:49:in `serve'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/journey/router.rb:50:in `block in serve'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/journey/router.rb:32:in `each'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/journey/router.rb:32:in `serve'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/routing/route_set.rb:842:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/gitlab-experiment-0.7.1/lib/gitlab/experiment/middleware.rb:19:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/flipper-0.25.0/lib/flipper/middleware/memoizer.rb:72:in `memoized_call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/flipper-0.25.0/lib/flipper/middleware/memoizer.rb:37:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/elasticsearch_rack_middleware.rb:16:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/memory_report.rb:13:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/speedscope.rb:13:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/load_balancing/rack_middleware.rb:23:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/rails_queue_duration.rb:33:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/rack_middleware.rb:16:in `block in call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/web_transaction.rb:46:in `run'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/rack_middleware.rb:16:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/jira/middleware.rb:19:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/go.rb:20:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/etag_caching/middleware.rb:21:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/query_analyzer.rb:11:in `block in call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/database/query_analyzer.rb:37:in `within'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/query_analyzer.rb:11:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/batch-loader-2.0.1/lib/batch_loader/middleware.rb:11:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-attack-6.6.1/lib/rack/attack.rb:103:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/apollo_upload_server-2.1.0/lib/apollo_upload_server/middleware.rb:32:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/multipart.rb:178:in `block in call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/multipart.rb:63:in `with_open_files'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/multipart.rb:177:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-attack-6.6.1/lib/rack/attack.rb:127:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/warden-1.2.9/lib/warden/manager.rb:36:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/warden-1.2.9/lib/warden/manager.rb:34:in `catch'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/warden-1.2.9/lib/warden/manager.rb:34:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-cors-1.1.1/lib/rack/cors.rb:100:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/tempfile_reaper.rb:15:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/etag.rb:27:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/conditional_get.rb:40:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/head.rb:12:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/http/permissions_policy.rb:22:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/http/content_security_policy.rb:19:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/read_only/controller.rb:50:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/read_only.rb:18:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/session/abstract/id.rb:266:in `context'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/session/abstract/id.rb:260:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/cookies.rb:689:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/same_site_cookies.rb:27:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/callbacks.rb:27:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/callbacks.rb:98:in `run_callbacks'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/callbacks.rb:26:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/handle_malformed_strings.rb:21:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/actionable_exceptions.rb:18:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-rails-5.1.1/lib/sentry/rails/rescued_exception_interceptor.rb:12:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/debug_exceptions.rb:29:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-ruby-core-5.1.1/lib/sentry/rack/capture_exceptions.rb:25:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-ruby-core-5.1.1/lib/sentry/hub.rb:58:in `with_scope'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-ruby-core-5.1.1/lib/sentry-ruby.rb:310:in `with_scope'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-ruby-core-5.1.1/lib/sentry/rack/capture_exceptions.rb:16:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/show_exceptions.rb:33:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/basic_health_check.rb:25:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/rack/logger.rb:37:in `call_app'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/rack/logger.rb:26:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/tagged_logging.rb:99:in `block in tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/tagged_logging.rb:37:in `tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/activesupport-6.1.6.1/lib/active_support/tagged_logging.rb:99:in `tagged'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/rack/logger.rb:26:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/remote_ip.rb:81:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/handle_ip_spoof_attack_error.rb:25:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/request_context.rb:21:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/webhook_recursion_detection.rb:15:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/request_store-1.5.1/lib/request_store/middleware.rb:19:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/method_override.rb:24:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/runtime.rb:22:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-timeout-0.6.3/lib/rack/timeout/core.rb:148:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-timeout-0.6.3/lib/rack/timeout/support/timeout.rb:19:in `timeout'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-timeout-0.6.3/lib/rack/timeout/core.rb:147:in `call'
/opt/gitlab/embedded/service/gitlab-rails/config/initializers/fix_local_cache_middleware.rb:11:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/compressed_json.rb:37:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/executor.rb:14:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/rack_multipart_tempfile_factory.rb:19:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/sendfile.rb:110:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/sidekiq_web_static.rb:20:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/host_authorization.rb:142:in `call'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/metrics/requests_rack_middleware.rb:77:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/gitlab-labkit-0.29.0/lib/labkit/middleware/rack.rb:19:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/gitlab-labkit-0.29.0/lib/labkit/context.rb:36:in `with_context'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/gitlab-labkit-0.29.0/lib/labkit/middleware/rack.rb:18:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/actionpack-6.1.6.1/lib/action_dispatch/middleware/request_id.rb:26:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/sentry-raven-3.1.2/lib/raven/integrations/rack.rb:51:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/engine.rb:539:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/railtie.rb:207:in `public_send'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/railties-6.1.6.1/lib/rails/railtie.rb:207:in `method_missing'
/opt/gitlab/embedded/service/gitlab-rails/lib/gitlab/middleware/release_env.rb:13:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/urlmap.rb:74:in `block in call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/urlmap.rb:58:in `each'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/rack-2.2.6.2/lib/rack/urlmap.rb:58:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/configuration.rb:252:in `call'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/request.rb:77:in `block in handle_request'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/thread_pool.rb:340:in `with_force_shutdown'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/request.rb:76:in `handle_request'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/server.rb:443:in `process_client'
/opt/gitlab/embedded/lib/ruby/gems/2.7.0/gems/puma-5.6.5/lib/puma/thread_pool.rb:147:in `block in spawn_thread'
Output of checks
Results of GitLab environment info
Expand for output related to GitLab environment info
System information System: Debian 10 Proxy: no Current User: git Using RVM: no Ruby Version: 2.7.7p221 Gem Version: 3.1.6 Bundler Version:2.3.15 Rake Version: 13.0.6 Redis Version: 6.2.8 Sidekiq Version:6.5.7 Go Version: unknown GitLab information Version: 15.8.0-ee Revision: 1d89c23c9f9 Directory: /opt/gitlab/embedded/service/gitlab-rails DB Adapter: PostgreSQL DB Version: 12.12 URL: https://gitlabhost.tld HTTP Clone URL: https://gitlabhost.tld/some-group/some-project.git SSH Clone URL: git@gitlabhost.tld:some-group/some-project.git Elasticsearch: no Geo: yes Geo node: Undefined Using LDAP: no Using Omniauth: yes Omniauth Providers: GitLab Shell Version: 14.15.0 Repository storages: - default: unix:/var/opt/gitlab/gitaly/gitaly.socket GitLab Shell path: /opt/gitlab/embedded/service/gitlab-shell
Workarounds
Do not use Windows share to store GitLab artifacts.