Subject: Adding packages fro WAL-G and Odyssey

From: Andrey Borodin <[email-masked]>
Date: Fri, 19 Feb 2021 11:26:33 +0500

Hi!

I'm maintaining backup tool WAL-G, connection pooler Odyssey and some other PG-related tools.
I want to make these tools available via PGDG apt repository.
Where should I start? I've read some wiki pages [0] but did not figure out what to do...

We already build deb packages for internal distribution, but I think process may be different in this case.

Also, I'd like to do the same for Yum repository, but I think I should start from Apt.

Thanks!

Best regards, Andrey Borodin.

[0] https://wiki.postgresql.org/wiki/Apt

---

From: Christoph Berg <[email-masked]>
Date: Fri, 19 Feb 2021 22:38:03 +0100

Re: Andrey Borodin
> We already build deb packages for internal distribution, but I think process may be different in this case.

Hi Andrey,

we'd need a proper debian/ directory for these, either in the upstream
repo or in a separate one.

Does any of these link to PG as an extension or are they "normal"
programs that do not depend on the PG major version?

Christoph

---

From: Andrey Borodin <[email-masked]>
Date: Sat, 20 Feb 2021 14:40:24 +0500

Thanks Christoph!

> 20 февр. 2021 г., в 02:38, Christoph Berg <[email-masked]> написал(а):
> 
Odyssey had debian/ dir https://github.com/yandex/odyssey/tree/master/scripts/debian
WAL-G is simply one Go binary. https://github.com/wal-g/wal-g/tree/master/cmd/pg
Though it's a separate Go binary for each DB: PG, MySQL, MSSQL, MongoDB etc. But I think it's better to start from PG anyway.
We used to build this binary and create almost empty debian/ dir with a script (FPA). We can commit this dir it it's better to have it in source tree.

> programs that do not depend on the PG major version?
They are normal. Kind of.
I'm planning to release Odyssey 1.2 soon, so I'd start from Odyssey, I think.

Probably, we would be happy to share some extensions too. But I think they have somewhat smaller priority for me.
https://github.com/munakoiso/logerrors
https://github.com/x4m/pg_tm_aux
https://github.com/dev1ant/repl_mon
https://github.com/dsarafan/pg_dirty_hands

Thanks!

---

From: Devrim Gündüz <[email-masked]>
Date: Tue, 30 Mar 2021 00:05:58 +0100

Hi Andrey,

> I'm planning to release Odyssey 1.2 soon, so I'd start from Odyssey,

I took if I can RPMify Odyssey. Unless I'm missing something, there is
no other way than running make local_run to run it as a daemon -- which
I don't think is doable for any kind of packaging system.

So, what I if install build/sources/odyssey binary under /usr/bin, cp
oddysey.conf to /etc/odyssey.conf and run it via systemctl? Is this
sufficient ?

Regards,

-- 
Devrim Gündüz
Open Source Solution Architect, Red Hat Certified Engineer
Twitter: @DevrimGunduz , @DevrimGunduzTR

---

From: Andrey Borodin <[email-masked]>
Date: Wed, 31 Mar 2021 15:32:54 +0300

Devrim, thank you for looking into this!

> 30 марта 2021 г., в 02:05, Devrim Gündüz <[email-masked]> написал(а):

I think this should work. There is a setting "daemonize", I think it must be on to start properly in this setup.

Thank you!

---

From: Christoph Berg <[email-masked]>
Date: Mon, 5 Jul 2021 18:25:03 +0200

Re: Andrey Borodin
> Odyssey had debian/ dir https://github.com/yandex/odyssey/tree/master/scripts/debian

Hi,

that directory would need to be /debian, not somewhere deeper in the
tree. (Interestingly, you already have a /debian, just with less
files.)

> We used to build this binary and create almost empty debian/ dir with a script (FPA). We can commit this dir it it's better to have it in source tree.

FPA usually doesn't produce "proper" packages with a curated
debian/changelog (no throwing away of old entries, and sensible log
messages) and the other bits.

debian/rules shouldn't try to build a -dbg package these days

debian/control shouldn't depend on postgresql-server-dev-13 but on
postgresql-server-dev-all if you really need server headers instead of
just the client ones.

The Description needs more content

Standards-Version is outdated

Consider using debhelper-compat (= 13) instead of debian/compat 9

Consider providing a systemd .service file along the init script

Christoph

---

From: Andrey Borodin <[email-masked]>
Date: Mon, 6 Dec 2021 12:09:55 +0500

> 5 июля 2021 г., в 21:25, Christoph Berg <[email-masked]> написал(а):
> 
> Re: Andrey Borodin

Thanks, Christoph!
We have updated /debian stuff in Odyssey. Can you please take a look again?
https://github.com/yandex/odyssey/pull/372/files