Question

Comment puis-je configurer un ccache partagé sans tomber dans un problème d'autorisations?

Je souhaite exécuter une version nocturne ou CI avec les dernières modifications et partager tous les fichiers binaires créés dans R & D à l'aide d'un grand référentiel ccache.

Était-ce utile?

La solution

La solution la plus simple: créez un nouveau groupe (par exemple, "devel") et associez-y tous les développeurs. Accordez des autorisations de lecture / écriture à ce groupe dans la hiérarchie de répertoires où le cache est conservé. Les développeurs devront également réparer leur umask.

Autres conseils

Consultez la nouvelle section sur la mise en cache dans le manuel de ccache. En substance, utilisez le même paramètre CCACHE_DIR , définissez correctement CCACHE_UMASK et envisagez d'utiliser CCACHE_BASEDIR .

Si vous utilisez également le distcc associé, les problèmes de permission disparaîtront en grande partie, car les compilations serait exécuté sous son contrôle sur tous les hôtes de ferme de compilation que vous définissez.

Vous pouvez également inclure les ordinateurs de bureau des développeurs parmi les hôtes distcc, mais au détriment de la duplication de travaux pour lesquels un fichier pourrait éventuellement être compilé sur plusieurs ordinateurs, bien qu'il ne renvoie jamais un fichier objet compilé obsolète. . Cela accélérerait également les recompilations quotidiennes.

Vous pouvez également consulter le sccache de Mozilla, qui est un outil semblable à ccache qui peut stocker les artefacts de construction dans le stockage en nuage (GCS / S3 / Azure ou redis / memcached).

Veuillez consulter xcache .
C'est ccache-cloud et a été utilisé dans alibaba qui a une grande efficacité. Si vous utilisez ccache, il serait très facile de passer à xcache.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top