Esempio n. 1
0
 def web_address(self):
     """
     Return the url of the web server or None if not running
     """
     port = self._current_web_port()
     if port is None:
         return None
     return 'http://{0}:{1}/'.format(docker_host(), port)
Esempio n. 2
0
 def web_address(self):
     """
     Return the url of the web server or None if not running
     """
     port = self._current_web_port()
     if port is None:
         return None
     return 'http://{0}:{1}/'.format(docker_host(), port)
Esempio n. 3
0
 def web_address(self):
     """
     Return the url of the web server or None if not running
     """
     port = self._current_web_port()
     address = self.address or '127.0.0.1'
     if port is None:
         return None
     return 'http://{0}:{1}/'.format(
         address if address and not is_boot2docker() else docker_host(),
         port)
Esempio n. 4
0
 def web_address(self):
     """
     Return the url of the web server or None if not running
     """
     port = self._current_web_port()
     address = self.address or '127.0.0.1'
     if port is None:
         return None
     return 'http://{0}:{1}/'.format(
         address if address and not is_boot2docker() else docker_host(),
         port)
Esempio n. 5
0
    def _create_run_ini(self,
                        port,
                        production,
                        output='development.ini',
                        source='development.ini',
                        override_site_url=True):
        """
        Create run/development.ini in datadir with debug and site_url overridden
        and with correct db passwords inserted
        """
        cp = SafeConfigParser()
        try:
            cp.read([self.target + '/' + source])
        except ConfigParserError:
            raise DatacatsError('Error reading development.ini')

        cp.set('DEFAULT', 'debug', 'false' if production else 'true')

        if self.site_url:
            site_url = self.site_url
        else:
            if is_boot2docker():
                web_address = socket.gethostbyname(docker_host())
            else:
                web_address = self.address
            site_url = 'http://{}:{}'.format(web_address, port)

        if override_site_url:
            cp.set('app:main', 'ckan.site_url', site_url)

        cp.set(
            'app:main', 'sqlalchemy.url',
            'postgresql://*****:*****@db:5432/ckan'.format(
                self.passwords['CKAN_PASSWORD']))
        cp.set(
            'app:main', 'ckan.datastore.read_url',
            'postgresql://*****:*****@db:5432/ckan_datastore'.
            format(self.passwords['DATASTORE_RO_PASSWORD']))
        cp.set(
            'app:main', 'ckan.datastore.write_url',
            'postgresql://*****:*****@db:5432/ckan_datastore'.
            format(self.passwords['DATASTORE_RW_PASSWORD']))
        cp.set('app:main', 'solr_url', 'http://solr:8080/solr')
        cp.set('app:main', 'beaker.session.secret',
               self.passwords['BEAKER_SESSION_SECRET'])

        if not isdir(self.sitedir + '/run'):
            makedirs(self.sitedir + '/run')  # upgrade old datadir
        with open(self.sitedir + '/run/' + output, 'w') as runini:
            cp.write(runini)
Esempio n. 6
0
    def _create_run_ini(self, port, production, output='development.ini',
                        source='development.ini', override_site_url=True):
        """
        Create run/development.ini in datadir with debug and site_url overridden
        and with correct db passwords inserted
        """
        cp = SafeConfigParser()
        try:
            cp.read([self.target + '/' + source])
        except ConfigParserError:
            raise DatacatsError('Error reading development.ini')

        cp.set('DEFAULT', 'debug', 'false' if production else 'true')

        if self.site_url:
            site_url = self.site_url
        else:
            if is_boot2docker():
                web_address = socket.gethostbyname(docker_host())
            else:
                web_address = self.address
            site_url = 'http://{}:{}'.format(web_address, port)

        if override_site_url:
            cp.set('app:main', 'ckan.site_url', site_url)

        cp.set('app:main', 'sqlalchemy.url',
               'postgresql://*****:*****@db:5432/ckan'
               .format(self.passwords['CKAN_PASSWORD']))
        cp.set('app:main', 'ckan.datastore.read_url',
               'postgresql://*****:*****@db:5432/ckan_datastore'
               .format(self.passwords['DATASTORE_RO_PASSWORD']))
        cp.set('app:main', 'ckan.datastore.write_url',
               'postgresql://*****:*****@db:5432/ckan_datastore'
               .format(self.passwords['DATASTORE_RW_PASSWORD']))
        cp.set('app:main', 'solr_url', 'http://solr:8080/solr')
        cp.set('app:main', 'beaker.session.secret', self.passwords['BEAKER_SESSION_SECRET'])

        if not isdir(self.sitedir + '/run'):
            makedirs(self.sitedir + '/run')  # upgrade old datadir
        with open(self.sitedir + '/run/' + output, 'w') as runini:
            cp.write(runini)