diff --git a/_servicedata b/_servicedata new file mode 100644 index 0000000..decea5d --- /dev/null +++ b/_servicedata @@ -0,0 +1,8 @@ + + + git://github.com/M0ses/kanku.git + ed5bac080169cbc36c4208db35ea86d9c1ace0a7 + /home/frank/prj/kanku + 07fc15f0647a92f01b67085d698485d3432a8924 + https://github.com/M0ses/kanku.git + ed5bac080169cbc36c4208db35ea86d9c1ace0a7 \ No newline at end of file diff --git a/debian.dsc b/debian.dsc index 12064a5..b2eaea1 100644 --- a/debian.dsc +++ b/debian.dsc @@ -2,7 +2,7 @@ Format: 1.0 Source: kanku Binary: kanku Architecture: any -Version: 0.9.0 +Version: 0.9.0.git20201205.ed5bac0 Maintainer: Frank Schreiner Standards-Version: 3.8.2 Homepage: https://github.com/M0ses/kanku diff --git a/kanku-0.9.0.git20201205.ed5bac0.tar.xz b/kanku-0.9.0.git20201205.ed5bac0.tar.xz new file mode 100644 index 0000000..47d51a7 --- /dev/null +++ b/kanku-0.9.0.git20201205.ed5bac0.tar.xz @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:c0b63290669d45b2bcda6b35039d407d2603b6669a610ba075db2c38e772c1d6 +size 2326772 diff --git a/kanku.changes b/kanku.changes new file mode 100644 index 0000000..0856926 --- /dev/null +++ b/kanku.changes @@ -0,0 +1,817 @@ +------------------------------------------------------------------- +Sun Dec 06 16:52:01 UTC 2020 - FSchreiner@suse.com + +- Update to version 0.9.0: + * [cli] autosetup correct images repo for arch + * [dist] arch depedent templates + * [dist] added Kanku::Util package + * [cli] use arch in devel setup + * [cli] prepare 'lsi' for multiarch support + * [util] remove nvram on dom undefine (aarch64) + * [core] first working version for aarch64 + * [dist] removed qemu-kvm from Requires + * [dist] prepare spec for arm (aarch64) + * [handler] added whitespace to 9p config for dracut to avoid warnings + * [cli] changed setup in 'ca' + * [cli] new command 'ca' + * [web] transformed 'Sign In' into form again + * [cli] refactored urlwrapper to perl + * [hub] added signed flag + * [hub] added hub.txt + * [cli] fixed lsi command + * [web] fixed toTop buttons + * [web] add show_only_latest_results to query + * [web] jump to first page of history when retriggering jobs + * [web] paginator for job page + * [cli] highlight default selections in kanku-url-wrapper + * [dist] added empty dirs to package list for sle15sp1/opensuse15.1 + * [cli] fix for 404 when fetching asc file in kanku-url-wrapper + * [cli] kanku-url-wrapper detached signature support + * [examples] fixes for KankuFile.openQA + * [examples] added detached gpg sig for KankuFile.openQA + * [web] +/- switches to open/close job/history/guest pages + * [web] fix for 'Restore Defaults' in job page + * [core] port option for SSH role / cleanup die + * [core] fix for default config if no kanku-config.yml found + * [core] fix for loading job config with includes + * [web] fixed link on index page to job_history + * [dist] added kanku-url-wrapper + * [cli] fixed copy/paste error with repo while init + * [util] VM::Image : removed dead variable declaration + * [cli] new implementation of --pool option + * [cli] create kanku config in devel setup + * [cli] init: added --pool option (also configurable) + * [cli] init: package/repository now configurable in ~/kanku/kanku-config.yml + * [cli] cleanup: removed qemu_user from init + * [web] check for running jobs when retrigger + * [util] VM::Console detect failed login + * [util] new grub string for VM::Console + * [web] fix for show_only_latest_results + * [util] fix for new isolinux output in VM::Console + * [setup] fix for net-kanku-ovs.xml.tt2 + * [web] admin switch now in router + * [web] reorder icons of job header in job_history + * [web] changed icon for retrigger in job_history + * [util] cleanup vm templates + * [util] fix machine version + * [handler] fix 9p detection for distros w/o /boot/config* + * [kanku] fixed devel job in KankuFile + * [core] kanku-devel as new default network + * [web] retrigger button in job_history + * [web] basic retrigger feature + * [web] improvments for tooltips + * [dispatcher] get max_processes from K::D::R::HostList + * [worker] croak after 300 sec if fqdn could not be found at startup + * [web] refresh page on back-to-top + * [web] refresh button for job page + * [web] fixed spinner for jobs page + * [web] fixed common search field to update route correctly + * [web] get filter from url in job page + * [web] hide back-to-top tooltips if scroll to top + * [web] removed useless emit + * [cli] --as_admin option for 'rtrigger' command + * [web] basic back-to-top button + * [web] improved routing in job_history paginator + +------------------------------------------------------------------- +Thu Jul 02 15:15:25 UTC 2020 - FSchreiner@suse.com + +- Update to version 0.8.1: + * [web] removed VueX store + * [web] fix url for pwreset + * [web] signup error more verbose + * [web] fix show_comments link in job_history + * [web] show_only_latest_results in route now + * [web] cleanup vue.js templates + * [handler] fix typo K::Handler::Reboot + * [util] fix for colorized 'ip' output in Console->get_ipaddress + * [cli] fix regression in lsi + * [web] routeable job_states in job_history + * [web] routable search fields + * [handler] enhance Reboot by management_interface + * [handler] enhance SetJobContext by management_interface + * [web] moved search-field to common.js + * [web] minor cleanups in js files + * [web] improved tooltips in job_history + * [web] search for guests + * [web] refactoring of search in job/job_history page + * [web] filter for worker + * [web] fixed showDetails in guest page + * [setup] removed setting tcpmss for network setup + * [web] better routing for pagination in job_history + * [notifier] fixed link to job_result in view sendmail + * [web] fix link to vm in guest page + * [notifier] fixed link to job result for nsca + * [handler] changed pod to public OBS api + * [cli] fixed login/logout + * [Util] fix '--color' for older version of 'ip' tool + * [util] disabled colorized output of 'ip' command + * [web] added preferred_extension as field in gui_config + * [util] unify controllers in K::U::VM + * [util] made controller more flexible in K::U::VM + * [web] tooltip for job_history search + * [web] updated fontawesome/bootstrap.bundle + * [web] extended search filter in job_history + * [web] search by job_id in job_history + * [web] various fixes for job_history + * [web] new pager in job_history + * [web] avoid warning by removing distinct + * [web] fixed spacing for messagebox + * [web] fixed typo in JobCard + +------------------------------------------------------------------- +Sun May 03 22:04:13 UTC 2020 - FSchreiner@suse.com + +- Update to version 0.8.0: + * [web] dismissable messagebox + * [web] fix remove button in guest page + * [web] search field for job page + * [schema] added fixtures for database version 15 + * [web] fix regression in 'show only latest results' + * [web] Admin Switch + * [schema] added fixtures for database version 15 + * [web] finish migration to Vue.js/SPA + * [web] vue-ified remaining old school js pages + * [web] admin page vue-ified + +------------------------------------------------------------------- +Fri Apr 17 08:31:24 UTC 2020 - FSchreiner@suse.com + +- Update to version 0.7.2: + * [web] remove console.log + * [web] settings view -> vue + * [web] updated axios and added js maps for axios and bootstrap + * [web] vue-ification of the notify page + * [web] show error message in jobs page if parsing of config fails + * [web] fix for 'Refresh' button in job_history + * [web] improved error handling when job config broken + * [doc] updated path in Development.pod + * [web] fixed slider code in job_history + * [web] better role integration in js (jobs/guests) + * [web] fixes for role handling in REST/dispatcher + * [web] introduction of development mode for Dancer2 + * [web] enforce domain_name prefixed by username if role is user + * [web] removed dummy roles and added active_roles in guest page + * [web] vue-ified guest page + * [core] better app recognition in K::U::IPTables + * [web] cleanup worker_errors and spinner from guest page + * [web] vue-ified job page + * [core] better handling of job config errors + * [core] output of SSH connection problems more verbose + * [dist] rewrite of KankuFile with new YAML::PP features + * [core] Switched to YAML::PP + * [cli] rguest cleanup + * [handler] send_esc in CreateDomain + * [web] removed debug output + * [web] fixed messageboxes when trigger jobs + * [util] be more verbose if prj/pkg not ready yet + * [web] fix refresh button in job_history + * [web] fix buttons for remove-domain + * [web] refresh buttons for job_history/guests/worker + * [dist] included with-spice.tt2 + * [handler] support cursor in CreateDomain installation + * [notify] configurable state maps for K::N::NSCA + * [web] fix duration calculation in job_result + * [web] spinner in job/guest page + * [dist] updated bootstrap 4.1.3 -> 4.4.1 + * [web] limit distinct view of job results to currently configured jobs + * [handler] CreateDomain: fix for colorized grep + * [handler] fix 'undefined' errors in K::H::Reboot + * [handler] suppress errors when grep for 9P in CreateDomain + * [core] fix TO_JSON in obHistorySub + * [cli] improved output of 'kanku lsi' + * [handler] croak if use_9p enabled but no module in guest kernel + +------------------------------------------------------------------- +Fri Feb 14 17:36:42 UTC 2020 - FSchreiner@suse.com + +- Update to version 0.6.10: + * [cli] new commands + * kanku lsi - list images from devel:kanku:images + * kanku rr - remove remote configuration from (local) .kankurc + * [web] fixed checkboxes in job_history + * [web/cli] show only latest result of jobs in job_history + * [cli] fix truncated output in 'rhistory -d' + * [cli] --state filter for rhistory + * [cli] keyring handling for remote login + * Refactoring of image resize code + +------------------------------------------------------------------- +Thu Dec 05 08:23:16 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.9: + * [doc] improved doc for param allow_ip_change in + Kanku::Handler::Reboot + * [handler] removed deprecated FileCopy/FileMove + * [core] Refactoring of cache_dir/use_cache + * [critics] cleanup for K::H::ResizeImage + * [util] fix problem with deleting domain snapshots + * [handler] avoid warnings when disk size uninitialized + +------------------------------------------------------------------- +Fri Nov 22 14:50:40 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.8: + * [handler] use temp file in K::H::ResizeImage + * [handler] ResizeImage - log info about file to resize + * [cli] improved error message for cmd 'rabbit' + * [web] fixed domain name in guest view + * [web] fix ports view + * [web] more logging for guest info + * [web] unique key for guests over multiple servers + * [core] use 'localhost' as fallback hostname in worker daemon + * [cli] exit with 1 if login fails + * [schema] added fixtures for database version 14 + * [dist] backup for kanku-config.yml in distributed setup + * [doc] pod for K::Notifier::Sendmail + * [doc] added links to K::Roles::SSH in ExecuteCommandViaSSH pod + * [cli] output for command 'rcomment' (Dumper) + * [doc] added Kanku::Notifier an Kanku::Util + * [doc] added missing handlers to Kanku::Handler pod + * intial version of release pod + * [dist] p2m -> p2h + * [dist] p2m: use package name as file name + * [dist] initial version of p2m + * [doc] added links to Kanku/Handler.pod + * [handler] docu for additional_disks in CreateDomain + * [cli] added option '--keep_volumes' in destroy command + +------------------------------------------------------------------- +Fri Oct 25 14:23:08 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.7: + * [cli] setup option '--distributed' now alias for '--server' + * [critics] cleanup for more modules + +------------------------------------------------------------------- +Fri Oct 25 13:51:15 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.6: + * [cli] new option "--file" for cli commands + * [cli] new options for "kanku init" + * [dist] fixed installation of bash_completion + * [handler] initial version fo OBSServerFrontendTests + * [critics] cleanup for various modules + +------------------------------------------------------------------- +Sat Oct 19 05:05:45 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.6: + * [handler] ResizeImage: better error handling + * [handler] use_cache attribute for SetJobContext/ResizeImage + * [handler] SetJobContext - added vm_image_file + * [dist] changes smtp_daemon to fit fedora also + +------------------------------------------------------------------- +Wed Oct 16 07:39:16 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.5: + * [dist] enhanced debian deps + +------------------------------------------------------------------- +Sun Oct 13 12:52:24 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.5: + * [dist] packages ready for ubuntu/debian + +------------------------------------------------------------------- +Wed Oct 02 02:49:13 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.4: + * [cli] fix for login to reset tty echo mode + * [dist] DOCDIR more flexible (required for fedora) + +------------------------------------------------------------------- +Fri Sep 27 21:44:02 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.3: + * [util] increased read buffer for uploading images to 16M + * [cli] fix ports for http/https in guest view + * [handler] option 'default_console_timeout' for CreateDomain + * [handler] login before checking for new ip after reboot + * [util] more logging for VM::Console in get_ip_address + * [util] automatic login/logout in get_ip_address on console + * [web] fixed typo in job history + * [dsit] cleanup spec file + * [dist] fixes for bash_completion generation while building + * [dist] added BuildRequires for bash-completion + * [dist] separated apache config for console logs + * [web] link to console log in job history + * [dist] set mime type for logfiles in apache conf + * [cli] include worker name in cli view of job history + * [dist] create bash-completion on the fly while installation + * [templates] updated init template to leap 15.1 + +------------------------------------------------------------------- +Thu Jul 18 09:44:51 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.2: + * [doc] missing options in CreateDomain and deprecation warnings + * [handler] fix template handling + +------------------------------------------------------------------- +Wed Jul 17 12:23:04 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.1: + * [handler] better logging in K::H::Reboot + * [handler] display new ip after K::H::Reboot + +------------------------------------------------------------------- +Tue Jul 02 08:37:20 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.6.1: + * [dist] create /etc/bash_completion.d if not exists + * [dist] KankuFile: removed kanku-server/shortcuts dist&devel + * [dist] new feature: bash_completion + * [dist] added missing Requires for perl(IO::Interactive) in spec + * [dist] lib/Kanku/Cmd -> lib/Kanku/Cli + * [dist] Makefile: added 2 new sections bin/sbin + * [dist] switch to Leap15.1 in KankuFile + * [cli] refactor MooseX::App::Cmd -> MooseX::App + * [core] dispatcher watcher for rabbitmq forked + * [web] worker header now colorized + * [notifier] fix for max description size in NSCA + * [dist] fixed file conflict in spec file + * [dist] added missing files to spec file + * [web] first version of worker page + * [core] changed storing of worker status information in dispatcher + * [cli] new cli command 'rworker' + * [web] REST route /rest/worker/list.json + * [core] store worker's heartbeat information in db + * [schema] new database schema version 14 + * [schema] new database schema version 13 + * [core] worker heartbeat: rabbitmq part for worker/dispatcher + * [core] fault tolerant recv/publish in K::RabbitMQ + * [handler] change in pub key file handling in K::H::PrepareSSH + * [web] set routing_key for K::RabbitMQ + * [cli] change logging of `kanku` command + * [web] refactor of rabbitmq handling for notifications + * [core] refactor of rabbitmq handling for dispatcher/worker + * [handler] root_disk_bus for K::H::CreateDomain + * [testing] various authentication schemas for SSH + * [views] fix for ref sendmail view + * [dist] working test for distributed setup + * [web] improvements for job_result page + * [notifier] NSCA - shorten oversize output and make size configurable + * [notifier] set nsca max length to 4k + * [examples] KankuFile for fedora + * [examples] added rockrobo + * [core] get rid of Data::Dumper + * [core] memory checks for virtual machines + * [dist] improved ubuntu setup + * [dist] cleanup KankuFile + * [notifier] more info in kanku notifications + * [setup] Do not overwrite qemu.conf backup + +------------------------------------------------------------------- +Fri May 24 00:22:15 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.5.9: + * [dist] shadow-utils for fedora + * [setup] install_ubuntu.sh + * fixed KankuFile.kanku-ubuntu to clone kanku + * [setup] create certs befor configuring apache2 + * [setup] improved apache setup with ssl + * [dist] fixed Wants= in service files + * fix VM definition to use virtio for block devices but ide for cdroms + * drop rendernode attribute if we are not enabling gl anyway + * use virtio instead of ide bus for the disk of the VM + +------------------------------------------------------------------- +Mon May 06 13:12:11 UTC 2019 - FSchreiner@suse.com + +- Update to version 0.5.7: + * [dist] intial installation instructions for ubuntu/debian + * [cli] fix in cli guest view for new api data format + * [dist] more perl deps in cpanfile (for ubuntu) + * [examples] updated openQA to ext4 multibuild image + * [handler] various fixes for K8NodePortForward + * [handler] initial version of K::H::K8NodePortForward + * [handler] new host_dir_9p handling + * [util] better logging in Kanku::Util::DoD + * [handler] enable to set ipaddress in SetJobContext + * [dispatcher] improved logging + * [contrib] added redump_perl + * [worker] improved logging + * [core] new attribute 'running_remotely' + * [core] fix parameters for Kanku::RabbitMQ->recv + * [core] fix for Kanku::RabbitMQ->recv + * [core] make rabbitmq more fault tolerant + * [web] suppress domain name prefix in input fields if value is empty + * [util] enable xz for vdi in DoD regex + * [handler] fix doc in ExecuteCommandViaConsole + * added cpanfile for deps in perl + * initial version of KankuFile.kubernetes + * fixes for setup on ubuntu/debian + * fix --memory in 'kanku init' + * removed chown to qemu user for K::U::CurlHttpDownload + * removed Makefile.PL + * [examples] KankuFile starts vagrant + * [handler] CreateDomain - enable root_disk_size for raw.xz + * [handler] root_disk_size with units + * [handler] CreateDomain - fix if pool_name not set + * [handler] fix use pool_name also for cached images in CreateDomain.pm + * [templates] added template with-graphic.tt2 + * [examples] fixed typo immages -> images + * [util] added pool_name to Kanku::Util::VM + * prefer param from config + * [setup] added setup of nested kvm + * [dist] first draft of an apparmor profile for the cli tool + * [notifier] added job duration for NSCA (nagios perf_data) + * [examples] fixed obs-server.yml example job + * [dist] added Kanku/YAML.pm to specfile + * [util] shorter sleep in VM::Console->cmd + * [handler] avoid uninitiliazed warning in CreateDomain + * [util] fix for VM::Console race conditions while cmd execution + * [example] icinga with influxdb (first draft) + * [core] fix for typo in refactor + * [core] refactor YAML handling + * [handler] die if root_disk_size is set for invalid image types in CreateDomain + * [core] disable ActiveChild message in TriggerD + * [notifier] new notifier for nagios NSCA + * [example] initial version of centos example + * [examples] New KankuFile and doc for ubuntu-devel + * [dist] reorder files in spec file + * [examples] removed resizing from KnakuFile.openQA + * [dist] added CleanupIPTables to default remove-domain job + * [doc] fixed markup in README.rabbitmq.md + * [doc] Fix markup in README.setup-ovs.md + * [dist] minor fixes for developer setup + * [handler] new parameter for K::H::CreateDomain : pool_name + * [core] support for xz compressed qcow2 images + * [core] changed default timeout for vm network to 3min (180sec) + * [handler] set timeout for console in K::H::Reboot correctly + * [examples] more mem and start openqa-worker + * [examples] fixing iginga2 + * [core] support download of vmdk.xz files + +------------------------------------------------------------------- +Tue Nov 13 19:33:12 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.5.5.git20181113.495ead4: + * [doc] added more examples to KankuFile.examples/README.md + * [examples] fixed typo in README + * [examples] intial example for icinga2 + * [examples] first version of openQA as an example + * [core] KankuFile more flexible via 'KANKU_CONFIG' env variable + * [handler] global config variable cache_dir for K::H::GIT + * [dist] fix startup deps for kanku-worker.service + * [core] default trigger_user to empty string + * [handler] K::H::PrepareSSH has now global configurable public_key_files option + * [core] config variable cache_dir can now be set globally per server + * [cli] fixed apache mod list for server setup + * [core] fix for global host_interface in K::U::IPTables + * [dist] added lib/Kanku/Test into spec-files %files section + * [cli] new command 'rabbit' to test rabbitmq connection's + * [doc] improvements in README.setup-worker.md + * [doc] improvements in README.setup-ovs.md + * [dist] fixed path to cache directory in dist/kanku-git-cache.conf + * [core] Better exception handling for remote tasks + * [core] Global config for keys in K::Roles::SSH + * [web] fix broken job_history for triggered jobs + * [web] more space before first headline + * [core] global priv/pub key configs for ssh + * [core] make 'host_interface' central configurable + * [dist] check for vhost/user in rabbitmq before adding + * [core] better logging/webview if encryption of password fails + * [dist] added apache mod 'proxy_http' to list of default modules in 'kanku setup --apache' + * [dist] removed client_cert.sh as client certificates are no longer needed by rabbitmq + * [web] dont execute when k is not set + * [web] removed console.log from most js files + * [web] added worker hostname to job headline + * [core] transformation netstat -> ss + * [web] fix problem with undefined job.comments + * [core] added missing 'use Try::Tiny' in Kanku::Job + * [web] do not hide messagebox when websocket connection gets closed + * [web] fix notifications + * [web] remove also class 'alert-danger' from messagebox + * [web] set user_id correct in websocket session object + * [web] fix for 'not started' in job_history + * [triggerd] changed logging for package/repo key to trace + * [web] added color for dispatching in job_history + * [web] refactor job_history to vue.js + * changed title History to Result + * [web] link to job result in job history + * [web] vue.js based job history + * [core] better default for Job's workerinfo + * [web] fix for has_role to default to empty array + * [dist] views are own target in Makefile now + * [web] fix for duplicate entries in job_history + * [core] fix for 'uninitialized value' warnings + * [dist] added 'Wants' rabbitmq-server + * [web] fix for has_role + * [cli] fix for 'kanku status' config problem + * [web] js location cleanup and refactoring + * [web] unified sticky messagebox for js + * [api] improved response message for job trigger in REST API + * [dist] enhanced docu and fixed installation for default job 'remove-domain' + * [web] fixed regression for navbar from bootstrap 4 migration + * [web] removed obsolete ajaxsetup.js + * [web] refactor: own js in namespace kanku + * [web] eleminated function 'toggle_job_result_body' + * [web] replaced toggle_subtask_result_body by toggle_element + * [web] replaced toggle_job_panel_body by toggle_element + * [web] refactored toggle_guest_panel_body to toggle_element + * [dist] new section 'public' in Makefile + * [dist] new example for simple KankuFile + * [dist] added db dir to spec + * [web] bootstrap4 notifications config page + * [utils] wait 10 min to get ip on console + * [web] removed bootstrap 3.3.6 + * [web] update to bootstrap4 and jquery3.3 + * [web] show pwrand in jobhistory if user is Admin + * [web] moved jquery js + * [handler] fix timeout in get_ipaddress + * [handler] allow_ip_change in K:H:Reboot + +------------------------------------------------------------------- +Sun Jul 29 21:31:13 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.5.4.git20180729.c43c600: + * [api] fixed opts when user not logged in + +------------------------------------------------------------------- +Sat Jul 28 10:12:05 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.5.3.git20180727.e36b517: + * [core] fix pwrand in Kanku::Job + * [dist] new section dbfiles for Makefile + * [dist] pwrand feature used in KankuFile + * [handler] randomize passwords in K:H:CreateDomain + * [schema] new database schema version 12 + * [dist] added missing libs to kanku-web + * [dist] fixed job 'kanku-server' in KankuFile + * [dist] fixed 'kanku-devel' in KankuFile + * [doc] removed parameters + * [api] refactoring of Kanku::REST in modules + * [dist] increased verbosity in .perlcriticrc + * [web] beautified user settings page + * [web] refactoring of K::Rest::calc_changes for more efficient code + * [web] refactoring of user specific routes in K::REST + +------------------------------------------------------------------- +Tue Jul 17 22:02:10 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.5.2.git20180717.ecec23a: + * [dist] tmpfiles.d/kanku -> tmpfiles.d/kanku.conf + * [dist] updated README.md + * [web] enhanced user settings page (with VUE.js) + * [dist] fixed indent in Makefile + * [cli] fixed 'setup --standalone' + * [web] fix rendering problem in admin interface + * [core] better logging + * [cli] bugfixes for startvm/stopvm after path refactoring + * [web] prefix domain name if role only User - delete button for user prefixed domains + * [core] refactor to LFS compliant path structure + +------------------------------------------------------------------- +Thu Jun 21 11:31:29 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.4.1.git20180612.0a1a38e: + * [dist] Resize disk in KankuFile to 25G + * [dist] added 'preferred_extension' to job example 'obs-server' + * [web] enforce prefix with username for VMs built by non-admin users + * [doc] share -> $SHARE_DIR in Development.pod + * [web] fix for commenting function in job_history + * [dist] added Const::Fast to requires for kanku-common + * [doc] Updated docs/Development.pod with new path for production and migration status + * [core] changes for Etag for better caching of downloaded images + * [dist] added remove-domain.yml to defaults + * [web] added remove button for guests + * [dist] fixes for Setup and code cleanup + * [dist] new perl critic rules + * [dist] changed KankuFile to leap 15.0 and devel:kanku:* + +------------------------------------------------------------------- +Thu May 24 05:36:21 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.4.0.git20180523.5d5581c: + * [core] cleanup for perlcritic K::H::OBSCheck and K::Util::DoD + * [core] make use_oscrc configurable in KankuFile and changed init template + * [core] removed references to M0ses and updated examples/defaults to Leap 15.0 + +------------------------------------------------------------------- +Tue May 15 06:58:33 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.4.0.git20180514.6a93c44: + * [core] changed default ssl_cacert option for RabbitMQ + * [cli] local logging.conf in users home directory + * [dist] sudoers file now handled by setup + * [cli] interactive mode for devel setup + * [dist] added views/notifiers to spec + * [core] beautified email notifications + * [web] fix args for jobs + * [dist] added 'smtp_daemon' to requires for kanku-web + * [web] fixed problems with deserializer + * [core] fix bug in Kanku::NotifyQueue to request correct config section + * [web] more logging for notification websocket + * [core] fixes for new image formats + * [core] added vdi as image format + * [handler] CreateDomain: reorder installation process + * [handler] CreateDomain: configurable installation process + * [web] better error handling for guest list + * [web] display ajax errors properly + * [core] changes for boot order based on image type + * [core] new 'preferred_extension' options for OBSCheck + * [core] preparation for azure/ec2 + * [core] added vhdfixed + * [handler] ImageDownload: fixed url for history lookup + * [core] added vmdk as supported disk format + * [dist] setup for distributed mode + * [cmd] create ~/.config/osc in devel setup + * [cli] fix connect uri for console + * [dist] added Net::AMQP::RabbitMQ to kanku-cli Requires + * [dist] fix deps for NotifyQueue/* + * [cli] fixes for devel setup after refactoring + * [dist] fix db path and sudoers + * [core] major refactor to use dedicated user for daemons + * [dist] kankurun and apache2 setup + * [handler] ImageDownload - do not try to unpack if src/dst are the same + +------------------------------------------------------------------- +Fri Feb 23 03:19:12 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.9.git20180223.a2e5bb4: + * [web] default sqlite_unicode=1 for server setup to avoid utf8 problems + * [web] changed admin -> user/role list to REST/json + * [web] Workaround for UTF8 double encoding + * [web] fix storage of user_id for javascript in template data + * [cmd] added ExecuteCommandViaSSH in init template + * [cmd] fix for default in ssh command + * [web] avoid implicit creation of logged_in_user + * [web] first working version of job comments in webui + * [schema] final new database schema version 9 + +------------------------------------------------------------------- +Mon Feb 19 21:50:39 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.5.git20180219.240f8be: + * [dist] added missing 'Requires' for kanku-web + * comments in schema JobHistory + * [cmd] fix descriptions for kanku status + * [cmd] add -X to ssh command + * [core] initial version of cli based comments + * [cli] new command dbinit + * [dist] exclude only dirs from file list but keep files + * [cli] refactored regex for libvirtd.conf + * [web] link to gh-pages on index page + * [web] user/role lists in admin interface + * [web] configurable timeout for notification + * [web] better layout for job_history + +------------------------------------------------------------------- +Mon Feb 12 16:38:07 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.5.git20180212.633d114: + * [dist] create default pool automatically in developer setup + * [cli] use public api in template for init + * [handler] new handler ChangeDomainState + * [handler] option 'reuse' for 'additional_disks' in CreateDomain + * [util] fix deletion of volumes VM + * [handler] option 'keep_volumes' to RemoveDomain + * [worker] improve duplicate advertisement handling + * [handler] fix for additional disks uploading from cache + * [handler] fix for database in ImageDownload + * [handler] use url in ImageDownload directly + * [web] added links to documentation in webui + * [handler] added additional_disks option for CreateDomain + * [doc] documented start/enable of kanku-worker + +------------------------------------------------------------------- +Fri Jan 19 01:30:48 UTC 2018 - fschreiner@suse.de + +- Update to version 0.3.4.git20180119.07fc15f: + * [doc] changed file path for doc files + * [doc] initial version of README.setup-worker.md + * [worker] reconnect to rabbitmq if SSL error occurrs + * [core] fixed missing increase for counter if more than 1 kanku-worker defined + * initialize last_job_id to avoid 'uninitialized ..' warnings + * [handler] proper env variables for ExecuteCommandViaSSH + * [web] fix for task notify filters + +------------------------------------------------------------------- +Fri Jan 19 01:05:43 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20180119.07fc15f: + * [doc] changed file path for doc files + +------------------------------------------------------------------- +Fri Jan 19 00:57:01 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20180119.d78a55d: + * [doc] changed file path for doc files + +------------------------------------------------------------------- +Fri Jan 19 00:55:33 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20180119.57b2c8a: + * [doc] changed file path for doc files + +------------------------------------------------------------------- +Fri Jan 19 00:40:19 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20180119.0de131d: + * [doc] initial version of README.setup-worker.md + +------------------------------------------------------------------- +Thu Jan 18 23:39:22 UTC 2018 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20180118.b800cdf: + * [doc] initial version of README.setup-worker.md + * [worker] reconnect to rabbitmq if SSL error occurrs + * [core] fixed missing increase for counter if more than 1 kanku-worker defined + * initialize last_job_id to avoid 'uninitialized ..' warnings + * [handler] proper env variables for ExecuteCommandViaSSH + * [web] fix for task notify filters + * [web] avoid 500 when accepting/declining role reques + * [cli] admin interface for roles requests + * [doc] updated distributions in README.md + +------------------------------------------------------------------- +Mon Dec 11 11:19:19 UTC 2017 - opensuse-packaging@opensuse.org + +- Update to version 0.3.3.git20171211.e68078b: + * [web] avoid 500 when accepting/declining role reques + * [cli] admin interface for roles requests + * [doc] updated distributions in README.md + * Create LICENSE + * Create CONTRIBUTING.md + * [web] ui component to request role changes + * [schema] new database schema version 7 + * [cli] avoid exception in 'kanku status' + * [web] fix for filters if no filter so far submitted + * [core] include hostname in notify for daemon restart + +------------------------------------------------------------------- +Thu Nov 24 12:24:34 UTC 2016 - fschreiner@suse.com + +- Update to version 0.1.8.git20161124.ed94b6d: + * fixed remote login if no kankurc found + * cleanup for K::H::ImageDownload + * cleanup K::Util::VM + * logging console output to file + * added vcpu to init options + * pod docu for Kanku::Handler + * added PERL5LIB to profile get access via perldoc + +------------------------------------------------------------------- +Sat Nov 19 02:56:52 UTC 2016 - opensuse-packaging@opensuse.org + +- Update to version 0.1.7.git20161119.64ee74e: + * more logging in Kanku::Util::VM + * new README.md pointing to projects gh-page + * fixed template problems with cpu type + * make repository for Kanku::Handler::OBSCheck configurable via WebUI + * make ssh auth_type for Kanku::Roles::SSH globally configurable + * fix 'Uninitialzed value' warning in Kanku::Util::VM + * link to home:M0ses:kanku:Images in initial KankuFile + * fixed offline handling with new libvirt based image upload + * new version in spec file + * fixed problem if setup not started as root + +------------------------------------------------------------------- +Thu Jul 28 01:56:49 UTC 2016 - fschreiner@suse.com + +- refactor Cmd::Roles::Remote for autologin + +------------------------------------------------------------------- +Fri Jul 01 2016 Frank Schreiner - 0.1.0-1.0 + +- added handler for openstack + +------------------------------------------------------------------- +Mon Jun 20 2016 Frank Schreiner - 0.0.5-2.0 + +- fixed libvirtd setup for leap + +------------------------------------------------------------------- +Sun Jun 19 2016 Frank Schreiner - 0.0.5-1.0 + +- fixed cache_dir problem with CreateDomain +- fixed specfile problems + +------------------------------------------------------------------- +Sun Jun 19 2016 Frank Schreiner 0.0.4-1.1 + +- fixed version of contrib/port_forward.pl +- RemoveDomain can be disabled now by gui +- download via OBS api +- initial version of openvswitch integration +- moved job template to examples directory +- added mirror mode to GIT handler + +------------------------------------------------------------------- +Fri May 20 2016 Frank Schreiner - 0.0.3-0.1 + +- new cli remote commands +- refactor of parameter handling in UI and scheduler + +------------------------------------------------------------------- +Mon Apr 25 2016 Frank Schreiner - 0.0.2-0.1 + +- introduced offline mode and dbmigreate command + +------------------------------------------------------------------- +Thu Mar 10 2016 Frank Schreiner - 0.0.1-0.1 + +- initial version diff --git a/kanku.spec b/kanku.spec new file mode 100644 index 0000000..b58a3bf --- /dev/null +++ b/kanku.spec @@ -0,0 +1,571 @@ +# +# spec file for package kanku +# +# Copyright (c) 2016 SUSE LINUX GmbH, Nuernberg, Germany. +# +# All modifications and additions to the file contributed by third parties +# remain the property of their copyright owners, unless otherwise agreed +# upon. The license for this file, and modifications and additions to the +# file, is the same license as for the pristine package itself (unless the +# license for the pristine package is not an Open Source License, in which +# case the license is the MIT License). An "Open Source License" is a +# license that conforms to the Open Source Definition (Version 1.9) +# published by the Open Source Initiative. + +# Please submit bugfixes or comments via http://bugs.opensuse.org/ +# +%define kanku_user kankurun +%define kanku_group kanku +%define kanku_vardir /var/lib/kanku/ + +Name: kanku +# Version gets set by obs-service-tar_scm +Version: 0.9.0.git20201205.ed5bac0 +Release: 0 +License: GPL-3.0 +Summary: Development and continuous integration made easy +Url: https://github.com/M0ses/kanku +Group: Productivity/Networking/Web/Utilities +Source: %{name}-%{version}.tar.xz +BuildArch: noarch +BuildRequires: perl-macros +BuildRequires: fdupes +BuildRequires: systemd-rpm-macros + + +# perl requires for %check +BuildRequires: perl(Const::Fast) +BuildRequires: perl(Test::Simple) +BuildRequires: perl(YAML::PP) +BuildRequires: perl(Config::Tiny) +BuildRequires: perl(Path::Class) +BuildRequires: perl(Sys::Virt) +BuildRequires: perl(Moose) +BuildRequires: perl(Log::Log4perl) +BuildRequires: perl(MooseX::App) +BuildRequires: perl(MooseX::Singleton) +BuildRequires: perl(Dancer2::Plugin::REST) +BuildRequires: perl(Expect) +BuildRequires: perl(Net::SSH2) +BuildRequires: perl(Net::IP) +BuildRequires: perl(Net::OBS::Client) +BuildRequires: perl(XML::Structured) +BuildRequires: perl(DBIx::Class::Migration) +BuildRequires: perl(Template) +BuildRequires: perl(Template::Plugin::Filter::ANSIColor) +BuildRequires: perl(Config::Tiny) +BuildRequires: perl(Dancer2::Plugin::DBIC) +BuildRequires: perl(Dancer2::Plugin::Auth::Extensible) +BuildRequires: perl(Dancer2::Plugin::Auth::Extensible::Provider::DBIC) +BuildRequires: perl(File::HomeDir) +BuildRequires: perl(JSON::XS) +BuildRequires: perl(DBIx::Class) +BuildRequires: perl(DBIx::Class::Migration) +BuildRequires: perl(DBIx::Class::Fixtures) +BuildRequires: perl(File::LibMagic) +BuildRequires: perl(IO::Uncompress::UnXz) +BuildRequires: perl(Plack) +BuildRequires: perl(Dancer2) +BuildRequires: perl(Dancer2::Plugin::REST) +BuildRequires: perl(XML::XPath) +BuildRequires: perl(Term::ReadKey) +BuildRequires: perl(IPC::Run) +BuildRequires: perl(IO::Interactive) +# DBD::SQLite is also provided by perl-DBD-SQLite-Amalgamation +# but perl-DBD-SQLite-Amalgamation is breaks with SQL syntax errors +# at job_histroy_sub table +BuildRequires: perl-DBD-SQLite +BuildRequires: perl(LWP::UserAgent) +BuildRequires: perl(LWP::Protocol::https) +BuildRequires: perl(Mail::Sendmail) +BuildRequires: perl(Archive::Cpio) +BuildRequires: perl(Dancer2) +BuildRequires: perl(Dancer2::Plugin) +BuildRequires: perl(Dancer2::Plugin::REST) +BuildRequires: perl(Dancer2::Plugin::DBIC) +BuildRequires: perl(Dancer2::Plugin::WebSocket) +BuildRequires: perl(Dancer2::Plugin::Auth::Extensible) +BuildRequires: perl(Net::AMQP::RabbitMQ) +BuildRequires: perl(UUID) +BuildRequires: libvirt-daemon +BuildRequires: desktop-file-utils +BuildRequires: shared-mime-info + + +BuildRoot: %{_tmppath}/%{name}-%{version}-build + +Requires: kanku-cli +Requires: kanku-web +Requires: kanku-worker +Requires: kanku-scheduler +Requires: kanku-dispatcher +Requires: kanku-triggerd + +%description +kanku is designed to give you a better integration of your kiwi images built +by the Open Build Service (OBS) in your development and testing workflow. + +It provides a framework for simple automation of complex setups, +e.g. to prepare your development environment or run simple tests. + +%prep +%setup -q + +%build +/bin/true + +%install +make install DESTDIR=%{buildroot} DOCDIR=%{_defaultdocdir}/kanku/ +%fdupes %{buildroot}/opt/kanku/share +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rckanku-web +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rckanku-worker +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rckanku-dispatcher +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rckanku-scheduler +ln -s /usr/sbin/service %{buildroot}%{_sbindir}/rckanku-triggerd + +%check +# FIXME +#prove -Ilib t/000_use.t + +%files +%exclude /etc +%exclude /usr + +%package common +Summary: Common files for kanku + +Recommends: osc +Recommends: perl(IO::Uncompress::UnXz) +Recommends: apache2 +Recommends: perl(YAML::PP::LibYAML) +Requires: libvirt-daemon-qemu libvirt-daemon-config-network libvirt-daemon-config-nwfilter +Requires: sudo +Requires: perl(DBIx::Class::Fixtures) +Requires: perl(Test::Simple) +Requires: perl(YAML::PP) +Requires: perl(Config::Tiny) +Requires: perl(Path::Class) +Requires: perl(Sys::Virt) +Requires: perl(Moose) +Requires: perl(MooseX::App) +Requires: perl(Dancer2::Plugin::REST) +Requires: perl(MooseX::Singleton) +Requires: perl(Expect) +Requires: perl(Net::SSH2) +Requires: perl(Net::IP) +Requires: perl(Net::OBS::Client) +Requires: perl(XML::Structured) +Requires: perl(DBIx::Class::Migration) +Requires: perl(Template) +Requires: perl(Log::Log4perl) +Requires: perl(Config::Tiny) +Requires: perl(Dancer2::Plugin::DBIC) +Requires: perl(Dancer2::Plugin::Auth::Extensible) +Requires: perl(Dancer2::Plugin::Auth::Extensible::Provider::DBIC) +Requires: perl(File::HomeDir) +Requires: perl(Template::Plugin::Filter::ANSIColor) +Requires: perl(JSON::XS) +Requires: perl(DBIx::Class) +Requires: perl(DBIx::Class::Migration) +Requires: perl(Template::Plugin::Filter::ANSIColor) +Requires: perl(File::LibMagic) +Requires: perl(IO::Uncompress::UnXz) +Requires: perl-Plack +Requires: perl(Dancer2) +Requires: perl(Dancer2::Plugin::REST) +Requires: perl(XML::XPath) +Requires: perl(Term::ReadKey) +Requires: perl(IPC::Run) +Requires: perl(Const::Fast) +# DBD::SQLite is also provided by perl-DBD-SQLite-Amalgamation +# but perl-DBD-SQLite-Amalgamation is breaks with SQL syntax errors +# at job_histroy_sub table +Requires: perl-DBD-SQLite +Requires: perl(LWP::Protocol::https) +Requires: perl(Mail::Sendmail) +Requires: perl(Archive::Cpio) +Requires: perl(UUID) +Requires: logrotate + +Conflicts: perl-DBD-SQLite-Amalgamation + +%description common +TODO: + add a useful description + +%post common +%tmpfiles_create %_tmpfilesdir/kanku.conf + +%files common +%defattr(-,root,root) +%doc README.md TODO + +%dir /usr/lib/kanku +%dir /usr/lib/kanku/lib +%dir /usr/lib/kanku/lib/Kanku +%dir /usr/lib/kanku/lib/Kanku/Daemon + +# share contains database related stuff +%dir /usr/share/kanku +/usr/share/kanku/fixtures +/usr/share/kanku/migrations + +%attr(755,root,root) /usr/bin/kanku +%attr(755,root,root) /usr/lib/kanku/network-setup.pl + +%dir /etc/kanku +%ghost /etc/kanku/config.yml +%dir /etc/kanku/logging/ +%config(noreplace) /etc/kanku/logging/console.conf +%config(noreplace) /etc/kanku/logging/network-setup.conf +%config(noreplace) /etc/kanku/logging/default.conf + +%dir /etc/kanku/templates +%dir /etc/kanku/templates/cmd +%dir /etc/kanku/templates/cmd/setup +%config /etc/kanku/templates/default-vm.tt2 +%config /etc/kanku/templates/with-spice.tt2 +%config /etc/kanku/templates/cmd/init.tt2 +%config /etc/kanku/templates/cmd/setup/* +%dir /etc/kanku/templates/examples-vm/ +%config /etc/kanku/templates/examples-vm/obs-server-26.tt2 +%config /etc/kanku/templates/examples-vm/sles11sp3.tt2 +%config /etc/kanku/templates/examples-vm/obs-server.tt2 + +%dir /etc/kanku/jobs +%dir /etc/kanku/jobs/examples +%config /etc/kanku/jobs/examples/obs-server.yml +%config /etc/kanku/jobs/examples/obs-server-26.yml +%config /etc/kanku/jobs/examples/sles11sp3.yml + +# %exclude %dir /etc/sudoers.d +# %ghost /etc/sudoers.d/kanku + +%exclude %dir /usr +%exclude %dir /usr/bin/ +%exclude %dir /usr/sbin/ +%exclude %dir /usr/share/ +%exclude %dir /usr/lib/ + +%exclude %dir /etc/profile.d +%config /etc/profile.d/kanku.sh + +%exclude %dir /etc/logrotate.d/ +%config /etc/logrotate.d/kanku-common + +%exclude %dir %_tmpfilesdir +%_tmpfilesdir/kanku.conf + +%dir /usr/lib/kanku/lib/Kanku/NotifyQueue/ +/usr/lib/kanku/lib/Kanku/NotifyQueue/*.pm +/usr/lib/kanku/lib/Kanku/Handler/ +/usr/lib/kanku/lib/Kanku/Roles/ +/usr/lib/kanku/lib/Kanku/Schema/ +/usr/lib/kanku/lib/Kanku/Setup/ +/usr/lib/kanku/lib/Kanku/Util/ +/usr/lib/kanku/lib/Kanku/Util.pm +/usr/lib/kanku/lib/Kanku/Task/ +/usr/lib/kanku/lib/OpenStack/ +/usr/lib/kanku/lib/Kanku/Config.pm +/usr/lib/kanku/lib/Kanku/Handler.pod +/usr/lib/kanku/lib/Kanku/Notifier +/usr/lib/kanku/lib/Kanku/Job.pm +/usr/lib/kanku/lib/Kanku/RabbitMQ.pm +/usr/lib/kanku/lib/Kanku/Schema.pm +/usr/lib/kanku/lib/Kanku/JobList.pm +/usr/lib/kanku/lib/Kanku/Task.pm +/usr/lib/kanku/lib/Kanku/Airbrake.pm +/usr/lib/kanku/lib/Kanku/NotifyQueue.pm +/usr/lib/kanku/lib/Kanku/GPG.pm +/usr/lib/kanku/lib/Kanku/YAML.pm + +%dir /usr/lib/kanku/lib/Kanku/WebSocket +/usr/lib/kanku/lib/Kanku/WebSocket/Notification.pm +/usr/lib/kanku/lib/Kanku/WebSocket/Session.pm + +%dir /usr/lib/kanku/lib/Kanku/Airbrake +/usr/lib/kanku/lib/Kanku/Airbrake/Dummy.pm + +%dir /usr/lib/kanku/lib/Kanku/LibVirt +/usr/lib/kanku/lib/Kanku/LibVirt/HostList.pm + +%dir /usr/lib/kanku/lib/Kanku/Dispatch/ +/usr/lib/kanku/lib/Kanku/Dispatch/Local.pm + +/usr/lib/kanku/lib/Kanku/Test/ + +%package cli +Summary: Command line client for kanku +Requires: kanku-common +Requires: libvirt-client +Requires(pre): libvirt-daemon libvirt-daemon-driver-qemu +Requires(pre): sudo +Requires: perl(Net::AMQP::RabbitMQ) +Requires: perl(IO::Interactive) +Requires: (perl(Passwd::Keyring::KDEWallet) if kwalletd5) +Requires: (perl(Passwd::Keyring::Gnome) if gnome-keyring) + +%description cli +Command line client for kanku, mainly used for setup tasks +and in developer mode + +%files cli +%dir /usr/share/kanku/views/cli/ +%dir /usr/share/kanku/views/cli/rjob +/usr/share/kanku/views/cli/*.tt +/usr/share/kanku/views/cli/rjob/*.tt +/usr/lib/kanku/lib/Kanku/Cli/ +/usr/lib/kanku/lib/Kanku/Cli.pm +/etc/bash_completion.d/kanku.sh + +%package common-server +Summary: Common server files or settings for kanku +Requires(pre): libvirt-daemon libvirt-daemon-driver-qemu + +%if 0%{?fedora} +Requires(pre): shadow-utils +%else +Requires(pre): shadow +%endif + +%description common-server +This package contains common server files, settings and dependencies +for the kanku server components like kanku-worker, kanku-dispatcher, +kanku-web, kanku-scheduler and kanku-triggerd + +%pre common-server +getent group %{kanku_group} >/dev/null || groupadd -r %{kanku_group} +getent passwd %{kanku_user} >/dev/null || useradd -r -g %{kanku_group} -G libvirt -d %{kanku_vardir} -s /sbin/nologin -c "user for kanku" %{kanku_user} +exit 0 + +%files common-server +%defattr(-, root, root) +%dir %attr(755, kankurun, kanku) /var/log/kanku +%dir %attr(755, kankurun, kanku) /var/lib/kanku +%dir %attr(755, kankurun, kanku) /var/lib/kanku/db +%dir %attr(755, kankurun, kanku) /var/cache/kanku +%ghost %dir %attr(755, kankurun, kanku) /run/kanku + +%package web +Summary: WebUI for kanku +Requires: kanku-common +Requires: kanku-common-server +Requires: perl(Dancer2::Plugin::WebSocket) +Requires: perl(Twiggy) +Requires: perl(Mail::Message::Body::String) +Requires: perl(Mail::Transport::Send) +Requires: perl(Net::AMQP::RabbitMQ) +Requires: perl(Template::Plugin::JSON::Escape) +Requires: perl(UUID) +%if 0%{?fedora} +Requires: server(smtp) +%else +Requires: smtp_daemon +%endif + +%description web +TODO: + add a useful description + +%post web +%systemd_post kanku-web.service + +%preun web +%systemd_preun kanku-web.service + +%postun web +%systemd_postun_with_restart kanku-web.service + +%files web +%attr(755,root,root) /usr/lib/kanku/kanku-app.psgi +%dir %attr(755, kankurun, kanku) /var/lib/kanku/sessions +%dir /usr/share/kanku/views/ +%{_unitdir}/kanku-web.service +%{_sbindir}/rckanku-web +/usr/share/kanku/views/admin.tt +/usr/share/kanku/views/guest.tt +/usr/share/kanku/views/index.tt +/usr/share/kanku/views/job.tt +/usr/share/kanku/views/notify.tt +/usr/share/kanku/views/notify_disabled.tt +/usr/share/kanku/views/job_history.tt +/usr/share/kanku/views/job_result.tt +%dir /usr/share/kanku/views/layouts +/usr/share/kanku/views/layouts/main.tt +/usr/share/kanku/views/login.tt +%dir /usr/share/kanku/views/login +/usr/share/kanku/views/login/denied.tt +/usr/share/kanku/views/admin.tt +/usr/share/kanku/views/settings.tt +/usr/share/kanku/views/signup.tt +/usr/share/kanku/views/pwreset.tt +/usr/share/kanku/views/reset_password.tt +/usr/share/kanku/views/worker.tt + +%dir /etc/apache2 +%dir /etc/apache2/conf.d +%ghost %config (noreplace) /etc/apache2/conf.d/kanku.conf +%config /etc/kanku/jobs/remove-domain.yml + +# public contains css/js/bootstrap/jquery etc +/usr/share/kanku/public/ +/usr/lib/kanku/lib/Kanku.pm +/usr/lib/kanku/lib/Kanku/REST.pm +/usr/lib/kanku/lib/Kanku/REST + +%package worker +Summary: Worker daemon for kanku + +Requires: kanku-common +Requires: kanku-common-server +Requires: perl(Net::AMQP::RabbitMQ) +Requires: perl(UUID) +Requires: perl(Sys::CPU) +Requires: perl(Sys::LoadAvg) +Requires: perl(Sys::MemInfo) +# apache2 is only needed for delivering console logs +Recommends: apache2 + +%description worker +A simple remote worker for kanku based on RabbitMQ + +%post worker +%systemd_post kanku-worker.service + +%preun worker +%systemd_preun kanku-worker.service + +%postun worker +%systemd_postun_with_restart kanku-worker.service + +%files worker +/etc/apache2/conf.d/kanku-worker.conf +%{_unitdir}/kanku-worker.service +%{_sbindir}/rckanku-worker +%{_sbindir}/kanku-worker +/usr/lib/kanku/lib/Kanku/Daemon/Worker.pm + +%package dispatcher +Summary: Dispatcher daemon for kanku + +Requires: kanku-common +Requires: kanku-common-server +Requires: perl(Net::AMQP::RabbitMQ) +Requires(pre): sudo +Recommends: rabbitmq-server + +%description dispatcher +A simple dispatcher for kanku based on RabbitMQ + +%post dispatcher +%systemd_post kanku-dispatcher.service + +%preun dispatcher +%systemd_preun kanku-dispatcher.service + +%postun dispatcher +%systemd_postun_with_restart kanku-dispatcher.service + +%files dispatcher +%{_unitdir}/kanku-dispatcher.service +%{_sbindir}/rckanku-dispatcher +%{_sbindir}/kanku-dispatcher +/usr/lib/kanku/lib/Kanku/Daemon/Dispatcher.pm +/usr/lib/kanku/lib/Kanku/Dispatch/RabbitMQ.pm +/usr/share/kanku/views/notifier/ + +%package scheduler +Summary: Scheduler daemon for kanku +Requires: kanku-common +Requires: kanku-common-server + +%description scheduler +A simple scheduler for kanku based on RabbitMQ + +%post scheduler +%systemd_post kanku-scheduler.service + +%preun scheduler +%systemd_preun kanku-scheduler.service + +%postun scheduler +%systemd_postun_with_restart kanku-scheduler.service + +%files scheduler +%attr(755,root,root) %{_sbindir}/kanku-scheduler +/usr/lib/kanku/lib/Kanku/Daemon/Scheduler.pm +%{_unitdir}/kanku-scheduler.service +%{_sbindir}/rckanku-scheduler + +%package triggerd +Summary: Trigger daemon for kanku +Requires: kanku-common +Requires: kanku-common-server + +%description triggerd +A simple triggerd for kanku based on RabbitMQ + +%post triggerd +%systemd_post kanku-triggerd.service + +%preun triggerd +%systemd_preun kanku-triggerd.service + +%postun triggerd +%systemd_postun_with_restart kanku-triggerd.service + +%files triggerd +%attr(755,root,root) %{_sbindir}/kanku-triggerd +%{_unitdir}/kanku-triggerd.service +%{_sbindir}/rckanku-triggerd +%dir /usr/lib/kanku/lib/Kanku/Listener +/usr/lib/kanku/lib/Kanku/Daemon/TriggerD.pm +/usr/lib/kanku/lib/Kanku/Listener/RabbitMQ.pm + + +%package doc +Summary: Documentation files for kanku + +%description doc +This package contains the documentation files for kanku + +%files doc +%{_defaultdocdir}/kanku/ + +%package urlwrapper +Summary: Url wrapper for kanku:// urls +Requires: kanku-cli +Requires: desktop-file-utils +Requires: shared-mime-info +Obsoletes: kanku-url-wrapper + +%description urlwrapper +A URL wrapper to start kanku from kanku:// urls in the browser + +%post urlwrapper +update-mime-database /usr/share/mime +update-desktop-database + +%preun urlwrapper +update-mime-database /usr/share/mime +update-desktop-database + +%postun urlwrapper +update-mime-database /usr/share/mime +update-desktop-database + +%files urlwrapper +%attr(644,root,root) /usr/share/applications/kanku-urlwrapper.desktop +%attr(644,root,root) /usr/share/mime/packages/kanku.xml +%dir /usr/share/icons/hicolor +%dir /usr/share/icons/hicolor/32x32 +%dir /usr/share/icons/hicolor/32x32/apps +/usr/share/icons/hicolor/32x32/apps/kanku.png +%dir /usr/share/icons/hicolor/48x48 +%dir /usr/share/icons/hicolor/48x48/apps +/usr/share/icons/hicolor/48x48/apps/kanku.png +%dir /usr/share/icons/hicolor/64x64 +%dir /usr/share/icons/hicolor/64x64/apps +/usr/share/icons/hicolor/64x64/apps/kanku.png + +%changelog