develooper Front page | perl.perl5.porters | Postings from March 2023

Re: Managing Perl installations - summary

Thread Previous | Thread Next
From:
Branislav ZahradnĂ­k
Date:
March 11, 2023 11:10
Subject:
Re: Managing Perl installations - summary
Message ID:
CAB=rbO=1jsyE=75dmjqyiM3Cz-MSgqg68u8qnuTZ_kw=K3WNNw@mail.gmail.com
On Sat, 11 Mar 2023 at 06:10, Joel Roth <joelz@pobox.com> wrote:

> Hi,
>
> I pulled together an unofficial summary from Ovid's and
> demerphq's posts. Mail extracts follow the bullet points
> below.
>
> * Developing and deploying programs is different than for libraries
>
>
Some notes  this:

*
while docker / lxc / .. may have they own issues it should be supported
this tool should provide same behaviour for every developer and CI

*
application usually doesn't come as "just perl".
It usually requires another services, tools, deploying multiple services
from code under development
eg:
- database change management (sqitch)
- log processor (elasticsearch & co)
  + descriptive dashboard configuration (preferably in perl using
per-log-event class)
- application service + application cron

this tool should support environment neutral service description

*
application may even use multiple languages (eg: perl backend + Java/Swift
application)
this tool should be able also to integrate them.

*
as appilcation developer - every application I participated on used
different workflow,
both per application and per organisation

This implies capability to include non-standard plugin.

*
it should properly support git worktree (or any other VC system supporting
multiple checkout)
- to be able to distinguish what can be shared and what cannot
- eg: usecase (current, not with this tool, I have no idea how to do it yet)
  when using docker-compose, exposed ports should be in dedicated
configuration so you can
  optionally exclude them, or use your own per-worktree configuration

*
This tool should support matrix testing, including configuration store in
status
It means that single test file is executed multiple times in session.
App::Prove - it can be altered to run it, but state doesn't use it

App::Prove should also support "resource management" (shared or per test),
eg:
- prepare database fixture per test
- prepare application workspace per test (eg: test of Jira will require
project setup)


As far as Ovid raised this topic:
- I'm gathering ideas and clearing requirements for such tool - working
name dew, guess the pun :-)
  so far in sh and using docker-compose
- regarding env management, some early work which can be shared:
https://gist.github.com/happy-barney/5c8d48c188a0ebfab8312a35a785160b

If anyone is interesting (right now idea-wise, later maybe code-wise) in,
let's start with place to gather use cases
(observed or nice to have) somewhere (new git repo like RFCs?)

Brano

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About