Esempio n. 1
0
def create_website(cmd,
                   name,
                   runtime,
                   deployment_local_git=True,
                   deployment_user=None):
    runtime_values = RUNTIMES[runtime.lower()]
    deployment_user_password = None
    create_app_service_plan(cmd,
                            resource_group_name=name,
                            name=name,
                            is_linux=runtime_values['is_linux'],
                            hyper_v=False).result()
    webapp = create_webapp(cmd,
                           resource_group_name=name,
                           name=name,
                           plan=name,
                           runtime=runtime_values['name'],
                           deployment_local_git=deployment_local_git)
    if deployment_user:
        deployment_user_password = uuid4()
        set_deployment_user(cmd, deployment_user, deployment_user_password)
    else:
        deployment_user = web_client_factory(
            cmd.cli_ctx).get_publishing_user().publishing_user_name
    site = {}
    site['deployment_user'] = deployment_user
    site[
        'deployment_password'] = deployment_user_password if deployment_user_password else '***'
    site['deployment_url'] = webapp.deploymentLocalGitUrl
    site['hostname'] = 'https://{}'.format(webapp.host_names[0])
    return site
Esempio n. 2
0
 def __set_deployment_user(self):
     deployment_user = web_client_factory(
         self.__cmd.cli_ctx).get_publishing_user()
     # Check for existing deployment user
     if not deployment_user:
         # Create random password, set name to first 10 characters of app name
         self.deployment_user_password = str(uuid4())
         set_deployment_user(self.__cmd,
                             user_name=self.name[:10],
                             password=self.deployment_user_password)
         self.deployment_user_name = self.name[:10]
     else:
         self.deployment_user_name = deployment_user.publishing_user_name
 def __set_deployment_user(self):
     deployment_user = web_client_factory(
         self.__cmd.cli_ctx).get_publishing_user()
     # Check for existing deployment user
     if not deployment_user or not deployment_user.publishing_user_name:
         # Create random password, set name to base of app name
         logger.warning('Creating deployment user')
         password = str(uuid4())
         user_name = self.name
         set_deployment_user(self.__cmd,
                             user_name=user_name,
                             password=password)
         self.deployment_user_name = user_name
         self.deployment_user_password = password
     else:
         self.deployment_user_name = deployment_user.publishing_user_name
    def test_set_deployment_user_creds(self, client_factory_mock):
        self.client._client = mock.MagicMock()
        client_factory_mock.return_value = self.client
        mock_response = mock.MagicMock()
        mock_response.status_code = 200
        self.client._client.send.return_value = mock_response

        # action
        result = set_deployment_user('admin', 'verySecret1')

        # assert things get wired up with a result returned
        self.assertIsNotNone(result)
    def test_set_deployment_user_creds(self, client_factory_mock):
        class MockClient:
            def update_publishing_user(self, user):
                # Don't do an actual call, just return the incoming user
                return user

        client_factory_mock.return_value = MockClient()

        # action
        user = set_deployment_user(_get_test_cmd(), 'admin', 'verySecret1')

        # assert things get wired up with a result returned
        assert user.publishing_user_name == 'admin'
        assert user.publishing_password == 'verySecret1'