Beginner Tutorial:
Create a Repo & Upload Data

Part 3: Create a Repo & Upload Data

Now that we have our video-to-frame-traces project, we’ll need to create a raw_videos_and_images repo to store our data. This repo will be used by several different pipelines to process and compare data in different ways.

Create an Input Repo

At the top of our DAG, we’ll need an input repo that will store our raw videos and images.

pachctl create repo raw_videos_and_images
pachctl list repos
  1. Navigate into your video-to-frame-traces project.
  2. Select Create > Input Repository.
  3. Input a repo name and description.
  4. Select Create.

Upload Content

To upload content, you need to specify the repo and branch you’d like to upload to (e.g., a master or staging branch). In Console, it automatically defaults to repo@master — but for PachCTL, you’ll need to use the repo@master:filename.ext pattern.

By default, your pipeline will trigger any time new data is uploaded to the master branch unless otherwise specified in the pipeline spec at input.pfs.branch or through a branch trigger. For this tutorial, we’re going to stick with the default master branch.

pachctl put file raw_videos_and_images@master:liberty.png -f
pachctl put file raw_videos_and_images@master:cat-sleeping.MOV -f
pachctl put file raw_videos_and_images@master:robot.png -f
pachctl put file raw_videos_and_images@master:highway.MOV -f

You can view the contents of your repo by running the following command:

pachctl list files raw_videos_and_images@master
  1. Navigate into your video-to-frame-traces project.

  2. Scroll the raw_videos_and_images repo.

  3. Select Upload Files.

  4. Choose your images, videos, or directory.

  5. Select Upload

  6. Select Done.