最終目的
pythonのコードをcircleciに自動テストしてもらいたい。
circleciもdockerも初めてなのですべてに自信がないです。
環境
python:3.8.0(env)
ubuntu lts:18.04
dockerは長いので下に示します。
Client: Docker Engine - Community Version: 19.03.8 API version: 1.40 Go version: go1.12.17 Git commit: afacb8b7f0 Built: Wed Mar 11 01:25:46 2020 OS/Arch: linux/amd64 Experimental: false Server: Docker Engine - Community Engine: Version: 19.03.8 API version: 1.40 (minimum version 1.12) Go version: go1.12.17 Git commit: afacb8b Built: Wed Mar 11 01:29:16 2020 OS/Arch: linux/amd64 Experimental: false containerd: Version: v1.2.13 GitCommit: 7ad184331fa3e55e52b890ea95e65ba581ae3429 runc: Version: 1.0.0-rc10 GitCommit: dc9208a3303feef5b3839f4323d9beb36df0a9dd docker-init: Version: 0.18.0 GitCommit: fec3683
実際に行った手順
・githubで目的のリポジトリを作る
circleciのアカウント作成
・ADD PROJECT
・目的のリポジトリでset up project
・以下の画面になる
・start buildingを押す
すると、Add .circleci/config.ymlをしてくれと言われたのでこのリポジトリに
.circleci/config.ymlを追加しました。
以下が追加した内容です。
version: 2 jobs: setup_dependencies: docker: - image: circleci/python:3.8.0 steps: - checkout - restore_cache: key: deps-{{ checksum "requirements.lock" }} - run: command: | pip install --user -r requirements.lock - save_cache: key: deps-{{ checksum "requirements.lock" }} paths: - "~/.local" test: docker: - image: circleci/python:3.8.0 steps: - checkout - restore_cache: key: deps-{{ checksum "requirements.lock" }} - run: command: | python3.8 -m unittest -v workflows: version: 2 all: jobs: - setup_dependencies - test: requires: - setup_dependencies
その後、Add .configボタンを押すとエラーが出ました。
エラー文
・star buildingを押す
の後に表示される
Add .configボタンを押したときの画面です。
その後、エラー詳細を見に行った時の画面です。
このテストが通っていません。
試したこと
1,
こちらの記事を手順にしてcircleciコマンドを実行し.circleci/config.ymlが通るかどうか確認しました。
$ circleci config validate -c .circleci/config.yml Receiving latest version of circleci... INFO: We've built a brand new CLI for CircleCI! Please run 'circleci switch' to upgrade. Error: Error parsing config file: yaml: line 19: did not find expected key
config.ymlのライン19行目
test: docker: - image: circleci/python:3.8.0 steps:
ここのpython3.8.0のところがおかしいみたいです。
次に
2,
pythonがdocker上ではバージョンが違うのかと思いました。
$ docker image ls REPOSITORY TAG IMAGE ID CREATED SIZE circleci/picard latest 09835951ebff 36 hours ago 101MB docker/getting-started latest 3c156928aeec 7 weeks ago 24.8MB hello-world latest bf756fb1ae65 5 months ago 13.3kB python 3.8.0 0a3a95c81a2b 6 months ago 932MB
python3.8.0が動いていそうです。
この時点でわからなくなりました。
お願いしたいこと
以上のことを踏まえたうえでtestが通るようにしてほしいです。
ymlはインデントが結構大切と聞いて確認しています。
何か不備があれば追記いたします。
どうぞご回答のほどよろしくお願いします。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。