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+1` style suffix, in order to allow
the server and client package version tags to both exist in the same repository,
and to provide a way of indicating that there are openqa-server specific
packaging changes, e.g. `~srv+2`.

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%#   }
