I’m trying to get my Gitlab Pages (Jekyll) to compile after pushing my repo, yet I’m running into the following error.
... Created fresh repository. Checking out be8f11a3 as master... Skipping Git submodules setup Executing "step_script" stage of the job script Using docker image sha256:48d9aa5539017f6b4c8a465a4aae0a80499ae64e00c2783f83e98180a441e615 for ruby:2.6 with digest ruby@sha256:b6b54f72542d4597d041b48743290a38ac1095a66800c11e60be6abc170f325f ... $ bundle update listen This Bundle hasn't been installed yet. Run `bundle install` to update and install the bundled gems. Cleaning up file based variables ERROR: Job failed: exit code 1
Here is my is my .gitlab-ci.yml file.
image: ruby:2.6 variables: JEKYLL_ENV: production LC_ALL: C.UTF-8 before_script: - bundle update listen - bundle install test: stage: test script: - bundle exec jekyll build -d test/ artifacts: paths: - test except: - master pages: stage: deploy script: - bundle exec jekyll build -d public/ artifacts: paths: - public only: - master
What I don’t understand is why it says the bundle hasn’t been installed, and that I should run
bundle install to update and install the bundled gems. Surely this can’t mean on my local machine. Though if I do run
bundle install which creates a
Gemfile.lock and then I check that in, I just get another error saying it’s missing the bundler like follows:
... $ bundle update listen` `/usr/local/lib/ruby/2.6.0/rubygems.rb:283:in `find_spec_for_exe': Could not find 'bundler' (2.2.16) required by your /builds/openjak/openjak.gitlab.io/Gemfile.lock. (Gem::GemNotFoundException) To update to the latest version installed on your system, run `bundle update --bundler. To install the missing version, run `gem install bundler:2.2.16 from /usr/local/lib/ruby/2.6.0/rubygems.rb:302:in `activate_bin_path' from /usr/local/bin/bundle:23:in `<main>' Cleaning up file based variables ERROR: Job failed: exit code 1