Files migration failed I am trying to migrate Drupal 7 site to Drupal 8. Other migration processes work well, but only file migration fails.

I have files in sites/default/files/. 

This is my migrate_plus.migration.upgrade_d7_file.yml

uuid: c6ddfa39-c76a-4457-ba30-8db364387f45
langcode: en
status: true
dependencies: 
  module:
    - file
id: upgrade_d7_file
migration_tags:
  - Drupal 7
label: Files
source:
  plugin: d7_file
process:
  fid: fid
  uid: uid
  filename: filename
  uri: uri
  filemime: filemime
  status: status
  created: timestamp
  changed: timestamp
destination:
  plugin: entity:file
  source_path_property: filepath
  urlencode: true
migration_dependencies:
  required: {  }
  optional: {  }


And, I execute it with this drush command: 

drush8 migrate-import upgrade_d7_file


This process returns this error message:

Processed 446 items (0 created, 0 updated, 446 failed, 0 ignored) - done with 'upgrade_d7_file'


What am I doing wrong here?
First off, when there are failures, check the messages table to see what the specific failures are:

$ drush8 mmsg upgrade_d7_file


In this case, I'm sure what you'll find is that it couldn't copy the files, because it couldn't find them - your .yml file does not include source_base_path, so there's no way for the migration to know where to copy the files from.

I'm guessing when you ran drush migrate-upgrade --configure-only to generate your migrations, you forgot --legacy-root - this value (either the address of your site such as http://www.example.com if you want to scrape the files directly over the web, or an absolute local filepath if you've copied the files onto your D8 server) will be used to set source_base_path in your destination configuration.