Docker]Travis-ci(DockerとCIを学ぶ環境)


Travis-ci


今はTravis-ciを貼って次のようなflowを作りますGithubリポジトリにプッシュされるたびに、Travis Ciは完全なコードをインポートしてテストします.テストに合格した場合、AWSに配備します.テストに失敗した場合は、エラーログが表示されず、配布されません.

github repoとtravis-ci接続

1.githubリモートリポジトリへの接続


まず、Githubレポートをマイニングし、配備するプロジェクトのリモート・リポジトリにマッピングします->リモート・リポジトリへの接続

2.travisからgithubリポジトリへの接続


まずTravis-Ciページにアクセスし、githubアカウントにログインしてください.

ログインした場合はsettingsに移動します

もし私が今アップロードしたら、リポジトリがgihubのパブリケーションにアクセスできるようにします.

すべての記事を選択したり、必要なものだけを選択したりすることができます.必要な楽譜だけ選んだ

3. .travis.ymlファイルの作成


トラヴィスに何をするか教えてあげましょうか?RefoのPushになるたびに何を繰り返すか教えてください!まだAWSに設定されていないのでテストまで書きましょう
  • sudo:管理者権限サイクル
  • 言語:選択言語
  • サービス:ドッキング環境
  • を選択
  • before install:
  • スクリプト実行前環境の構成
  • script:実行スクリプト(テスト)
  • aft success:テストに成功した後にしなければならないこと
  • sudo: required
    
    language: generic
    
    services:
      -docker
    
    before_install:
      - echo "start creating an image with dockerfile"
      - docker build -t rmswjdtn/docker-react-app -f Dockerfile.dev .
    
    script:
      - docker run -e CI=true rmswjdtn/docker-react-app npm run test -- --coverage
    
    after_success:
      - echo "Test success"
    ここのスクリプトはテストなので、before installでテスト可能な環境を作成する必要があります.これがドッキングイメージを構築する作業です.だから、Dockerfile.devを使用してイメージを構築します.
    テストの準備ができました.scriptセクションでコンテナを作成して実行してください.e CI=trueはtravisのためのオプションです.また、ここではテストが必要なので、npm runtestを追加する必要があります.coverageオプションは、テスト結果をログにより詳細に書き込むために使用します.
    テストに成功した場合は、echoを使用して成功文を表示します.

    4.後回しにする


    次にgithubリモート・リポジトリにプッシュします.GUIプログラムも使えますし、CLIもそのまま使えます.
    今、Travis-ciサイトで、Dashboardがpushを認識するのを待っています.戻りを開始すると、複数のログが撮影され、次のログでテストが終了します.