- Jul 30, 2021
-
-
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
-
- Jul 23, 2021
-
-
* Jenkinsfile ('Check configuration'): Rewrite stage as a script. This makes the stage show as passed instead of skip in Blue Ocean, which is more accurate. Change-Id: I5be0cdc0c918521c3580b60261b98b9dff804876
-
- Jul 14, 2021
-
-
Maxim Cournoyer authored
Automated via: $ git grep -l dring | xargs sed -i 's/dring/jamid/g' Change-Id: I67715a37e0fae42a0e4d9ce42bd01becc1ac77f5
-
- Jul 13, 2021
-
-
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
-
- Jul 06, 2021
-
-
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
-
- Jun 30, 2021
-
-
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
-
- Jun 29, 2021
-
-
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
-
Maxim Cournoyer authored
* build.py (run_run) <dring>: Adjust file name. * packaging/rules/rpm/jami-daemon.spec (%install): Likewise. Change-Id: Iedc4e0803bda19d139b29a4ccc669dcc8cc3fb9f
-
- Jun 28, 2021
-
-
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
-
Maxim Cournoyer authored
Change-Id: I98725b2669b357fb86dc653cb7d7ead6f34cb355
-
Maxim Cournoyer authored
This change normalizes the hanging indent to 2 spaces. Change-Id: I98bd6919eae547b946af2c59a14cbee96ee50a9d
-
Maxim Cournoyer authored
Use the recommended exec syntax for the CMD directive in the Dockerfiles, which invokes the command directly rather than through an intermediate shell. Also provide the -i option, but conditionally as Docker checks if there is a real TTY to connect to, which is not the case in Jenkins. * scripts/make-packaging-target.py (PACKAGE_*_DOCKER_RUN_COMMAND) [IS_SHELL_INTERACTIVE]: Conditionally provide the '-i' option. (package-*-interactive) <DOCKER_EXTRA_ARGS>: Remove target-specific variable. (DOCKER_EXTRA_ARGS): Move/rename variable to ... * Makefile (DOCKER_RUN_EXTRA_ARGS): ... here/this. (IS_SHELL_INTERACTIVE): New variable. The rest of this change was automated using the command: $ git grep -l CMD | xargs sed -i -E 's,CMD (.*)$,CMD ["\1"],g' Change-Id: I93ba9ad8115541a7c7f02421384ae01a5b0650ad
-
Maxim Cournoyer authored
This avoids invalidating the cache when changing the rules file of the packages, for example. Automated via: $ git ls-files | grep Dockerfile | xargs sed -i 's,packaging/rules/debian-qt/\* /tmp/builddeps/debian/,packaging/rules/debian-qt/control /tmp/builddeps/debian/control,g' $ $ git ls-files | grep Dockerfile | xargs sed -i 's,packaging/rules/debian/\* /tmp/builddeps/debian/,packaging/rules/debian/control /tmp/builddeps/debian/control,g' Change-Id: Ic33d7af4c022ed9de53df245c861a31d2786fc96
-
Maxim Cournoyer authored
Workaround <https://bugreports.qt.io/browse/QTBUG-94800>. This is to avoid out of memory conditions during the build, which requires up to about 2 GiB of memory per parallel process. There was also a problem with how the MAKEFLAGS was passed, which led qtwebengine to be built using all the CPU cores even when specifying a lesser NO_CPUS value. * packaging/rules/debian-qt/rules (min, max): New functions. (NO_CPUS): Express in terms of max. (AVAILABLE_MEMORY, MEMORY_REQUIRED_PER_CORE, COMPUTED_JOB_COUNT) (JOB_COUNT, MAX_PARALLEL_BUILDS): New variables. (override_dh_auto_build): Override to manually control job count. Specify NINJAFLAGS for the Chromium build. * packaging/rules/rpm/jami-libqt.spec (min, max, cpu_count) (available_memory, computed_job_count, job_count): New macros. (%build): Re-indent and use the above 'job_count' variable as the number of parallel jobs. (%install): Likewise. Change-Id: I9134c1e63e92104a1da8435670e2919ce692040c
-
Maxim Cournoyer authored
Also make the script more readable by factoring out variables to avoid repeating ourselves. Change-Id: I30e85fb7b0a1207a8eff3a89d8c7ab4f455e0c4a
-
Maxim Cournoyer authored
Change-Id: Ib5ad6c091560f7fc4ee9734ca283e78c90d9d769
-
Maxim Cournoyer authored
* scripts/build-package-debian.sh: Revert glob pattern to *deb and add comment. * scripts/deploy-packages.sh (package_deb): Rename .ddeb to .deb. Change-Id: I46bd9855bec451102a5ef5046f9ac52b161559c5
-
- Jun 25, 2021
-
-
Maxim Cournoyer authored
Change-Id: I5cbc06d5f7b245bf49578914819a8154c9d2cd6e
-
Maxim Cournoyer authored
* packaging/rules/rpm/jami-all.postinst (is_distribution_supported): Make version agnostic. (has_rpm, is_opensuse): New procedures. (CAN_ADD_REPO_SOURCE, JAMI_REPO, ENDTAG): Delete variable. (jami_repo_name, jami_repo_base_url): New variables. Change-Id: I01ee72da39a1a8377ec70ae9dc3ef218d0837633
-
Maxim Cournoyer authored
When a packaging target fails to build, deploy the successful builds to the repository anyway. * Jenkinsfile (BUILD_OWN_QT): Remove parameter. The Qt builds are now implicitly made as part of the regular packaging targets. (Build packages): Wrap make invocation in a catchError so that the stage appears as failed while the build is marked as a success, which allows the 'Sign & deploy packages' stage to run despite packaging errors. Change-Id: I5785d154f5e1963aa824576f7f0f62043446456a
-
Maxim Cournoyer authored
* Jenkinsfile (properties): New definition. GitLab: jami-packaging#98 Change-Id: I3406f20027cafe8ab6a5743860b470d92e8455cb
-
Maxim Cournoyer authored
* Jenkinsfile (Deploy packages): New stage. GitLab: jami-packaging#98 Change-Id: I36a555312e0569549316370878244c3267f8149a
-
Maxim Cournoyer authored
* Jenkinsfile (submodules): New variable. [parameters]{WITH_MANUAL_SUBMODULES}: New parameter. (Fetch submodules): Adapt the message to the parameter's value. Add the '--remote' option to 'git submodule' unless WITH_MANUAL_SUBMODULES is true. GitLab: jami-packaging#98 Change-Id: Ie5f0521bed16303e751e8e19174f18a90bccefcc
-
Maxim Cournoyer authored
The default is to build all the packaging targets (minus the *_qt and *_arm ones). Add a PACKAGING_TARGETS parameter that allows specifying which targets to build. * Jenkinsfile: (PACKAGING_TARGETS): New parameter. ('Build packages'): Use it unless it's the empty string. GitLab: jami-packaging#98 Change-Id: Idf1b4460a0edac7cbe6a82b9db1d204af78de801
-
Maxim Cournoyer authored
This follows commit 2afa99fd1 in the daemon. * build.py (run_run) <dring>: Adjust file name. * packaging/rules/rpm/jami-daemon.spec (%install): Likewise. Hard code the jamid binary location as /usr/libexec/dring, to not argue with OpenSUSE Leap's %{_libexecdir}. Change-Id: Iea6bf3cc6c4dce853f0b7c92861dfee7b8a07bbe
-
- Jun 09, 2021
-
-
Sébastien Blin authored
GitLab: #1259 Change-Id: I9c81a366737a9805dc80a9db577b730633caec04
-
- Jun 08, 2021
-
-
Since the introduction of libqt-jami deb packages, they were built using quite an ugly hack on the Jenkins side. This patch reworks all of that so that libqt-jami is built for each distro version if it was not already previously built, or if a force rebuild is specified. Change-Id: Ib74b747628a007cd0d61b068e0ff9ed80006b93d
-
- Jun 04, 2021
-
-
Adrien Béraud authored
Change-Id: Icf5de11a027f9a66b7edbd108be69f9b5d4838bf
-
Amin Bandali authored
Support for package repositories is no longer experimental, and the --enable-experimental-package-repositories flag has been removed as of Snapcraft 4.8. Change-Id: Ie095aaef7806a13ba765941bed480a25f8cae552
-
- Jun 03, 2021
-
-
Sébastien Blin authored
This give some performance drop and can cause crash. Change-Id: I1a82d52972704cb66d34712a81a8e0bb6d051ae4
-
- Jun 02, 2021
-
-
Amin Bandali authored
Change-Id: Ie938153fd4581e6007c4c2c65b82649c56c31e4c
-
Maxim Cournoyer authored
Otherwise it wouldn't be in effect when using the '--remote-ssh-identity' option of the script. * scripts/deploy-packages.sh (fetch_qt_deb) <RSYNC_RSH>: Export. (deploy) <RSYNC_RSH>: Likewise. Change-Id: Ia738402a16dad4eed3557137c82a3cdb6bbdeeef
-
- Jun 01, 2021
-
-
Amin Bandali authored
Change-Id: Icff500f88094c5a904095c228f68824514c157ce
-
- May 27, 2021
-
-
Maxim Cournoyer authored
* scripts/deploy-packages.sh <SSH_IDENTIY_FILE>: Replace with SSH_IDENTITY_FILE. Change-Id: Ibbdc21710b902f0a5e963c645dfbc5f62dff1be6
-
This resolves the following error: ImportError: /usr/lib64/libgobject-2.0.so.0: undefined symbol: g_memdup2 * docker/Dockerfile_opensuse-tumbleweed: Do not update and install stuff in various steps. * docker/Dockerfile_opensuse-leap_15.2: Likewise. Change-Id: I286576cddd5226cf40fd1bec997be36b2142e355
-
- May 25, 2021
-
-
This enables building Jami in a development setting on any GNU/Linux distribution, provided Guix is installed. It supports building both the Qt and the GNOME clients. It uses ffmpeg and pjproject from the contribs. Change-Id: I1bf0c9f3f9c08361b9016fe04581902ec27f2312
-
Maxim Cournoyer authored
Seeing which commands are executed during the build is useful to debug when something goes wrong. Change-Id: I2acec49b519c9070fbfa2d18d14e2b459c9bc76f
-
Maxim Cournoyer authored
The CMake flags list is now built dynamically, allowing to share the common flags between the clients and the conditional branches. Quote more arguments as reported by 'shellcheck'. Change-Id: I0cd845ec733fb8389c4cd9bd74455ba86a602fee
-
Maxim Cournoyer authored
Running autogen.sh invalidates the build artifacts, causing them to be rebuilt every time the 'install' action is invoked, which is wasteful. Only invoke autogen.sh when the configure script is missing. Change-Id: Ib92b3d14e9f44f465f467ee0948fe3fceb5d3bea
-
Maxim Cournoyer authored
Change-Id: Iba8aac10fa36e4404b07beab9dfe9ed3d8c5c1a2
-