Thread: Adding packages fro WAL-G and Odyssey
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
Hi Andrey, On Sat, 2021-02-20 at 14:40 +0500, Andrey Borodin wrote: > > Does any of these link to PG as an extension or are they "normal" > > 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. 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
Attachment
Devrim, thank you for looking into this! > 30 марта 2021 г., в 02:05, Devrim Gündüz <devrim@gunduz.org> написал(а): > On Sat, 2021-02-20 at 14:40 +0500, Andrey Borodin wrote: > >>> Does any of these link to PG as an extension or are they "normal" >>> 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. > > 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 ? I think this should work. There is a setting "daemonize", I think it must be on to start properly in this setup. Thank you! Best regards, Andrey Borodin.
Re: Andrey Borodin > > we'd need a proper debian/ directory for these, either in the upstream > > repo or in a separate one. > 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.) > 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 betterto 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
> 5 июля 2021 г., в 21:25, Christoph Berg <myon@debian.org> написал(а): > > Re: Andrey Borodin >>> we'd need a proper debian/ directory for these, either in the upstream >>> repo or in a separate one. >> 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.) > >> 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 PGanyway. >> We used to build this binary and create almost empty debian/ dir with a script (FPA). We can commit this dir it it's betterto 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 Thanks, Christoph! We have updated /debian stuff in Odyssey. Can you please take a look again? https://github.com/yandex/odyssey/pull/372/files Best regards, Andrey Borodin.