コード例 #1
0
ファイル: nflex.py プロジェクト: jonhoskin/flexer
    def update(self,
               module_id,
               zip_file,
               language,
               handlers=None,
               description=None):
        file_type = 'zip' if zip_file else 'inline'
        data = {'file_type': file_type}
        if description is not None:
            data['description'] = description

        if language is not None:
            data['language'] = language

        if handlers:
            with open(handlers, 'r') as hf:
                data['handlers'] = json.load(hf)

        if file_type == 'inline':
            mname = "main.{}".format(LANG_EXT.get(language) or "py")
            data['source_code'] = read_module(mname)
            return self._patch('/modules/%s' % module_id, data=data)

        elif file_type == 'zip':
            self._patch('/modules/%s?nosync=true' % module_id, data=data)
            fname = os.path.basename(zip_file)
            with open(zip_file, 'rb') as zf:
                return self._upload_zipfile(module_id, zf, fname)
コード例 #2
0
ファイル: nflex.py プロジェクト: aisbaa/flexer
    def update(self, module_id, zip_file):
        file_type = 'zip' if zip_file else 'inline'
        data = {'file_type': file_type}
        if file_type == 'inline':
            data['source_code'] = read_module("main.py")
            return self._patch('/modules/%s' % module_id, data=data)

        elif file_type == 'zip':
            self._patch('/modules/%s' % module_id, data=data)
            with open(zip_file, 'rb') as zf:
                return self._upload_zipfile(module_id, zf)
コード例 #3
0
    def update(self, module_id, zip_file, description=None):
        file_type = 'zip' if zip_file else 'inline'
        data = {'file_type': file_type}
        if description is not None:
            data['description'] = description
        if file_type == 'inline':
            data['source_code'] = read_module("main.py")
            return self._patch('/modules/%s' % module_id, data=data)

        elif file_type == 'zip':
            self._patch('/modules/%s' % module_id, data=data)
            fname = os.path.basename(zip_file)
            with open(zip_file, 'rb') as zf:
                return self._upload_zipfile(module_id, zf, fname)
コード例 #4
0
ファイル: nflex.py プロジェクト: aisbaa/flexer
    def upload(self, name, description, event_source, sync, zip_file):
        file_type = 'zip' if zip_file else 'inline'
        data = {
            'name': name,
            'description': description,
            'file_type': file_type,
            'event_source': event_source,
            'source_code': '',
            'language': 'python',
            'sync': sync
        }
        if file_type == 'inline':
            data['source_code'] = read_module("main.py")
            return self._post('/modules', data=data)

        elif file_type == 'zip':
            module = self._post('/modules', data=data).json()
            with open(zip_file, 'rb') as zf:
                self._upload_zipfile(module['id'], zf)

            return module
コード例 #5
0
ファイル: nflex.py プロジェクト: jonhoskin/flexer
    def upload(self, name, description, event_source, language, zip_file):
        file_type = 'zip' if zip_file else 'inline'
        data = {
            'name': name,
            'description': description,
            'file_type': file_type,
            'event_source': event_source,
            'source_code': '',
            'language': language,
        }
        if file_type == 'inline':
            mname = "main.{}".format(LANG_EXT.get(language) or "py")
            data['source_code'] = read_module(mname)
            return self._post('/modules', data=data)

        elif file_type == 'zip':
            module = self._post('/modules', data=data)
            fname = os.path.basename(zip_file)
            with open(zip_file, 'rb') as zf:
                self._upload_zipfile(module['id'], zf, fname)

            return module