0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 3 years have passed since last update.

Circleciのchromeのバージョンを上げる。

Last updated at Posted at 2020-07-11

.circleci/config.yml

こんな感じのステップを追加してアップできました。


jobs:
  build:
    steps:
    [.....省略]
    - run:
        name: Upgrade chrome
        command: |
          wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
          sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
          sudo apt-get update
          sudo apt-get --only-upgrade install google-chrome-stable=83.0.4103.116-1

きっかけ

システム自体はruby on railで、chrome driverの管理はwebdriversを使っています。ローカルのChromeは自動で上がっていくので、webdraiversをアップグレードしないと動かなくなり、あげたら、今度はCircleCIだけテストがコケるようになりました。

RunOverSSHでchromeのバージョンあげたらテスト通ったのでconfig.ymlに反映させました。

滅多にないけど、CircleCIだけコケると時間取られますね。と言っても今日は2時間弱でしたけど。それでもトータルで見るとCircleci的なものを使ったほうが圧倒的に時間の節約になりますが。

気がかりなところ

※この方法はうまくいきませんでした。下部の追記を呼んでください。

あまり自信ないですが、runに書いたことはビルドが起動するたびに実行されるますよね?なので、Chromeのバージョンがどんどん上がっていってしまいそうだと思い、バージョンを指定してみました。

sudo apt-get --only-upgrade install google-chrome-stable=83.0.4103.116-1

あげたい時はここを変えてやればいいかなと。ただ、想像ですが、

deb http://dl.google.com/linux/chrome/deb/ stable main

この辺をどうにかしないと最新のstableが更新された時に失敗しだしそうな予感はしますが・・・とりあえず、あまり時間かけたくなかったので一旦このまま行きます。何か知ってる方いましたらコメントお願いします。

バージョンを指定する時83.0.4103.116とバージョンナンバーだけ指定すると、E: Version '83.0.4103.116' for 'google-chrome-stable' was not foundと怒られます。

存在する正確なバージョンナンバーを調べるコマンドは下記。多分次のアップグレードの時必要になるので備忘録にメモしておきます。

apt-cache policy google-chrome-stable
google-chrome-stable:
  Installed: 83.0.4103.116-1
  Candidate: 83.0.4103.116-1
  Version table:
 *** 83.0.4103.116-1 500
        500 http://dl.google.com/linux/chrome/deb stable/main amd64 Packages
        100 /var/lib/dpkg/status

2020/07/19追記

やはりバージョンが上がった瞬間にこけ出しました。

jobs:
  build:
    steps:
    [.....省略]
    - run:
        name: Upgrade chrome
        command: |
          wget -q -O - https://dl-ssl.google.com/linux/linux_signing_key.pub | sudo apt-key add -
          sudo sh -c 'echo "deb http://dl.google.com/linux/chrome/deb/ stable main" >> /etc/apt/sources.list.d/google-chrome.list'
          sudo apt-get update
          sudo apt-get --only-upgrade install google-chrome-stable

と普通?通りバージョン指定外せば通りますけど、これだと常に最新のChromeでテストすることになりそうですね。

まあ、ローカルもどんどん上がっていくんですけど、CircleCIにしてからローカルでテスト動かさなくなったので、全く関係のないところいじってる時にそこでこけ始めると非常に面倒かなと。あとwebdriversのバージョンがChromeのバージョンアップに追いつかない時もあったので、そういう時は数日間通すことが不可能になるんですよね・・・

何か方法ご存知でしたらご教示お願いします。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?