1. 22 Oct, 2021 2 commits
    • Maxim Cournoyer's avatar
      Jenkinsfile: Fix deploy step. · 873c35ff
      Maxim Cournoyer authored
      A variable had not been renamed properly, causing an unbound variable
      exception to be thrown.
      
      * Jenkinsfile ('Sign & deploy packages') <target>: Rename variable to ...
      <distribution> in the later loop.
      
      Change-Id: I6c92b3249b537a91cec58438bfbcf8780043d74e
      873c35ff
    • Maxim Cournoyer's avatar
      packaging: Add the deb-pack-x86_64 and deb-pack-i686 targets. · 977919b9
      Maxim Cournoyer authored
      The deb-pack targets build a Guix pack of the jami-qt client in the
      .deb format, ready to be installed on any dpkg-based GNU/Linux
      distribution.
      
      * Makefile (RELEASE_VERSION, RELEASE_TARBALL_FILENAME): Export
      variables.
      (has-guix-p): New target, to be used as a predicate.
      (portable-release-tarball): Rewrite in terms of the above.
      (SUPPORTED_GNU_ARCHS, DEB_PACKS, DEB_PACK_TARGETS): New variables.
      (guix-pack-command, define-deb-pack-rule): Likewise.
      (deb-pack-x86_64, deb-pack-i686): New targets.
      (PACKAGE-TARGETS): Register them.
      * guix/guix-pack-manifest.scm: New file.
      * guix/guix-pack-deb.postinst: Likewise.
      * guix/manifest.scm: Specify qtbase to be at version 5, as Guix now
      has version 6 too.
      * packaging/rules/debian/jami-all.postinst: Harmonize.
      * scripts/deploy-packages.sh (package): Simplify and register the
      'guix-deb-pack' distribution.
      * Jenkinsfile (Sign & deploy packages): Simplify to deploy all the
      packages subdirectories.  This makes it easier to handle multi-arch
      packages for the same distribution, and removes the need to encode the
      distribution information in the target name.
      
      Change-Id: Id6f69e7a5872a39b4b8f50fa09c8ec3475e9c896
      977919b9
  2. 20 Oct, 2021 1 commit
  3. 12 Oct, 2021 1 commit
  4. 30 Sep, 2021 1 commit
  5. 29 Sep, 2021 1 commit
  6. 28 Sep, 2021 1 commit
  7. 24 Sep, 2021 2 commits
    • Maxim Cournoyer's avatar
      Build jami-libclient (LRC) with libwrap enabled. · 6096e314
      Maxim Cournoyer authored
      * packaging/rules/debian/rules (override_dh_auto_configure): Move
      recipes to ...
      (override_dh_auto_configure_build): ... here.  This is necessary as
      the LRC now must find the share library of the daemon, hence it must
      be built before the LRC configuration occurs.
      <-DENABLE_LIBWRAP=true>: New option when configuring the LRC.
      * packaging/rules/rpm/jami-libclient.spec (%build): Likewise.
      * scripts/install.sh (lrc_cmake_flags): Likewise.
      (OSTYPE): Remove variable.
      (sharedLib): Remove variable.  The Jami daemon shared library is
      needed when dynamically linking against it when libwrap is enabled.
      * packaging/rules/rpm/jami-daemon.spec (%build): Drop the --disable-shared
      option.
      (%files): Register the libring.so dynamic library.
      * packaging/rules/debian/rules (override_dh_auto_configure): Drop the
      --disable-shared option.
      
      GitLab: jami-packaging#101
      Change-Id: Id1acaaf15a0f3d561c73bf34dde48f4eaf058eed
      6096e314
    • Maxim Cournoyer's avatar
      Revert "debian: rules: Work around a regression in Autoconf 2.70." · 0bd1425d
      Maxim Cournoyer authored
      This reverts commit 62f547b5.  The fix
      now more properly lives in the contrib build system.
      
      Change-Id: I7bb7d1f302c91be46627fc26eddece1d768fb308
      0bd1425d
  8. 23 Sep, 2021 4 commits
  9. 16 Sep, 2021 2 commits
  10. 15 Sep, 2021 1 commit
  11. 13 Sep, 2021 1 commit
  12. 02 Sep, 2021 2 commits
  13. 01 Sep, 2021 2 commits
  14. 25 Aug, 2021 2 commits
  15. 21 Aug, 2021 1 commit
    • Maxim Cournoyer's avatar
      Makefile: Repatriate the definition of packaging targets. · 004fda67
      Maxim Cournoyer authored
      Prior to this change, the Makefile packaging targets were generated by
      a Python script, supposedly to reduce boilerplate.  Make is able to
      programmatically define rules, so use its features instead.
      
      The packaging targets 'package-' prefix is dropped, making the targets
      names match the distribution directly, such as 'ubuntu_20.04'.
      
      The docker *-ro bind mounts are dropped; instead only the release
      tarball file name is exposed to the containers as *the* source, which
      makes it unambiguous as to which sources are used.
      
      The files related to RHEL builds are removed, as the RHEL build is
      known to be broken and isn't being used.
      
      * Makefile (DISTRIBUTIONS): New variable.
      (make-docker-package-target): New function.
      (docker/Dockerfile-snap): Adjust accordingly.
      docker/*: Standardize to use hyphens instead of a mix of hyphens and
      underscores.
      * docker/Dockerfile_rhel_8: Delete file.
      * docker/profile-seccomp-fedora_28.json: Delete file.
      * scripts/make-packaging-target.py: Delete file.
      * Jenkinsfile: Adjust accordingly.
      
      Change-Id: I2dc42b489a54b177ad038398a9d23a2a7e3007ec
      004fda67
  16. 20 Aug, 2021 3 commits
  17. 19 Aug, 2021 2 commits
  18. 16 Aug, 2021 1 commit
  19. 09 Aug, 2021 1 commit
  20. 30 Jul, 2021 1 commit
    • Maxim Cournoyer's avatar
      scripts: deploy: Upgrade to newer createrepo_c. · c2194e4c
      Maxim Cournoyer authored
      The old 'createrepo' has been deprecated and is no longer offered in
      current distributions.  Its replacement should be mostly backward
      compatible.
      
      * scripts/deploy-packages.sh: List requirements.
      (enabled)<createrepo>: Adjust to use createrepo_c'.
      
      Change-Id: Ie3e658dd1ea685558b07d6c9b969be7ad3a98050
      c2194e4c
  21. 23 Jul, 2021 1 commit
  22. 14 Jul, 2021 1 commit
  23. 13 Jul, 2021 1 commit
    • Maxim Cournoyer's avatar
      Jenkinsfile: Correctly set pipeline status on a build failure. · cc8569f3
      Maxim Cournoyer authored
      Otherwise the pipeline cannot be meaningfully used as a validation
      job, as it'd always return success, even upon encountering one or more
      build failures.
      
      * Jenkinsfile: In case a packaging target failed building, set the
      build result to failure.
      
      Change-Id: I47c8b09936b088b27a02173aa94a0adb0f04dcb4
      cc8569f3
  24. 06 Jul, 2021 1 commit
    • Maxim Cournoyer's avatar
      Makefile: Make the tarball release reproducible. · 09a5cd14
      Maxim Cournoyer authored
      * Makefile (TAR_REPRODUCIBILITY_OPTIONS): New variable.
      $(RELEASE_TARBALL_FILENAME): Invoke tar with the above options.
      Invoke gzip with '--no-name', to prevent keeping the file name and
      time stamp.
      
      Change-Id: I64cac307c69cbfbdb7132b1f567f1c3f18baad8c
      09a5cd14
  25. 30 Jun, 2021 1 commit
    • Maxim Cournoyer's avatar
      Jenkinsfile: Migrate properties to declarative options/triggers. · 60e5ba58
      Maxim Cournoyer authored
      Properties is a scripted pipeline concept and doesn't work correctly
      in the context of a *declarative* pipeline.
      
      * Jenkinsfile: Add 'ansicolor' to the list of requirements in the top
      comment.
      (properties): Remove.
      (triggers): New directive.
      
      Change-Id: Idceff87a005a935ff6af2931fd0ed466d0e73911
      60e5ba58
  26. 29 Jun, 2021 2 commits
    • Maxim Cournoyer's avatar
      packaging: Adjust following the relocation of the ringtones. · 15dd42ec
      Maxim Cournoyer authored
      This is a follow up to the f0fb8148ba7f453d73e31e1cece2dcffae68e878
      commit (Use the PROGSHAREDIR macro to refer to the custom datadir) in
      the daemon, that moved the ringtones from a hard-coded location of
      /usr/share/ring/ringtones to $datadir/jami/ringtones.
      
      * packaging/rules/rpm/jami-daemon.spec (%files): Adjust accordingly.
      * scripts/install.sh (client_cmake_flags) <DRINGTONE_DIR>: Likewise.
      
      Change-Id: Ia9d3403f5600a4ab4eefe28ee20611afc3f5e8b0
      15dd42ec
    • Maxim Cournoyer's avatar
      packaging: Adjust for the 'dring' command renaming. · 5c3c23d5
      Maxim Cournoyer authored
      * build.py (run_run) <dring>: Adjust file name.
      * packaging/rules/rpm/jami-daemon.spec (%install): Likewise.
      
      Change-Id: Iedc4e0803bda19d139b29a4ccc669dcc8cc3fb9f
      5c3c23d5
  27. 28 Jun, 2021 1 commit
    • Maxim Cournoyer's avatar
      Jenkinsfile: Partial deployment, follow up. · 27be9f50
      Maxim Cournoyer authored
      This is a follow up to commit 4ee93922, which introduced partial
      deployments.
      
      The unstash operation also needs to be handled specially, as it may
      now fail attempting to unstash an item that could not be stashed
      previously.
      
      * Jenkinsfile ('Sign & deploy packages'): Skip target deployment when
      it fails to be unstashed.
      
      Change-Id: I59341e4c3bb007125402f4b28979d0e8e963757d
      27be9f50