- Jun 25, 2021
-
-
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
-
Maxim Cournoyer authored
This hastens the build when using the ./build.py script. The debug symbols are now also kept for the built contribs when the --debug option is provided along --install. Change-Id: Ia5a68456213e8984f5ac8f050131356b324d9777
-
Maxim Cournoyer authored
Instead, use Bash from PATH. This approach works more reliably on distributions not strictly adhering to the File Hierarchy Standard (FHS) such as Guix System or NixOS. Change-Id: Ic7b168d0f4d73f3a1cb1085e9a84600a25d153c5
-
There is no gdb.gdb init file in the repo, never was. Change-Id: Ia1020ff037b5c6f36143cf63816027b0878f5b78
-
Maxim Cournoyer authored
While it's not possible to automatically check and configure the dependencies for unknown/unsupported distributions, build.py still provides a convenient experience to checkout the sources and install Jami locally. In this mode of operation, the user is expected to configure their environment by their own means. * build.py: Rename Ring to Jami in the document string. Remove unused 'signal' import. (choose_distribution): Do not crash when the '/etc/os-release' does not exist; return 'Unknown' instead. (validate_args): Allow disabling the distribution check when the user provides 'no-check' as the value of the --distribution argument, or defines the JAMI_BUILD_NO_CHECK environment variable. Update the help documentation. * scripts/install.sh (priv_install): Document the arguments. Change-Id: I41ba2da05771feb6e3f9bc7c087206596063ba81
-
Maxim Cournoyer authored
When a .tarball-version file containing the version string is present, it is taken for granted that the source tarball is present. This allows to lift the requirement on a Git checkout to use the source tarball. This makes it easy and cheap to sync this tarball and accompanying .tarball-version file across different Jenkins agents to distribute the packaging jobs, bring the total build time from about 1 h 40 to 40 minutes. * Makefile (TARBALL_VERSION): New variable. When defined, do not do not invoke Git to derive the version string, simply use it. [RELEASE_TARBALL_FILENAME]: Do not compute prerequisites when TARBALL_VERSION is defined; assume the tarball is present. * .gitignore: Ignore .tarball-version. * Jenkinsfile: (Generate release tarball): Generate a .tarball-version file, and stash it along the release tarball. Explicit this should run on a 'guix' agent. (Build packages): Forward to any 'linux-builder' agent, clean the workspace, unstash and extract the tarball and build. GitLab: jami-packaging#98 Change-Id: I13088b75c9ccd5166662a84b7c5f8d4e8b7b65da
-
Maxim Cournoyer authored
* Jenkinsfile [parameters]: New directive. (Build packages): Skip building custom Qt or ARM packages depending on the parameter values. GitLab: jami-packaging#98 Change-Id: Ic68af873483ac92319061baf5f14ef7323a27a26
-
Maxim Cournoyer authored
AFAICT, this was made to clear some supposedly non-redistributable files in the sources according to Debian policy. If there's some cleanup to do, we should do so at the level of the common source tarball, not in a Debian-specific way. * packaging/rules/debian/rules (override_dh_auto_configure): Remove code repacking tarballs. (override_dh_clean, get-orig-source): Remove. * packaging/rules/debian/copyright (Files-Excluded): Remove. Also streamline the listing of copyrights to the files part of our tree, not in bundled libraries. Debian-specific requirements can stay in the Debian-maintained corresponding packages. * scripts/build-package-debian.sh: Streamline, making the release tarball the sole input of the process. Do not build source packages, for simplicity (dpkg-source doesn't like our source tarball as-is). Change-Id: I78a482ab3362e9bba8ffdc0ab60324f94715bfb8
-
Maxim Cournoyer authored
The phony tarball-producing targets will now always clear the tarballs.manifest file before generating a new release tarball, ensuring it doesn't contain stale information. A new 'portable-release-tarball' target is also added to offer an easy to use target that was previously implemented ad-hoc in the CI. Move this logic here as a portable release tarball is useful for packagers wanting to test locally with the various supported platforms. The Jenkinsfile now makes use of it. * Makefile (daemon/contrib/native/Makefile): New target. (tarballs.manifest): Add the above target as a prerequisite and remove invocation to bootstrap script. Invoke make with --no-print-directory to prevent entering/leaving directory messages from appearing in the output (it's supposed to be on when using --silent, but when the make invocation is nested, it doesn't seem to be the case). (release-tarball): Also clear the tarballs.manifest when invoked. (purge-release-tarballs, portable-release-tarball): New targets. * guix/minimal-manifest.scm: New file. * Jenkinsfile ('Generate release tarball): Use it to spawn the container used to build the release tarball. Also expose /usr/bin/env in the container. Use the new 'portable-release-tarball' target to simplify things. Fix the shebang line; it needs to be the first line of the script. GitLab: jami-packaging#98 Change-Id: I3b55e25933108ae9930bc9fcc867f9fa51d796f2
-
- May 21, 2021
-
-
Maxim Cournoyer authored
This further reduces the targets set to what the CI currently uses. The native ARM (armhf, aarch64) builds are dropped as we are not equipped in terms of native hardware to build them and QEMU user emulation is too slow. The remaining i386 builds are removed as they are not used by the CI and have or are being phased out by their upstreams. * scripts/make-packaging-target.py (DPKG_BASED_SYSTEMS_DOCKER_RUN_OPTIONS): New variable. [debian_10]: Use it. [debian_10_i386, debian_10_armhf, debian_10_arm64] [ubuntu_18.04_i386, ubuntu_18.04_qt_i386]: Delete targets. [rhel_8]: Comment out target for now. [debian_testing]: Use the above variable. [ubuntu_20.04, ubuntu_20.10, ubuntu_21.04]: Likewise. * docker/Dockerfile_debian_10_arm64: Delete file. * docker/Dockerfile_debian_10_armhf: Likewise. * docker/Dockerfile_debian_10_i386: Likewise. * docker/Dockerfile_ubuntu_18.04_i386: Likewise. * docker/Dockerfile_ubuntu_18.04_qt_i386: Likewise. Change-Id: Iabb840e7f9a2111afe822e2c05797a651d55e21d
-
Maxim Cournoyer authored
* README.rst <make-ring.py>: Replace by build.py. * docs/source/dev/compiling_and_installing/ring-project.rst: Likewise. * build.py: Replace 'Ring' by 'Jami'. Change-Id: I0231ddf541b2622f6042a12ed3ac7ad724b317ae
-
Maxim Cournoyer authored
This variable is set on the CI; it's nice to have it default to something rather than fail. * scripts/make-packaging-target.py (run_generate_all): Expand SNAP_PKG_NAME to 'jami' if unset or null. Change-Id: Iacc6edd62388c0e803928863e6e53ddd7314379a
-
- May 17, 2021
-
-
Amin Bandali authored
Change-Id: I6b7f3a686b5fb74454882507e097baf96c61aeb6
-
- May 13, 2021
-
-
Amin Bandali authored
as of now, the snap ecosystem only supports SPDX 2.1 identifiers. Change-Id: Iaa35b7d47d20bd320c585a2b72fa715b9bac2a5f
-
Amin Bandali authored
Change-Id: I518d45903ec29cb6afc04916b03750cb3653d44a
-
Amin Bandali authored
Change-Id: I11d1191eedf126bfb235ab9f36216c157547f392
-
Sébastien Blin authored
Change-Id: Ib2bd0ab1db50192da377b8807730ae95b0259e50
-
- May 12, 2021
-
-
Sébastien Blin authored
Change-Id: I4c9fc47dabaaf36d693312d98e0c0a94d031aff1
-
Sébastien Blin authored
Change-Id: I661fb159a10e8c7b6e5b7261f62f91605dbe020a
-
Sébastien Blin authored
Change-Id: I6d8dd00c16fe4f22e4451c4fe040637d2b67c3f5
-
Change-Id: I33f13231006e568a8de9b0e067db4aaf6f15739c
-