diff options
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-dsp-tools.spec | 319 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 321 insertions, 0 deletions
@@ -0,0 +1 @@ +/dsp_tools-2.2.2.tar.gz diff --git a/python-dsp-tools.spec b/python-dsp-tools.spec new file mode 100644 index 0000000..710a905 --- /dev/null +++ b/python-dsp-tools.spec @@ -0,0 +1,319 @@ +%global _empty_manifest_terminate_build 0 +Name: python-dsp-tools +Version: 2.2.2 +Release: 1 +Summary: DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server. +License: GPL-3.0-only +URL: https://www.dasch.swiss/ +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2b/9b/26844ba5504db8e80a86f29cc1982467c76b432854b0b0597b3e67fc4c01/dsp_tools-2.2.2.tar.gz +BuildArch: noarch + +Requires: python3-jsonpath-ng +Requires: python3-argparse +Requires: python3-lxml +Requires: python3-requests +Requires: python3-jsonschema +Requires: python3-openpyxl +Requires: python3-networkx +Requires: python3-pandas +Requires: python3-xlrd +Requires: python3-regex + +%description +[](https://badge.fury.io/py/dsp-tools) + +# DSP-TOOLS documentation + +DSP-TOOLS is a Python package with a command line interface +that helps you interact with a DSP server. +A DSP server is a remote server or a local machine +where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on. + +To install the latest version, run: + +```bash +pip3 install dsp-tools +``` + +To update to the latest version run: + +```bash +pip3 install --upgrade dsp-tools +``` + +The two main tasks that DSP-TOOLS serves for are: + +- **Create a project with its data model(s), described in a JSON file, on a DSP server** + In order to archive your data on the DaSCH Service Platform, + you need a data model that describes your data. + The data model is defined in a JSON project definition file + which has to be transmitted to the DSP server. + If the DSP server is aware of the data model for your project, + conforming data can be uploaded into the DSP repository. +- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model** + Sometimes, data is added in large quantities. + Therefore, DSP-TOOLS allows you to perform bulk imports of your data. + In order to do so, the data has to be described in an XML file. + DSP-TOOLS is able to read the XML file + and upload all data to the DSP server. + +All functionalities of DSP-TOOLS revolve around these two basic tasks. + +DSP-TOOLS provides the following functionalities: + +- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create) + creates the project with its data model(s) on a DSP server from a JSON file. +- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get) + reads a project with its data model(s) from + a DSP server and writes it into a JSON file. +- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload) + uploads data from an XML file (bulk data import) + and writes the mapping from internal IDs to IRIs into a local file. +- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json) + creates an entire JSON project file from a folder with Excel files in it. + - [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists) + creates the "lists" section of a JSON project file from one or several Excel files. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources) + creates the "resources" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties) + creates the "properties" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. +- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml) + transforms a data source to XML + if it is already structured according to the DSP specifications. +- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module) + provides helper methods that can be used in a Python script + to convert data from a tabular format into XML. +- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri) + takes an XML file for bulk data import and replaces referenced internal IDs with IRIs. + The mapping has to be provided with a JSON file. +- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack) + assist you in running a DSP stack on your local machine. +- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template) + creates a template repository with a minimal JSON and XML file. +- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta) + clones the most up to data rosetta repository, + creates the data model and uploads the data. + + +%package -n python3-dsp-tools +Summary: DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server. +Provides: python-dsp-tools +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-dsp-tools +[](https://badge.fury.io/py/dsp-tools) + +# DSP-TOOLS documentation + +DSP-TOOLS is a Python package with a command line interface +that helps you interact with a DSP server. +A DSP server is a remote server or a local machine +where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on. + +To install the latest version, run: + +```bash +pip3 install dsp-tools +``` + +To update to the latest version run: + +```bash +pip3 install --upgrade dsp-tools +``` + +The two main tasks that DSP-TOOLS serves for are: + +- **Create a project with its data model(s), described in a JSON file, on a DSP server** + In order to archive your data on the DaSCH Service Platform, + you need a data model that describes your data. + The data model is defined in a JSON project definition file + which has to be transmitted to the DSP server. + If the DSP server is aware of the data model for your project, + conforming data can be uploaded into the DSP repository. +- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model** + Sometimes, data is added in large quantities. + Therefore, DSP-TOOLS allows you to perform bulk imports of your data. + In order to do so, the data has to be described in an XML file. + DSP-TOOLS is able to read the XML file + and upload all data to the DSP server. + +All functionalities of DSP-TOOLS revolve around these two basic tasks. + +DSP-TOOLS provides the following functionalities: + +- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create) + creates the project with its data model(s) on a DSP server from a JSON file. +- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get) + reads a project with its data model(s) from + a DSP server and writes it into a JSON file. +- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload) + uploads data from an XML file (bulk data import) + and writes the mapping from internal IDs to IRIs into a local file. +- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json) + creates an entire JSON project file from a folder with Excel files in it. + - [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists) + creates the "lists" section of a JSON project file from one or several Excel files. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources) + creates the "resources" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties) + creates the "properties" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. +- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml) + transforms a data source to XML + if it is already structured according to the DSP specifications. +- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module) + provides helper methods that can be used in a Python script + to convert data from a tabular format into XML. +- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri) + takes an XML file for bulk data import and replaces referenced internal IDs with IRIs. + The mapping has to be provided with a JSON file. +- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack) + assist you in running a DSP stack on your local machine. +- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template) + creates a template repository with a minimal JSON and XML file. +- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta) + clones the most up to data rosetta repository, + creates the data model and uploads the data. + + +%package help +Summary: Development documents and examples for dsp-tools +Provides: python3-dsp-tools-doc +%description help +[](https://badge.fury.io/py/dsp-tools) + +# DSP-TOOLS documentation + +DSP-TOOLS is a Python package with a command line interface +that helps you interact with a DSP server. +A DSP server is a remote server or a local machine +where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on. + +To install the latest version, run: + +```bash +pip3 install dsp-tools +``` + +To update to the latest version run: + +```bash +pip3 install --upgrade dsp-tools +``` + +The two main tasks that DSP-TOOLS serves for are: + +- **Create a project with its data model(s), described in a JSON file, on a DSP server** + In order to archive your data on the DaSCH Service Platform, + you need a data model that describes your data. + The data model is defined in a JSON project definition file + which has to be transmitted to the DSP server. + If the DSP server is aware of the data model for your project, + conforming data can be uploaded into the DSP repository. +- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model** + Sometimes, data is added in large quantities. + Therefore, DSP-TOOLS allows you to perform bulk imports of your data. + In order to do so, the data has to be described in an XML file. + DSP-TOOLS is able to read the XML file + and upload all data to the DSP server. + +All functionalities of DSP-TOOLS revolve around these two basic tasks. + +DSP-TOOLS provides the following functionalities: + +- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create) + creates the project with its data model(s) on a DSP server from a JSON file. +- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get) + reads a project with its data model(s) from + a DSP server and writes it into a JSON file. +- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload) + uploads data from an XML file (bulk data import) + and writes the mapping from internal IDs to IRIs into a local file. +- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json) + creates an entire JSON project file from a folder with Excel files in it. + - [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists) + creates the "lists" section of a JSON project file from one or several Excel files. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources) + creates the "resources" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. + - [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties) + creates the "properties" section of a JSON project file from an Excel file. + The resulting section can be integrated into a JSON project file + and then be uploaded to a DSP server with `dsp-tools create`. +- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml) + transforms a data source to XML + if it is already structured according to the DSP specifications. +- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module) + provides helper methods that can be used in a Python script + to convert data from a tabular format into XML. +- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri) + takes an XML file for bulk data import and replaces referenced internal IDs with IRIs. + The mapping has to be provided with a JSON file. +- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack) + assist you in running a DSP stack on your local machine. +- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template) + creates a template repository with a minimal JSON and XML file. +- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta) + clones the most up to data rosetta repository, + creates the data model and uploads the data. + + +%prep +%autosetup -n dsp-tools-2.2.2 + +%build +%py3_build + +%install +%py3_install +install -d -m755 %{buildroot}/%{_pkgdocdir} +if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi +if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi +if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi +if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi +pushd %{buildroot} +if [ -d usr/lib ]; then + find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/lib64 ]; then + find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/bin ]; then + find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst +fi +if [ -d usr/sbin ]; then + find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst +fi +touch doclist.lst +if [ -d usr/share/man ]; then + find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst +fi +popd +mv %{buildroot}/filelist.lst . +mv %{buildroot}/doclist.lst . + +%files -n python3-dsp-tools -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 2.2.2-1 +- Package Spec generated @@ -0,0 +1 @@ +b599d3d9e9d33ecd0947f6494179e39a dsp_tools-2.2.2.tar.gz |