Как я могу обновить версию ruby ​​на Circle CI 2.0 для проектов Xcode? - PullRequest
1 голос
/ 26 апреля 2019

Я установил config.yml и .ruby-версию для обновления ruby.

Но я получил сообщение об ошибке unknown Ruby: ruby-2.6.2

Используется ruby-2.3, и проблем нет.

Как установить ruby ​​2.6.2 с помощью config.yml?

config.yml

defaults: &defaults
    macos:
      xcode: "10.0"
    shell: /bin/bash --login -eo pipefail
aliases:
  - &prepare
    | 
      git submodule update --init --recursive
      gem install bundler
      bundle install
  - &filter-only-master
    branches:
      only:
        - master

version: 2
jobs:
  ios:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:ios
      - run: bash <(curl -s https://codecov.io/bash)
      - store_test_results:
          path: build/reports
  macos:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:macos
      - run: bash <(curl -s https://codecov.io/bash)
      - store_test_results:
          path: build/reports
  facebook_utils:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:facebook_utils:ios
      - run: bash <(curl -s https://codecov.io/bash)
      - store_test_results:
          path: build/reports
  twitter_utils:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:twitter_utils:ios
      - run: bash <(curl -s https://codecov.io/bash)
      - store_test_results:
          path: build/reports
  parseui:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:parseui:all
  deployment:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: |
            xcrun simctl create "Apple TV 1080p" com.apple.CoreSimulator.SimDeviceType.Apple-TV-1080p com.apple.CoreSimulator.SimRuntime.tvOS-11-0
            bundle exec rake package:release
  jazzy:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: ./Scripts/jazzy.sh
  carthage:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:carthage
  cocoapods:
    <<: *defaults
    steps:
      - checkout
      - run: *prepare
      - run: bundle exec rake test:cocoapods

workflows:
  version: 2
  pr:
    jobs:
      - ios
      - macos
      - facebook_utils
      - twitter_utils
      - parseui
      - jazzy
  nightly:
    jobs:
      - deployment
      - cocoapods:
          requires:
            - deployment
      - carthage:
          requires:
            - deployment
    triggers:
      - schedule:
          cron: "0 1 * * *"
          filters: *filter-only-master

.ruby-версия

ruby-2.6.2

Я получаю сообщение об ошибке ниже

#!/bin/bash --login -eo pipefail
git submodule update --init --recursive
gem install bundler
bundle install
^D^Dchruby: unknown Ruby: ruby-2.6.2
Exited with code 1

1 Ответ

1 голос
/ 09 июля 2019

В CircleCI 2.0 вам нужно проверить, какие версии ruby ​​установлены для конкретного образа контейнера macOS , с которым вы строите.

Наши контейнеры macOS содержат несколько версий Ruby.Версия по умолчанию - Ruby, установленный системой.Контейнеры также включают в себя последние стабильные версии Ruby на момент создания контейнера.Мы определяем стабильные версии Ruby, используя страницу загрузок Ruby-Lang.org.Версия Ruby, установленная в каждом образе, указана в программных манифестах каждого контейнера.https://circleci.com/docs/2.0/testing-ios/#using-custom-ruby-versions

Поскольку вы создаете в Xcode 10. Образ контейнера macOS 10.0.0: Xcode 10.0 (Build 10A255) , ruby ​​версии 2.3.7, 2.4.42.5.1 доступны для chruby.

...