.gitlab-ci.yml in jekyll-openmoji-0.1.5 vs .gitlab-ci.yml in jekyll-openmoji-0.1.6

- old
+ new

@@ -1,123 +1,136 @@ # stages of gitlab ci. stages: - test + - deploy - release # default settings for all ci jobs. default: image: azadehafzarhub/gitlab-ci-ruby-build:latest cache: paths: - vendor/ -# job for testing package against ruby version 2.6 + +# job for testing package against default ruby version # on master branch and send test coverage result to # codeclimate. -test main branch: +test master branch defaut: stage: test before_script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.7.0 . - - rbenv global 2.7.0 + # use default ruby version. + - rbenv global 3.0.0 # install dependency gems. - bundle config set path 'vendor' - bundle install # run codeclimate test reporter agent. - cc-test-reporter before-build # run tests. script: - - script/test.sh + - cd script && ./test.sh # send test coverage result to codeclimate. after_script: - cc-test-reporter after-build --coverage-input-type simplecov only: - master -# job for testing package on other branches than master -# and merge requests against 2.7.0 version. -test ruby 2.7.0: +# job for testing package on mon master branch +# and merge requests against other ruby versions. +test master branch ruby 2.7.2: stage: test before_script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.7.0 . - - rbenv global 2.7.0 + # use custom ruby version. + - rbenv global 2.7.2 # install dependency gems. - bundle config set path 'vendor' - bundle install # run tests. script: - - script/test.sh + - cd script && ./test.sh only: - - branches - - merge_requests - except: - master -# jobs for testing package against older ruby versions. -test ruby 2.6.5: +# job for testing package on other branches than master +# and merge requests against default version. +test branch ruby default: stage: test before_script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.6.5 . - - rbenv global 2.6.5 + # use default ruby version. + - rbenv global 3.0.0 # install dependency gems. - bundle config set path 'vendor' - bundle install # run tests. script: - - script/test.sh + - cd script && ./test.sh + only: + - branches + - merge_requests except: - - tags + - master -test ruby 2.5.7: +# job for testing package on other branches than master +# and merge requests against other ruby versions. +test branch ruby 2.7.2: stage: test before_script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.5.7 . - - rbenv global 2.5.7 + # use custom ruby version. + - rbenv global 2.7.2 # install dependency gems. - bundle config set path 'vendor' - bundle install # run tests. script: - - script/test.sh + - cd script && ./test.sh + only: + - branches + - merge_requests except: - - tags + - master # release a preview blog for master branch with gitlab pages. pages: - stage: release - script: + stage: deploy + before_script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.7.0 - - rbenv global 2.7.0 + # use ruby version 3.0.0 . + - rbenv global 3.0.0 + # delete and recreate directory. + - rm --force --recursive public + - mkdir public # go to blog folder. - cd doc/blog # install dependency gems. - bundle config set path 'vendor' - bundle install + script: # generate site with jekyll. - - bundle exec jekyll build --trace --destination ../../public + - bundle exec jekyll build --trace --config ./_config.yml --destination ../../public artifacts: paths: - public + expire_in: 7 days only: - - master + - tags when: manual # deploy gems to rubygems.org whenever a tag is released. release to rubygems: stage: release script: # setup rbenv. - source ~/.bash_profile - # use ruby version 2.7.0 - - rbenv global 2.7.0 + # use default ruby version. + - rbenv global 3.0.0 # create rubygems credential file for auto login. - script/ci_rubygems.sh # extract tag from git log and strip "v". - version=$(git describe --tags) - version=${version:1}