diff options
| author | CoprDistGit <infra@openeuler.org> | 2023-05-29 09:56:14 +0000 |
|---|---|---|
| committer | CoprDistGit <infra@openeuler.org> | 2023-05-29 09:56:14 +0000 |
| commit | 1d6278c10c402ed55b45fbd89c08996ab4ff69e2 (patch) | |
| tree | d28c12112eab59c7bf290cbe0501442cd6d6420f /python-qsense.spec | |
| parent | d2e24b0fd459220253e97e649177697f5e0f9f0f (diff) | |
automatic import of python-qsense
Diffstat (limited to 'python-qsense.spec')
| -rw-r--r-- | python-qsense.spec | 468 |
1 files changed, 468 insertions, 0 deletions
diff --git a/python-qsense.spec b/python-qsense.spec new file mode 100644 index 0000000..dedc94a --- /dev/null +++ b/python-qsense.spec @@ -0,0 +1,468 @@ +%global _empty_manifest_terminate_build 0 +Name: python-qsense +Version: 0.8.4 +Release: 1 +Summary: qsense is a python library and a command line tool for qliksense +License: GPL +URL: https://github.com/matteoredaelli/qsense +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/89/97/6e3afcd01dbabd043238081ac7e6a741819aa68992982eea22603156d07f/qsense-0.8.4.tar.gz +BuildArch: noarch + +Requires: python3-fire +Requires: python3-pyqlikengine +Requires: python3-pytz +Requires: python3-qsapi +Requires: python3-requests +Requires: python3-requests-ntlm + +%description +# qSense + +*qsense* is a python library and command line tool for QLIK QlikSense. It contains some useful functions for administrators/developers of QLiksense + +It is built on top of the python libraries [qsAPI](https://github.com/rafael-sanz/qsAPI) and [pyqlikengine](https://github.com/qliknln/pyqlikengine) + +# Installation + +pip install qsense + +# Usage + +export LOGLEVEL=DEBUG + +```bash +NAME + qsense - qsense is a python library and command line tool for Qliksense administrators + +SYNOPSIS + qsense COMMAND + +DESCRIPTION + qsense is a python library and command line tool for Qliksense administrators + +COMMANDS + COMMAND is one of the following: + + add_entity + add a new entity (user, stream, dataconnection,...) + + deallocate_analyzer_licenses_for_professionals + Deallocate analyzer license fom users with a professional license + + deallocate_unused_analyzer_licenses + Deallocate analyzer license not used for N days + + delete_removed_exernally_users + Delete users that were removed externally (from active directory?) + + delete_user_session + delete user session + + entity + Get a specific entity by ID or entity list or count + + export_apps + Export (published or passing any other filter) applications to qvd files + + get + generic get http from Qlik (service can be qrs or qps) + + get_app_connections + Extract the connections from an app + + get_app_dataconnections + Extract the dataconnections found in the app script + + get_app_script + Extract the ETL script from an app + + healthcheck + Get a specific entity by ID or entity list or count + + old_apps + Find old apps using 'modified_date' and 'last_reload_time' filters: then you can export them or delete or notify via email the owners + + open_doc + Load an app in memory, useful for preloading an app / cacha warmer + + post + NOT TESTED: generic post http to Qlik (service can be qrs or qps) + + update_custom_property_with_users_list + update the values of a custom property with the list of all qliksense users + + update_entity + update an entity (user, stream, dataconnection,...) + + user_sessions + user sessions + + users + Get users with groups + + users_with_unpublished_apps + Find users with too many unpublished apps +``` + +Look at the source file qsense/command_line.py for details + +# Examples + +## Changing all data connections after a file server migration + +```bash +JSONFILE=ds-shares.json +rm $JSONFILE + +qsense get qlikserver.redaelli.org client.pem /qrs/dataconnection/full --pFilter "connectionstring sw '\\\\\\\amzn'" | jq '.' > $JSONFILE + +sed -e 's/amznfsx94rgsb1e/amznfsxe9chyjel/g' ${JSONFILE} > new-${JSONFILE} + +qsense update_entity qlikserver.redaelli.org client.pem dataconnection new-${JSONFILE} +``` + +## Exporting and/or deleting old applications + +Not published and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --export --delete +``` + +Published in some specific streams and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --published --pFilter "(stream.name eq '000' or stream.name eq 'AAA' or stream.name eq 'BBB' or stream.name eq 'CCC')" --export --delete +``` + +## Removing analyzer licenses for professional users + +```bash +qsense deallocate_analyzer_licenses_for_professionals qlikserver.redaelli.org client.pem --nodryrun +``` + +## Top users with unpublished apps + +```bash +qsense users_with_unpublished_apps qlikserver.redaelli.org client.pem --threshold 30 +``` + + +%package -n python3-qsense +Summary: qsense is a python library and a command line tool for qliksense +Provides: python-qsense +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-qsense +# qSense + +*qsense* is a python library and command line tool for QLIK QlikSense. It contains some useful functions for administrators/developers of QLiksense + +It is built on top of the python libraries [qsAPI](https://github.com/rafael-sanz/qsAPI) and [pyqlikengine](https://github.com/qliknln/pyqlikengine) + +# Installation + +pip install qsense + +# Usage + +export LOGLEVEL=DEBUG + +```bash +NAME + qsense - qsense is a python library and command line tool for Qliksense administrators + +SYNOPSIS + qsense COMMAND + +DESCRIPTION + qsense is a python library and command line tool for Qliksense administrators + +COMMANDS + COMMAND is one of the following: + + add_entity + add a new entity (user, stream, dataconnection,...) + + deallocate_analyzer_licenses_for_professionals + Deallocate analyzer license fom users with a professional license + + deallocate_unused_analyzer_licenses + Deallocate analyzer license not used for N days + + delete_removed_exernally_users + Delete users that were removed externally (from active directory?) + + delete_user_session + delete user session + + entity + Get a specific entity by ID or entity list or count + + export_apps + Export (published or passing any other filter) applications to qvd files + + get + generic get http from Qlik (service can be qrs or qps) + + get_app_connections + Extract the connections from an app + + get_app_dataconnections + Extract the dataconnections found in the app script + + get_app_script + Extract the ETL script from an app + + healthcheck + Get a specific entity by ID or entity list or count + + old_apps + Find old apps using 'modified_date' and 'last_reload_time' filters: then you can export them or delete or notify via email the owners + + open_doc + Load an app in memory, useful for preloading an app / cacha warmer + + post + NOT TESTED: generic post http to Qlik (service can be qrs or qps) + + update_custom_property_with_users_list + update the values of a custom property with the list of all qliksense users + + update_entity + update an entity (user, stream, dataconnection,...) + + user_sessions + user sessions + + users + Get users with groups + + users_with_unpublished_apps + Find users with too many unpublished apps +``` + +Look at the source file qsense/command_line.py for details + +# Examples + +## Changing all data connections after a file server migration + +```bash +JSONFILE=ds-shares.json +rm $JSONFILE + +qsense get qlikserver.redaelli.org client.pem /qrs/dataconnection/full --pFilter "connectionstring sw '\\\\\\\amzn'" | jq '.' > $JSONFILE + +sed -e 's/amznfsx94rgsb1e/amznfsxe9chyjel/g' ${JSONFILE} > new-${JSONFILE} + +qsense update_entity qlikserver.redaelli.org client.pem dataconnection new-${JSONFILE} +``` + +## Exporting and/or deleting old applications + +Not published and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --export --delete +``` + +Published in some specific streams and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --published --pFilter "(stream.name eq '000' or stream.name eq 'AAA' or stream.name eq 'BBB' or stream.name eq 'CCC')" --export --delete +``` + +## Removing analyzer licenses for professional users + +```bash +qsense deallocate_analyzer_licenses_for_professionals qlikserver.redaelli.org client.pem --nodryrun +``` + +## Top users with unpublished apps + +```bash +qsense users_with_unpublished_apps qlikserver.redaelli.org client.pem --threshold 30 +``` + + +%package help +Summary: Development documents and examples for qsense +Provides: python3-qsense-doc +%description help +# qSense + +*qsense* is a python library and command line tool for QLIK QlikSense. It contains some useful functions for administrators/developers of QLiksense + +It is built on top of the python libraries [qsAPI](https://github.com/rafael-sanz/qsAPI) and [pyqlikengine](https://github.com/qliknln/pyqlikengine) + +# Installation + +pip install qsense + +# Usage + +export LOGLEVEL=DEBUG + +```bash +NAME + qsense - qsense is a python library and command line tool for Qliksense administrators + +SYNOPSIS + qsense COMMAND + +DESCRIPTION + qsense is a python library and command line tool for Qliksense administrators + +COMMANDS + COMMAND is one of the following: + + add_entity + add a new entity (user, stream, dataconnection,...) + + deallocate_analyzer_licenses_for_professionals + Deallocate analyzer license fom users with a professional license + + deallocate_unused_analyzer_licenses + Deallocate analyzer license not used for N days + + delete_removed_exernally_users + Delete users that were removed externally (from active directory?) + + delete_user_session + delete user session + + entity + Get a specific entity by ID or entity list or count + + export_apps + Export (published or passing any other filter) applications to qvd files + + get + generic get http from Qlik (service can be qrs or qps) + + get_app_connections + Extract the connections from an app + + get_app_dataconnections + Extract the dataconnections found in the app script + + get_app_script + Extract the ETL script from an app + + healthcheck + Get a specific entity by ID or entity list or count + + old_apps + Find old apps using 'modified_date' and 'last_reload_time' filters: then you can export them or delete or notify via email the owners + + open_doc + Load an app in memory, useful for preloading an app / cacha warmer + + post + NOT TESTED: generic post http to Qlik (service can be qrs or qps) + + update_custom_property_with_users_list + update the values of a custom property with the list of all qliksense users + + update_entity + update an entity (user, stream, dataconnection,...) + + user_sessions + user sessions + + users + Get users with groups + + users_with_unpublished_apps + Find users with too many unpublished apps +``` + +Look at the source file qsense/command_line.py for details + +# Examples + +## Changing all data connections after a file server migration + +```bash +JSONFILE=ds-shares.json +rm $JSONFILE + +qsense get qlikserver.redaelli.org client.pem /qrs/dataconnection/full --pFilter "connectionstring sw '\\\\\\\amzn'" | jq '.' > $JSONFILE + +sed -e 's/amznfsx94rgsb1e/amznfsxe9chyjel/g' ${JSONFILE} > new-${JSONFILE} + +qsense update_entity qlikserver.redaelli.org client.pem dataconnection new-${JSONFILE} +``` + +## Exporting and/or deleting old applications + +Not published and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --export --delete +``` + +Published in some specific streams and not updated/reloaded in the last 120 days + +```bash +qsense old_apps qlikserver.redaelli.org client.pem /qrs/dataconnection/full --target_path /tmp --modified_days=120 --last_reload_days=120 --published --pFilter "(stream.name eq '000' or stream.name eq 'AAA' or stream.name eq 'BBB' or stream.name eq 'CCC')" --export --delete +``` + +## Removing analyzer licenses for professional users + +```bash +qsense deallocate_analyzer_licenses_for_professionals qlikserver.redaelli.org client.pem --nodryrun +``` + +## Top users with unpublished apps + +```bash +qsense users_with_unpublished_apps qlikserver.redaelli.org client.pem --threshold 30 +``` + + +%prep +%autosetup -n qsense-0.8.4 + +%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-qsense -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon May 29 2023 Python_Bot <Python_Bot@openeuler.org> - 0.8.4-1 +- Package Spec generated |
