Пример #1
0
 def import_data(self, key: str, value: Any, obj: Any) -> None:
     # combine versions into specs
     value['platform_version_spec'] = to_spec(
         value['platform_min_version'], value['platform_max_version'])
     value['php_version_spec'] = to_spec(value['php_min_version'],
                                         value['php_max_version'])
     super().import_data(key, value, obj)
Пример #2
0
    def _before_import(self, key: str, value: Any, obj: Any) -> Tuple[Any,
                                                                      Any]:
        # combine versions into specs
        value['platform_version_spec'] = to_spec(
            value['platform_min_version'], value['platform_max_version'])
        value['php_version_spec'] = to_spec(value['php_min_version'],
                                            value['php_max_version'])
        obj.licenses.clear()
        obj.shell_commands.clear()
        obj.licenses.clear()
        obj.php_extensions.clear()
        obj.databases.clear()

        if value['version'].endswith('-nightly'):
            AppRelease.objects.filter(
                app__id=obj.id, version__endswith='-nightly').delete()

        return value, obj
Пример #3
0
 def import_data(self, key: str, value: Any, obj: Any) -> None:
     for db in value:
         version_spec = to_spec(db['database']['min_version'],
                                db['database']['max_version'])
         # all dbs should be known already
         database = Database.objects.get(id=db['database']['id'])
         DatabaseDependency.objects.create(
             version_spec=version_spec,
             app_release=obj, database=database,
         )
Пример #4
0
 def import_data(self, key: str, value: Any, obj: Any) -> None:
     for ext in value:
         version_spec = to_spec(ext['php_extension']['min_version'],
                                ext['php_extension']['max_version'])
         extension, created = PhpExtension.objects.get_or_create(
             id=ext['php_extension']['id'])
         PhpExtensionDependency.objects.create(
             version_spec=version_spec,
             app_release=obj, php_extension=extension,
         )
Пример #5
0
 def _before_import(self, key: str, value: Any,
                    obj: Any) -> Tuple[Any, Any]:
     # combine versions into specs
     value['platform_version_spec'] = to_spec(value['platform_min_version'],
                                              value['platform_max_version'])
     value['php_version_spec'] = to_spec(value['php_min_version'],
                                         value['php_max_version'])
     value['raw_platform_version_spec'] = to_raw_spec(
         value['raw_platform_min_version'],
         value['raw_platform_max_version'])
     value['raw_php_version_spec'] = to_raw_spec(
         value['raw_php_min_version'], value['raw_php_max_version'])
     obj.licenses.clear()
     obj.shell_commands.clear()
     obj.licenses.clear()
     obj.php_extensions.clear()
     obj.databases.clear()
     obj.signature_digest = settings.CERTIFICATE_DIGEST
     return value, obj
Пример #6
0
 def _before_import(self, key: str, value: Any, obj: Any) -> Tuple[Any,
                                                                   Any]:
     # combine versions into specs
     value['platform_version_spec'] = to_spec(
         value['platform_min_version'], value['platform_max_version'])
     value['php_version_spec'] = to_spec(value['php_min_version'],
                                         value['php_max_version'])
     value['raw_platform_version_spec'] = to_raw_spec(
         value['raw_platform_min_version'],
         value['raw_platform_max_version'])
     value['raw_php_version_spec'] = to_raw_spec(
         value['raw_php_min_version'],
         value['raw_php_max_version'])
     obj.licenses.clear()
     obj.shell_commands.clear()
     obj.licenses.clear()
     obj.php_extensions.clear()
     obj.databases.clear()
     return value, obj
Пример #7
0
 def import_data(self, key: str, value: Any, obj: Any) -> None:
     for db in value:
         version_spec = to_spec(db['database']['min_version'],
                                db['database']['max_version'])
         raw_version_spec = to_raw_spec(db['database']['raw_min_version'],
                                        db['database']['raw_max_version'])
         # all dbs should be known already
         database = Database.objects.get(id=db['database']['id'])
         DatabaseDependency.objects.create(
             version_spec=version_spec,
             raw_version_spec=raw_version_spec,
             app_release=obj, database=database,
         )
Пример #8
0
 def import_data(self, key: str, value: Any, obj: Any) -> None:
     for ext in value:
         version_spec = to_spec(ext['php_extension']['min_version'],
                                ext['php_extension']['max_version'])
         raw_version_spec = to_raw_spec(
             ext['php_extension']['raw_min_version'],
             ext['php_extension']['raw_max_version'])
         extension, created = PhpExtension.objects.get_or_create(
             id=ext['php_extension']['id'])
         PhpExtensionDependency.objects.create(
             version_spec=version_spec,
             raw_version_spec=raw_version_spec,
             app_release=obj, php_extension=extension,
         )
Пример #9
0
 def test_to_spec(self):
     self.assertEqual('*', to_spec('*', '*'))
     self.assertEqual('>=9.0.0,<11.0.0', to_spec('9.0.0', '11.0.0'))
     self.assertEqual('>=9.0.0', to_spec('9.0.0', '*'))
     self.assertEqual('<11.0.0', to_spec('*', '11.0.0'))