openqa-server
-------------

To update the contents of debian/control, edit the template that is contained
within debian/control.in and then run:

  ./debian/rules debian/control

which will detect whether we are currently in the `openqa` or `openqa-server`
source package from the changelog, and create the appropriate version of the
control file.

To switch between the two variants of the source package, run:

  ./debian/rules sw-server
or
  ./debian/rules sw-client

The server version is normally kept in branches with a `.server` suffix
(e.g.: `debian/latest.server` or `debian/trixie-fasttrack.server`).

The server package version is given a `~srv` suffix, in order to allow the
server and client package version tags to both exist in the same repository.

You should check the changes made after doing these switches.

The reason for this duplication is to allow the openqa-server package to be kept
out of testing with a permanent RC bug, so that the slow moving client/worker
packages can be supported in stable, without the need to attempt fragile
backports of the fast-moving, and javascript encumbered webUI in the server.

The plan is to maintain the following branches in git:

  debian/latest
  debian/latest.server
  debian/${stable}-backports
  debian/${stable}-fasttrack.server

where `openqa` gets uploaded to unstable and backports, while `openqa-server`
(kept in the .server branches) gets uploaded to unstable and fasttrack and is
prevented from entering testing.

generate-control.pl performs its actions based on comments of the form #%...%#:

  #%SOURCE_PACKAGE%#       -- replaced by the source package name

  ...              #%C%#   -- these lines are only included for the clients
  ...              #%S%#   -- these lines are only included for the server

  #%SERVER_SECTION_START%# }-- lines beween these pairs are only included
  #%SERVER_SECTION_END%#   }   in the matching package's control file
  #%CLIENT_SECTION_START%# }
  #%CLIENT_SECTION_END%#   }
