docs: def setup_continuous_delivery(self, swap_with_slot, app_type_details, cd_project_url, create_account,
                                    vsts_app_auth_token, test, webapp_list):
          """
          Use this method to setup Continuous Delivery of an Azure web site from a source control repository.
          :param swap_with_slot: the slot to use for deployment
          :param app_type_details: the details of app that will be deployed. i.e. app_type = Python, python_framework = Django etc.
          :param cd_project_url: CD Project url in the format of https://<accountname>.visualstudio.com/<projectname> 
          :param create_account: Boolean value to decide if account need to be created or not
          :param vsts_app_auth_token: Authentication token for vsts app
          :param test: Load test webapp name
          :param webapp_list: Existing webapp list
          :return: a message indicating final status and instructions for the user
          """
  
          branch = self._repo_info.branch or 'refs/heads/master'
          self._validate_cd_project_url(cd_project_url)
          vsts_account_name = self._get_vsts_account_name(cd_project_url)
  
          # Verify inputs before we start generating tokens
          source_repository, account_name, team_project_name = self._get_source_repository(self._repo_info.url,
              self._repo_info.git_token, branch, self._azure_info.credentials, 
              self._repo_info._private_repo_username, self._repo_info._private_repo_password)
          self._verify_vsts_parameters(vsts_account_name, source_repository)
          vsts_account_name = vsts_account_name or account_name
          cd_project_name = team_project_name or self._azure_info.website_name
          account_url = 'https://{}.visualstudio.com'.format(quote(vsts_account_name))
          portalext_account_url = 'https://{}.portalext.visualstudio.com'.format(quote(vsts_account_name))
  
          # VSTS Account using AEX APIs
          account_created = False
          if create_account:
              self.create_vsts_account(self._azure_info.credentials, vsts_account_name)
              account_created = True
          
          # Create ContinuousDelivery client
          cd = ContinuousDelivery('3.2-preview.1', portalext_account_url, self._azure_info.credentials)
  
          # Construct the config body of the continuous delivery call
          build_configuration = self._get_build_configuration(app_type_details)
          source = ProvisioningConfigurationSource('codeRepository', source_repository, build_configuration)
          auth_info = AuthorizationInfo('Headers', AuthorizationInfoParameters('Bearer ' + vsts_app_auth_token))
          target = self.get_provisioning_configuration_target(auth_info, swap_with_slot, test, webapp_list)
          ci_config = CiConfiguration(CiArtifact(name=cd_project_name))
          config = ProvisioningConfiguration(None, source, target, ci_config)
  
          # Configure the continuous deliver using VSTS as a backend
          response = cd.provisioning_configuration(config)
          if response.ci_configuration.result.status == 'queued':
              final_status = self._wait_for_cd_completion(cd, response)
              return self._get_summary(final_status, account_url, vsts_account_name, account_created, self._azure_info.subscription_id,
                                       self._azure_info.resource_group_name, self._azure_info.website_name)
          else:
              raise RuntimeError('Unknown status returned from provisioning_configuration: ' + response.ci_configuration.result.status)