Repository: Azure/azure-cli-extensions

Issue:
`az interactive` crashes with "cannot import name 'ENV_ADDITIONAL_USER_AGENT'"

## `az interactive` crashes

**Command Name**
`az interactive`

**Errors:**
```
cannot import name 'ENV_ADDITIONAL_USER_AGENT' from 'azure.cli.core.commands.client_factory' (/opt/azure-cli/lib/python3.8/site-packages/azure/cli/core/commands/client_factory.py)
Traceback (most recent call last):
python3.8/site-packages/knack/cli.py, ln 215, in invoke
    cmd_result = self.invocation.execute(args)
cli/core/commands/__init__.py, ln 625, in execute
    raise ex
cli/core/commands/__init__.py, ln 689, in _run_jobs_serially
    results.append(self._run_job(expanded_arg, cmd_copy))
...
cliextensions/interactive/azext_interactive/__init__.py, ln 10, in start_shell
    from .azclishell.app import AzInteractiveShell
interactive/azext_interactive/azclishell/app.py, ln 31, in <module>
    from azure.cli.core.commands.client_factory import ENV_ADDITIONAL_USER_AGENT
ImportError: cannot import name 'ENV_ADDITIONAL_USER_AGENT' from 'azure.cli.core.commands.client_factory' (/opt/azure-cli/lib/python3.8/site-packages/azure/cli/core/commands/client_factory.py)
```

## To Reproduce:

- `az interactive --debug`

## Expected Behavior

`az interactive` should not crash.

## Environment Summary
```
Linux-5.5.13-arch2-1-x86_64-with-glibc2.2.5
Python 3.8.2
Installer: 

azure-cli 2.3.0

Extensions:
interactive 0.4.3

```
## Additional Context

Installation source: https://aur.archlinux.org/packages/azure-cli/

<!--Please don't remove this:-->
<!--auto-generated-->




Discussion:
interactive

Resolving patch:
diff --git a/src/interactive/azext_interactive/azclishell/__init__.py b/src/interactive/azext_interactive/azclishell/__init__.py
--- a/src/interactive/azext_interactive/azclishell/__init__.py
+++ b/src/interactive/azext_interactive/azclishell/__init__.py
@@ -3,4 +3,4 @@
 # Licensed under the MIT License. See License.txt in the project root for license information.
 # --------------------------------------------------------------------------------------------
 
-VERSION = '0.4.3'
+VERSION = '0.4.4'
diff --git a/src/interactive/azext_interactive/azclishell/app.py b/src/interactive/azext_interactive/azclishell/app.py
--- a/src/interactive/azext_interactive/azclishell/app.py
+++ b/src/interactive/azext_interactive/azclishell/app.py
@@ -17,7 +17,6 @@
 from six.moves import configparser
 from knack.log import get_logger
 from knack.util import CLIError
-from azure.cli.core.commands.client_factory import ENV_ADDITIONAL_USER_AGENT
 from azure.cli.core._profile import _SUBSCRIPTION_NAME, Profile
 from azure.cli.core._session import ACCOUNT, CONFIG, SESSION
 from azure.cli.core.api import get_config_dir
@@ -53,6 +52,7 @@
 PART_SCREEN_EXAMPLE = .3
 START_TIME = datetime.datetime.utcnow()
 CLEAR_WORD = get_os_clear_screen_word()
+_ENV_ADDITIONAL_USER_AGENT = 'AZURE_HTTP_USER_AGENT'
 
 logger = get_logger(__name__)
 
@@ -98,7 +98,10 @@ def __init__(self, cli_ctx, style=None, completer=None,
             self.completer = AzCompleter(self, None)
             self.lexer = None
         self.history = history or FileHistory(os.path.join(self.config.get_config_dir(), self.config.get_history()))
-        os.environ[ENV_ADDITIONAL_USER_AGENT] = 'AZURECLISHELL/' + VERSION
+        if os.environ.get(_ENV_ADDITIONAL_USER_AGENT):
+            os.environ[_ENV_ADDITIONAL_USER_AGENT] += ' AZURECLISHELL/' + VERSION
+        else:
+            os.environ[_ENV_ADDITIONAL_USER_AGENT] = 'AZURECLISHELL/' + VERSION
 
         # OH WHAT FUN TO FIGURE OUT WHAT THESE ARE!
         self._cli = None


Test patch: