Beefy Boxes and Bandwidth Generously Provided by pair Networks
Pathologically Eclectic Rubbish Lister
 
PerlMonks  

Re^2: How to deliver a perl application to a client?

by xcodejoy (Initiate)
on Oct 20, 2019 at 18:24 UTC ( #11107730=note: print w/replies, xml ) Need Help??


in reply to Re: How to deliver a perl application to a client?
in thread How to deliver a perl application to a client?

### You need to tell me about the specifics of the Perl application and the operating system on the production system for further information.

System: FreeBSD or some Linux (depends on client).

My script will collect and store data. It can be run both via cron and as service.

  • Comment on Re^2: How to deliver a perl application to a client?

Replies are listed 'Best First'.
Re^3: How to deliver a perl application to a client?
by daxim (Curate) on Oct 20, 2019 at 19:16 UTC
    I have read the sibling comment thread. Using perlbrew/cpanm on the production system is not a good idea, IMO.
    • They are tools geared toward development; they are easy to use for you, the developer, but annoying for the end user.
    • perlbrew/cpanm take a huge amount of time to install, compared to just a few seconds with a binary package.
    • If something goes wrong with perlbrew/cpanm, the client has no idea how to fix it.
    • Offline installation is straight-forward with a binary package, but complicated with perlbrew/cpanm, you'd need to ship some sort of minicpan.

    I don't have experience with FreeBSD. Found instructions: http://lastsummer.de/creating-custom-packages-on-freebsd/

    I need to know the Linux distro so I can also link you to the appropriate Web site. Meanwhile I'm going to assume you're targetting deb/rpm and systemd, that already covers a lot of what's running out there in the wild.

    Create new user for executing the application
    What purpose does it serve? Can't the software run just under a normal user account, like 97% of the other packages on any ordinary system?

    It can be run both via cron and as service.
    You achieve this simply by shipping a .timer file and corresponding .service file as part of the package. There are many tutorials, I like https://wiki.archlinux.org/index.php/Systemd/Timers. Also see /usr/lib/systemd/system/* for local examples.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://11107730]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others exploiting the Monastery: (7)
As of 2019-12-07 02:29 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?
    Strict and warnings: which comes first?



    Results (160 votes). Check out past polls.

    Notices?