**Apache Airflow version**:
2.0.1

**Kubernetes version (if you are using kubernetes)** (use `kubectl version`):

**Environment**:

- **Cloud provider or hardware configuration**: 4GB RAM, Processor - Intel(R) Core(TM) i5-8250U CPU @ 1.60GHz
- **OS** (e.g. from /etc/os-release): 18.04.5 LTS (Bionic Beaver)
- **Kernel** (e.g. `uname -a`): Linux 4.15.0-136-generic
- **Install tools**: bare metal installation as per commands given [here](https://airflow.apache.org/docs/apache-airflow/stable/installation.html)

**What happened**:

On running `airflow scheduler -p` got following error:-
```
Traceback (most recent call last):
  File "/home/vineet/Documents/projects/venv/bin/airflow", line 8, in <module>
    sys.exit(main())
  File "/home/vineet/Documents/projects/venv/lib/python3.6/site-packages/airflow/__main__.py", line 40, in main
    args.func(args)
  File "/home/vineet/Documents/projects/venv/lib/python3.6/site-packages/airflow/cli/cli_parser.py", line 48, in command
    return func(*args, **kwargs)
  File "/home/vineet/Documents/projects/venv/lib/python3.6/site-packages/airflow/utils/cli.py", line 86, in wrapper
    metrics = _build_metrics(f.__name__, args[0])
  File "/home/vineet/Documents/projects/venv/lib/python3.6/site-packages/airflow/utils/cli.py", line 118, in _build_metrics
    full_command[idx + 1] = "*" * 8
IndexError: list assignment index out of range
```
As per docs, `-p` flag is a valid flag and gives correct result for `airflow scheduler --do-pickle`

**How to reproduce it**:
Install `airflow` 2.0.1 and run `airflow scheduler -p`
tests/utils/test_cli_util.py
def test_metrics_build(self):
        func_name = 'test'
        exec_date = datetime.utcnow()
        namespace = Namespace(dag_id='foo', task_id='bar', subcommand='test', execution_date=exec_date)
        metrics = cli._build_metrics(func_name, namespace)
        expected = {
            'user': os.environ.get('USER'),
            'sub_command': 'test',
            'dag_id': 'foo',
            'task_id': 'bar',
            'execution_date': exec_date,
        }
        for k, v in expected.items():
            assert v == metrics.get(k)
        assert metrics.get('start_datetime') <= datetime.utcnow()
        assert metrics.get('full_command')
        log_dao = metrics.get('log')
        assert log_dao
        assert log_dao.dag_id == metrics.get('dag_id')
        assert log_dao.task_id == metrics.get('task_id')
        assert log_dao.execution_date == metrics.get('execution_date')
        assert log_dao.owner == metrics.get('user')
    def test_fail_function(self):
        """
        Actual function is failing and fail needs to be propagated.
        :return:
        """
        with pytest.raises(NotImplementedError):
            fail_func(Namespace())
    def test_success_function(self):