Fix: fix bundle config path issue for JH
related to JH Issue
failed job example on Jihu
fixed job example on Jihu
What does this MR do and why?
TO UNDERSTAND THIS MR,YOU SHOULD KNOW
- "Bundler with a path fails to find openssl 2.2.0"
- move
bundle config set path "$(pwd)/vendor"
underbundle config set --local gemfile 'jh/Gemfile'
The db:backup_and_restore is failed in JH due to this bug "Bundler with a path fails to find openssl 2.2.0" of RubyGems.
From the log of db:backup_and_restore on Jihu Pipeline, we can see bundle_install_script in prepare_build.sh
was executed twice. The path
of bundle was empty at first, and then it was set to "/builds/gitlab-org-forks/gitlab/vendor"
, that's how the debug happened.
The output of bundle config
at first time
$ source scripts/prepare_build.sh
3.1.6
Successfully installed bundler-2.3.15
1 gem installed
Bundler version 2.3.15
production:development
Settings are listed in order of priority. The top value will be used.
frozen
Set via BUNDLE_FROZEN: true
gemfile
Set via BUNDLE_GEMFILE: "/builds/gitlab-org-forks/gitlab/jh/Gemfile"
install_flags
Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"
without
Set via BUNDLE_WITHOUT: [:production, :development]
The output of bundle config
at second time
$ . scripts/prepare_build.sh
3.1.6
Bundler version 2.3.15
production:development
Settings are listed in order of priority. The top value will be used.
clean
Set for your local app (/builds/gitlab-org-forks/gitlab/jh/.bundle/config): true
frozen
Set via BUNDLE_FROZEN: true
gemfile
Set for your local app (/builds/gitlab-org-forks/gitlab/jh/.bundle/config): "jh/Gemfile"
Set via BUNDLE_GEMFILE: "/builds/gitlab-org-forks/gitlab/jh/Gemfile"
install_flags
Set via BUNDLE_INSTALL_FLAGS: "--jobs=$(nproc) --retry=3 --quiet"
jobs
Set for your local app (/builds/gitlab-org-forks/gitlab/jh/.bundle/config): 2
path
Set for your local app (/builds/gitlab-org-forks/gitlab/jh/.bundle/config): "/builds/gitlab-org-forks/gitlab/vendor"
retry
Set for your local app (/builds/gitlab-org-forks/gitlab/jh/.bundle/config): 3
without
Set via BUNDLE_WITHOUT: [:production, :development]
Proposal
-
Print RubyGems version -
move bundle config set path "$(pwd)/vendor"
underbundle config set --local gemfile 'jh/Gemfile'
Screenshots or screen recordings
These are strongly recommended to assist reviewers and reduce the time to merge your change.
How to set up and validate locally
- Goto Jihu repo and create a MR
- Make a change under
lib/backup/
- Commit and check the pipeline
- You should see the job
db:backup_and_restore
- You should see the outputs of
bundle config
under$ source scripts/prepare_build.sh
and$ . scripts/prepare_build.sh
are the same - You should see the job is passed
MR acceptance checklist
This checklist encourages us to confirm any changes have been analyzed to reduce risks in quality, performance, reliability, security, and maintainability.
-
I have evaluated the MR acceptance checklist for this MR.
/cc @prajnamas