After removing the changes to /etc/default/ngcp-panel in a previous commit, the
.preinst script's only purpose is to create /tmp/ngcp, which can be better done
with tmpfiles.d, and so this script can be removed.
(The original idea and plan is from Alex Lutay, cheers to him).
Change-Id: I1882eb01339f9389c9e789bc4ff3e4c168a2384c
Since we're moving to systemd, these files are not needed anymore.
Other than controlling how to start the daemon, that we want to get rid of,
/etc/default/ngcp-panel only contains NPROC. Moved now to the systemd-unit
file, so it can be overriden if needed.
Change-Id: Ibfd917431663dee53a4a26a9c69373cf3449e2f4
The manual says:
<https://www.freedesktop.org/software/systemd/man/systemd.exec.html>
> ... In case of RuntimeDirectory= the lowest
> subdirectories are removed when the unit is stopped.
Which cause a race condition on ngcp-panel stop, as other services (like
ngcpcfg-api) stores their pid/socket files inside the same folder:
> root@web01a:~# ls -la /var/run/fastcgi/
> total 4
> drwxr-xr-x 2 www-data www-data 80 Mar 13 08:54 .
> drwxr-xr-x 30 root root 1180 Mar 13 09:00 ..
> -rw-r--r-- 1 root root 6 Mar 13 08:54 ngcpcfg-api.pid
> srwxrwxrwx 1 root root 0 Mar 13 08:54 ngcpcfg-api.sock
The option 'RuntimeDirectoryPreserve=yes' will preserve /var/run/fastcgi/.
Change-Id: Id338f7779339fcd2a39cbfb22f4cdd3913ecd199
It was added in commit 59a75ed63e
Author: Andreas Granig <agranig@sipwise.com>
Date: Tue Nov 26 13:45:05 2013 +0100
MT#5103 Add basic call distribution graph.
Still needs date picker to limit range.
We can remove it as ngcp-panel doesn't provide 'distribution graph' anymore.
P.S. it is noticed due to review https://gerrit.mgm.sipwise.com/#/c/17987/
as file /usr/share/perl5/Number/Phone/UK/Data.pm is huge (full of binary data).
Change-Id: I887153e63421e4515984c0b4597d51bd915d77b3
* /api/voicemailrecordings now support mp3 and ogg formats
when specified as query parameters: e.g. ?format=mp3
* add dependency to libsox-fmt-mp3
Change-Id: I0815be013814edc42559c75e26d64b537507334d
- Bump debhelper compatibility version 10.
- Switch from Priority extra to optional.
- Update debian/.gitignore file.
Change-Id: I74650e44243b3049843962a3c26b5751ada4268b
was used to allow specifying a custom config file in order
to quickly test manually with a different db
Change-Id: I03db8ca922037f9d342a81236e6dfbfe79575c36
* When enabling password_sip/web_validate, panel checks password
against username (web and sip, respectively), and runs it through
cracklib to enforce a reasonably strong password.
* Add auto-generate buttons next to web/sip password.
Change-Id: I11f5f6c2d69dc5658f298094f7d17d26d0a26ee1
We should pass the interpreter executable as --exec and the actual
script to run as --startas, as documented in the man page. Otherwise
start-stop-daemon will not be able to match the executable currently
running, and will consider that the daemon is *not* running. Use
--oknodo to handle already running daemons.
Use start-stop-daemon instead of stopping the daemon by hand.
Change-Id: I026fda70dfaeb259afe5c7905c612dce6affd46e
The old code removed PID file before the check of starting ngcp-panel,
as a result in the worst case it removes PIDFILE for 'just' started ngcp-panel.
We should ensure no ngcp-panel is being started before removing PIDFILE.
Change-Id: I10e601639b81d5837d132ee78a5945419fde81d5
- read key from specific config file
- key is hex encoded
+ fix: add libcryptx-perl as dependency (actually dep of libcrypt-jwt-perl)
+ fix: typo in perl (comma instead of assignment)
+ fix: chomp any preceeding newlines from jwt_secret
Change-Id: I6c6bd4dc0d7fa7fa43868afb13b4d8d838d90564
Lintian doesn't report warning anymore here:
> Victor Seva: yes. The sources seems to be there. js min and non min. dpkg seems to get smarter over the time
Change-Id: I19be4f75def65822cbd5c67c684e8c1806b6b659
We use this to show monitoring data from within the panel. This will
replace the old graphs generated from RRD files.
Change-Id: I381db4e67d11399da9646209d4c8f960551d2422
This package is not available on CE systems, so we cannot have a hard
dependency. The code already handles loading the module conditionally
if it is available.
Change-Id: Ibb3566cbd999c230cd7cdbc5f79dc7e377281330
These modules used to be incorrectly shipped in the ngcp-libinewrate0
package, which the panel didn't depend on, and were only present because
other parts of the system were pulling that in. In any case we should
not need to depend on specific SONAMEs for shared libraries, so the perl
bindings are now shipped on their own package.
Reintroduce reverted change.
Change-Id: Ia6416fdbf8337549a146ae15ce0dd3f77e720ff3
These modules used to be incorrectly shipped in the ngcp-libinewrate0
package, which the panel didn't depend on, and were only present because
other parts of the system were pulling that in. In any case we should
not need to depend on specific SONAMEs for shared libraries, so the perl
bindings are now shipped on their own package.
Change-Id: Ia4ac5258f4dc019fecd1f138d7c0e6f6390296d0
Took the Utils/SOAP.pm from ossbss Backend.pm and adapted
for ngcp-panel usage to properly type the response elements
in accordance to the WSDL.
Change-Id: I8d8011b5ff256c65469a006d4e0c76467a2325a5
For the migration of the admin pwd, the logic is as follows:
1. If the admin has a bcrypt password already, use this
2. If not, perform auth via md5, then clear the md5 column
and write a salted bcrypt hash instead.
For dropping the ssl client cert, we simply not store anymore
the client certificate in the DB. As a result, you cannot
download the certs (pem, p12) after creation anymore, so
we immediately download the two certs in a zip file after
creation.
A cost of 13 takes 500ms on an i7-5500U CPU @ 2.40GHz, which
seems to be a reasonable value.
Change-Id: I1ce21321c58d8c57d7ddce1541995f64821b0053
Fixes lintian issue:
| E: ngcp-panel: init.d-script-needs-depends-on-lsb-base etc/init.d/ngcp-panel (line 15)
We don't ship a systemd unit yet, so even when using systemd
(which we don't even support yet, though let's make lintian
happy) the init script is being used. Then we need to have
lsb-base present since we use its /lib/lsb/init-functions in
ngcp-panel's sysv init script. JFTR, on sysv systems lsb-base is
present by default, though on systemd-only systems lsb-base
doesn't necessarily need to be present.
Change-Id: I1ee50b952d535548d97c3c03f00cf2c77695c8be
Until all LI vendors have migrated to REST later this year,
re-introduce a SOAP API for interceptions.
Change-Id: Ie8ef28e745b9f240547c3b6eb99fae4871287308
Build-Depend on libmodule-build-perl which is not part of the perl
distribution anymore, or the perl versions that provided the module.
Change-Id: I0ddace6ba4e4810aa02f102db90e4d4d759da34c
source: https://github.com/SVG-Edit/svgedit.git
commit: e35413c5ad483b8e471f2d7c1c21b5c0fabb12a6
taken only LICENSE and /editor
Change-Id: I82ef84ce0795b8edc9b272b6296782726d0cd00f
We are using these modules explicitly, so do not rely on other modules
depending on them transitively, do so directly.
Change-Id: I2a22a6b56f498bba3e3c246298f5359fab2cff7f
The codebase does not use autodie directly, it does indirectly via
Sipwise::Base, and the autodie module is part of the standard perl
distribution anyway. TryCatch is imported via Sipwise::Base, and
that depends on it. The rest are not used anymore in the codebase.
Change-Id: Ic08e246cc60d7d151381dff39e0eba517a492e06
drop "inversion of control" loading them
this way we can remove MooseX::Object::Pluggable completely, which did
a filesystem search on _every_ panel page called.
Change-Id: If22dbb1a5a2ab24dee7af68a0085072ab1b2b855
When activated for all or selected domains, inbound registrations
will be rejected or fake-replied, inbound calls will be rejected
for non-priorized subscribers unless destination is emergency call
or priorized subscriber, and running calls not involving emergency
calls or priorized subscribers will be torn down.
Change-Id: Id1ae0b71f777eb2c45e60bac08c7c97ae55317e7
We do not have package libgd-gd2-perl in Jessie anymore,
it is available as libgd-perl nowadays.
New installation works because libgd-perl provides libgd-gd2-perl:
>> apt-cache show libgd-perl
> Package: libgd-perl
> Source: libgd-perl (2.53-1)
> Version: 2.53-1+b1
> Provides: libgd-gd2-noxpm-perl, libgd-gd2-perl
While PRO upgrade failed because "apt-get dist-upgrade" decided to
remove ngcp-panel as cannot resolve dependencies:
> The following packages will be REMOVED:
> cpp-4.7 gcc-4.7 gcc-4.7-base libaudit0 libfile-spec-perl libgd-gd2-perl
> libperl5.14 libsnmp15 ngcp-ngcp-pro ngcp-panel ngcp-services-pro
In the same time 'aptitude dist-upgrade' solves this problems well.
What is strange here 'apt-get dist-upgrade' in CE works well
with the same ngcp-panel 0_o , I suspect removing libsnmp15
is affected apt-get logic here somehow.
Change-Id: I4533a9a50b3bde1c23e4183f0eb5edaa0ff77a07
share/static/js/libs/stanzaio.bundle.js was integrated in commit
d1bcc6663 back in January 2014, sadly without details about which
version, so let's add its most recent version v7.3.4 (ftr: there
doesn't even exist a release download for stanzaio for the time
around January 2014 on Github any longer).
All the other lintian source-is-missing complains seem to be false
positives (thanks Gerhard for investigating), so let's also
ignore them.
Change-Id: Ib156d050d236f46b87221e04d0fd55d2c4d51a03
Based on abandoned patchset 6 of review 2924:
https://gerrit.mgm.sipwise.com/#/c/2924/
Copy necessary dependencies from REST API tests to package ngcp-panel.
Rene pointed out that all of them are necessary there anyway.
It worked previously because other packages installed them.
Change-Id: Ibccf4bee79a0a026558711231fd8f34ee405d54e
Web developers must use Depends to be sure packages are
installed on new/upgraded system. Also, each test
will have separate control file in appropriate test folder,
see the ticket MT#14585 for more information.
+ "wrap-and-sort -a"
Change-Id: Ie5ef4353269b65d4db5ad763e7b66106a9e2e734
+profile package details view to overlook associations
+voucher count is properly checked before deleting a package
+package_id filters for /api/customers and /api/vouchers
+Fake::Time replaced by Time::Warp for balance_interval tests
+cleanup
Change-Id: Idc34220a9d29c115453eeee2907e70a71cf9f0cc
+ synchronized contract balance catchup
+ balance interval resizing upon profile package transitions
+ dynamic interval length, interval start, carry-over propagation, ..
+ end-of-month 'preserve' mode correction for strictly aligned month intervals for start_mode=customer "create" timestamp
+ new api/balanceintervals resource to inspect contracts' balance interval histories
+ updated affected panel UI controllers
+ test case with time warps using Time::Fake
caveats:
- creating an invoice for a given 'period' (month) has to be refactored to select a disitnct balance interval. right now it takes the last interval in the month specified.
- generate_invoice.pl is broken and needs a major refactoring
Change-Id: I7bb54a83b76e510b1baa573a986d05400a7fec1e
-properly validate billing mapping intervals
-api/contracts and api/customers complete
+the problem with updating the "prepaid" preference remains at the moment
+billing_mappings field contains future (editable) mappings only, the full schedule is given in a separate field
+hal-links to all occurring billing profiles and networks
-extended tests: api-customer.t and api-contract.t
-api-billingnetworks.t test
-billing networks panel controller
+search by enclosed IP address
-panel UIs for billing networks, customers, contracts
+past billing mapping intervals that cannot be edited are displayed by a seperate hfh "block" part of the billing_profiles repeatable
-profile packages api, UI
+terminating billing profiles (MT#8645) will be broken
+fixed now: profile cannot be terminated unless there are:
-zero non-terminated customers, whose mappings contain the profile with future or open end
-zero profile packages, that link to the profile in either one of their initial-, underrun- or topup profile sets
+panel edit should work, termination wip
+topup_profiles w/o amounts
+contracts/customers API profile_package_id field:
+apply the package's initial profiles
+api/customer and api/contract profile definition modes (id/profiles/package)
+api OK, api-customer.t tests
+customer and contract panel UI with selector to specify actual billing mapping, schedule or profile package (same as api)
+terminate logic harmonized: profiles, networks, packages
+api tests updated
+prepare for merging: cleanup, enable tests
Change-Id: I6c0dec72f490b5731fc673cd393d6aeb08dd8143
To avoid warning: Use of uninitialized value $_[0] in join or string at /usr/lib/perl5/File/Spec/Unix.pm line 92
Change-Id: I4a281cd09dc069919c5d482f93efd6b1caaaeda7
Since we remove the /etc/nginx/sites-enabled/default file only in
the postinst script it's ought to be enough to depend on the
nginx-common package instead of pre-dependening on it.
This should fix our failing piuparts runs (where Pre-Dependencies
aren't handled properly yet).
Change-Id: Idebc6305cd302db16d23a03df64e266a026201a4
Dependency on libcatalyst-plugin-email-perl was removed already.
https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=748849 ->
libemail-send-perl was removed from unstable recently.
As libemail-send-perl is deprecated upstream, we should use
libemail-sender-perl instead and a dependency on
libemail-sender-perl was introduced already with git commit
1fd67eb3
This partially reverts commit f01d21a3de.
Still needed:
| Can't locate JSON/Tiny/Subclassable.pm in @INC (@INC contains: /etc/perl /usr/local/lib/perl/5.14.2 /usr/local/share/perl/5.14.2 /usr/lib/perl5 /usr/share/perl5 /usr/lib/perl/5.14 /usr/share/perl/5.14 /usr/local/lib/site_perl . CODE(0x43f0340) CODE(0x43f0250)) at /usr/share/perl5/Module/Runtime.pm line 317, <DATA> line 290.
| at /usr/lib/perl5/Moose.pm line 63
| Compilation failed in require at /usr/share/perl5/NGCP/Panel/Role/API.pm line 16, <DATA> line 290.
But not needed in Build-Depends, so only keep it in Depends.
Text of the message should be conformed with sales. Also it would be nice to apply templates to email body.
Only smarthost is working, spent 3 hours with exim debug and while left with smarthost. Attachments and so one looks good.
Removed fake data.
Fix data parameter. Tested data and client contracts.
Otherwise we might run into situations like that:
| Removing ngcp-schema ...
| Force-reloading ngcp-panel to handle schema changes
| [....] Restarting web application: ngcp-panel not runningstart-stop-daemon: unable to stat /usr/share/ngcp-panel/ngcp_panel_fastcgi.pl (No such file or directory)
| [FAIL] error ... failed!
| failed!
| invoke-rc.d: initscript ngcp-panel, action "force-reload" failed.