debian-forge-composer/internal
Ondřej Budai a67baf5a4d upload/koji: use the new API of kolo/xmlrpc by default
Fedora 33 ships the new API so let's do the switch now.

But... this would break older Fedoras because they only have the old API,
right?

We have the following options:

1) Ship xmlrpc compat package to Fedora 33+. This would mean that we delay the API switch till F32 EOL. This would be the most elegant solution, yet it has two issues: a) We will surely not be able to deliver the compat package before F33 Final Freeze. b) It's an extra and annoying work.

2) Downstream patch. No.

3) Use build constraints and have two versions of our code for both different
   API.

I chose solution #3. It has an issue though:

%gobuild macro already passes -tags argument to go build. Therefore the
following line fails because it's not possible to use -tags more than once:

%gobuild -tags kolo_xmlrpc_oldapi ...

Therefore I had to come up with manual tinkering with the build constraints
in the spec file. This is pretty ugly but I like that:

1) Go code is actually clean, no weird magic is happening there.
2) We can still ship our software to Fedora/RHEL as we used to
   (no downstream patches)
3) All downstreams can use the upstream spec file directly.

Note that this doesn't affect RHEL in any way as it uses vendored libraries.
2020-10-14 16:44:26 +02:00
..
blueprint blueprint: do not append "-" to name-version if version is empty 2020-06-10 17:40:30 +02:00
boot image-tests: don't use random names for CI artifacts 2020-09-15 14:30:51 +02:00
client client: Add an integration test for a bad blueprint depsolve 2020-07-28 08:18:56 +02:00
cloudapi worker: require workers to pass their architecture 2020-09-23 14:28:52 +01:00
common osbuild: move result serialization from common 2020-08-26 12:12:37 +02:00
crypt crypt: add automatic darwin support 2020-07-17 07:48:22 +02:00
distro tests: ship all tests in the -tests sub-package 2020-10-06 13:08:26 +02:00
jobqueue jobqueue: allow canceling jobs 2020-05-13 16:45:09 +02:00
jsondb jsondb: Allow passing nil as document to Read() 2020-05-13 16:45:09 +02:00
kojiapi kojiapi: add simple test for the /status API 2020-10-13 18:52:44 +02:00
mocks worker: introduce job artifact directory 2020-05-26 10:42:20 +02:00
osbuild osbuild: add support for the first-boot stage 2020-09-22 11:38:28 +02:00
rpmmd rpmmd/Depsolve: expose whether to check GPG signature for each RPM 2020-06-10 19:25:54 +02:00
store store: Add newImageBuildFromV0 test 2020-08-13 17:47:57 +02:00
target upload/koji: don't pass task_id to cg_init_build 2020-09-16 00:15:02 +01:00
test weldr: add support for toml format in /blueprints/freeze 2020-06-05 13:51:04 +02:00
upload upload/koji: use the new API of kolo/xmlrpc by default 2020-10-14 16:44:26 +02:00
weldr worker: require workers to pass their architecture 2020-09-23 14:28:52 +01:00
worker worker: prefix all routes with /api/worker/v1 2020-09-24 21:08:56 +01:00