yu-suke / CircleCIで異なるjobでartifactを共有する
Created 2020-07-09 Modifyed 2020-07-09

206 Words

CircleCIで異なるjobでartifactを共有する

  • persist_to_workspace で別のjobに渡したいファイルを指定する

    • root で渡したいディレクトリを絶対パスで記述
    • paths で渡したいファイルを root で書いた場所からの相対パスで記述
  • attach_workspace で別のjobで受け取りたいファイルのディレクトリを指定する

    • atpersist_to_workspace:root と同じ内容を記載する

Code Sample

version: 2.1

commands:
jobs:
  build:
    docker:
      - image: circleci/openjdk:8u222-jdk
    steps:
      - checkout
      - run:
          name: sample text
          command: |
            mkdir ~/sample
            echo 'test' > ~/sample/test.txt
      - persist_to_workspace:
          root: ~/sample
          paths:
            - ./*
  deploy:
    docker:
      - image: circleci/python:latest
    steps:
      - attach_workspace:
          at: ~/sample
      - run:
          name: Show
          command: |
            ls -la ~/sample
workflows:
  version: 2
  build:
    jobs:
      - build
      - deploy:
          requires:
            - build