Skip to content

Repository files navigation

Carbonio Docs-Connector CE

Docs Connector backend service for Zextras Carbonio Community Edition

Contributors Activity License Project Twitter

Dependencies 🔗

The following dependencies are required to run the service correctly but they are not installed by the package. They must be installed if Mandatory otherwise user discretion is advised.

Name Mandatory/Optional
carbonio-proxy Mandatory
carbonio-docs-editor Mandatory
carbonio-files Mandatory
carbonio-user-management Mandatory

How to install 🏁

Install carbonio-docs-connector-ce via apt:

sudo apt install carbonio-docs-connector-ce

or via yum:

sudo yum install carbonio-docs-connector-ce

After the installation you must run pending-setups in order to register the service in service-discover.

How to build ⚙

Build using maven:

mvn clean install

It will generate a fat-jar inside the boot/target folder.

How to run 🚀

With the generated fat-jar:

java -Djava.net.preferIPv4Stack=true -jar boot/target/carbonio-docs-connector-ce-*-jar-with-dependencies.jar

Development 🛠

This repo uses the pre-commit framework (.pre-commit-config.yaml). Install it once per clone:

pip install --user pre-commit
pre-commit install --hook-type pre-commit --hook-type commit-msg

Besides linting/formatting, pre-commit locally regenerates the files CI previously generated and bot-committed (Jenkins now only verifies them):

  • THIRDPARTIES — regenerated via a vendored copy of jenkins-lib-common's license-maven-plugin invocation/template (.ci/thirdparties/).
  • package/PKGBUILD sha256sums — verified/autofixed via a vendored copy of jenkins-lib-common's checksum-verify.sh (.ci/checksum-verify.sh); SKIP entries (build artifacts, or sources whose content embeds pkgver) are always preserved.

If a hook regenerates a file, pre-commit will fail that commit (by design — it does not auto-stage changes for you). Review the diff, git add the regenerated file(s), and re-run git commit.

Note: unlike a doc-less service, this one exposes real REST endpoints — FilesResource (/files/create, /files/open/{nodeId}) and WopiResource (/wopi/{nodeId}, /wopi/{nodeId}/contents) — plus health endpoints (/q/health/*, from quarkus-smallrye-health). Its app/docs/configs.md, app/docs/openapi.json and app/docs/openapi.yaml are all actively regenerated by mvn package (carbonio-quarkus-extensions-rest + quarkus-smallrye-openapi) and are covered like any other generated artifact (byte-identical check via CI's API Docs verification stage). Unlike carbonio-tasks-ce, the OpenAPI output here is live, not a frozen historical artifact: openapi.json's paths are non-empty and track the two resources above.

License 📚

Docs Connector backend service for Zextras Carbonio Community Edition.

Released under the AGPL-3.0-only license as specified here: COPYING.

Copyright (C) 2022 Zextras https://www.zextras.com

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU Affero General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU Affero General Public License for more details.

You should have received a copy of the GNU Affero General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.

See COPYING file for the project license details

See THIRDPARTIES file for other licenses details

Copyright notice

All non-software material (such as, for example, names, images, logos, sounds) is owned by Zextras s.r.l. and is licensed under CC-BY-NC-SA.

Where not specified, all source files owned by Zextras s.r.l. are licensed under AGPL-3.0-only

Releases

Packages

Used by

Contributors

Languages