mirror of https://github.com/sipwise/ngcpcfg.git
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
master
mr10.5.8
mr11.5.1
mr12.5.1
mr13.2.1
mr10.5
mr11.5
mr12.5
mr13.2
mr13.3
mr13.3.1
mr12.2.1
mr12.1.1
mr12.0.1
mr12.2
mr12.1
mr12.0
mr13.1
mr13.1.1
mr13.0
mr13.0.1
mr9.5
mr9.5.9
mr12.4
mr12.4.1
mr10.5.7
mr12.3
mr12.3.1
mr8.5
mr8.5.12
mr10.5.6
mr9.5.8
mr8.5.11
mr9.5.7
mr10.5.5
mr11.4
mr11.4.1
mr10.5.1
mr10.5.2
mr10.5.3
mr10.5.4
mr11.2.1
mr11.3.1
mr11.2
mr11.3
mr11.1.1
mr11.1
mr8.5.10
mr9.5.6
mr11.0.1
mr9.5.5
mr8.5.9
mr11.0
mr7.5
mr7.5.13
mr8.5.2
mr8.5.3
mr8.5.4
mr8.5.5
mr8.5.1
mr10.4.1
mr10.4
mr9.5.1
mr7.5.12
mr8.5.8
mr9.5.4
mr10.3
mr10.3.1
mr7.5.11
mr10.1.1
mr10.2.1
mr10.1
mr10.2
mr9.5.3
mr7.5.10
mr8.5.7
mr8.5.6
mr9.5.2
mr10.0.1
mr6.5.12
mr6.5
mr6.5.13
mr10.0
mr9.4
mr9.3.1
mr9.4.1
mr9.3
mr7.5.9
mr9.0.1
mr9.1.1
mr9.2.1
mr9.0
mr9.1
mr9.2
mr7.5.8
mr6.5.11
mr7.5.7
mr5.5
mr5.5.13
mr7.5.6
mr6.5.10
mr8.4
mr8.4.2
mr7.5.5
mr5.5.12
mr8.4.1
mr6.5.9
mr7.5.4
mr8.3
mr8.3.2
mr5.5.5
mr5.5.6
mr5.5.7
mr5.5.8
mr5.5.9
mr5.5.10
mr5.5.11
mr6.5.8
mr8.2.2
mr8.3.1
mr8.2
mr8.1
mr8.0
mr8.1.2
mr7.5.2
mr7.5.3
mr8.1.1
mr8.2.1
mr8.0.2
mr6.5.7
mr7.5.1
mr8.0.1
mr4.5
mr4.5.13
mr6.5.6
mr7.4
mr7.4.2
mr6.5.1
mr6.5.2
mr6.5.3
mr6.5.4
mr6.5.5
mr7.3.2
mr7.4.1
mr7.3
mr7.2.2
mr7.3.1
mr7.2
mr7.1
mr7.1.2
mr7.2.1
mr4.5.12
mr7.0
mr7.0.2
mr7.1.1
mr7.0.1
mr4.5.11
mr6.4.1
mr6.4
mr6.4.2
mr4.5.10
mr6.3.2
mr6.3
mr3.8
mr3.8.13
mr6.2.2
mr6.2
mr4.5.9
mr6.3.1
mr6.0
mr6.1
mr6.1.2
mr6.2.1
mr5.5.4
mr4.5.8
mr6.0.2
mr5.5.2
mr5.5.3
mr6.0.1
mr6.1.1
mr4.5.7
mr3.8.12
mr5.4
mr5.4.2
mr5.5.1
mr4.5.6
mr3.8.11
mr5.3
mr5.3.2
mr5.4.1
mr4.5.5
mr5.2
mr5.2.2
mr5.3.1
mr5.1
mr5.1.2
mr3.8.10
mr5.2.1
mr5.0
mr4.5.4
mr5.0.2
mr5.1.1
mr4.5.3
mr5.0.1
mr3.8.9
mr4.5.2
mr3.8.8
mr4.4
mr4.4.2
mprokop/pytest
mr4.5.1
mr4.4.1
mr3.8.7
mr4.3
mr4.3.2
mr3.8.6
mr4.2
mr4.2.2
mprokop/testing
mr4.3.1
mprokop/tests
mr4.2.1
mr3.8.5
mr4.1
mr4.1.2
mr3.8.4
mr4.0
mr4.0.2
mr4.1.1
mr4.0.1
mr3.8.3
mprokop/autopkgtest2
mr3.8.2
mr3.8.1
mr3.7
mr3.7.2
mr3.6
mr3.7.1
mprokop/autopkgtests
mr3.5.1
mr3.5
mr3.6.2
mr3.6.1
mr3.4
mr3.4.2
vseva/db_defaults
vseva/8419
mr3.4.1
mr3.3
mr3.3.2
mprokop/7577_services
mr3.3.1
mr3.2
mr3.2.2
mr3.2.1
0.18
0.17
mprokop/autopkgtest
mika/header-note
agranig/header-note
sync-replication
0.19.0
0.18.2
0.18.1
0.18.0
0.17.1
0.17.0
0.16.0
0.17.2
0.18.3
mr10.0.1.1
mr10.0.1.2
mr10.1.1.1
mr10.1.1.2
mr10.1.1.3
mr10.2.1.1
mr10.2.1.2
mr10.3.1.1
mr10.4.1.1
mr10.4.1.2
mr10.5.1.1
mr10.5.1.2
mr10.5.1.3
mr10.5.2.1
mr10.5.2.2
mr10.5.2.3
mr10.5.3.1
mr10.5.3.2
mr10.5.4.1
mr10.5.4.2
mr10.5.5.1
mr10.5.6.1
mr10.5.7.1
mr10.5.8.1
mr10.5.8.2
mr11.0.1.1
mr11.0.1.2
mr11.1.1.1
mr11.1.1.2
mr11.1.1.3
mr11.1.1.4
mr11.1.1.5
mr11.2.1.1
mr11.2.1.2
mr11.2.1.3
mr11.2.1.4
mr11.3.1.1
mr11.3.1.2
mr11.3.1.3
mr11.4.1.1
mr11.5.1.1
mr11.5.1.2
mr11.5.1.3
mr11.5.1.4
mr11.5.1.5
mr11.5.1.6
mr12.0.1.1
mr12.0.1.2
mr12.0.1.3
mr12.1.1.1
mr12.1.1.2
mr12.2.1.1
mr12.2.1.2
mr12.3.1.1
mr12.4.1.1
mr12.5.1.1
mr12.5.1.2
mr12.5.1.3
mr12.5.1.4
mr13.0.1.1
mr13.1.1.1
mr13.2.1.1
mr13.2.1.2
mr13.3.1.1
mr3.2.1.1
mr3.2.1.2
mr3.2.2.1
mr3.3.1.1
mr3.3.1.2
mr3.3.2.1
mr3.4.1.1
mr3.4.1.2
mr3.4.2.1
mr3.5.1.1
mr3.5.1.2
mr3.5.1.3
mr3.5.1.4
mr3.6.1.1
mr3.6.1.2
mr3.6.2.1
mr3.6.2.2
mr3.7.1.1
mr3.7.2.1
mr3.8.1.1
mr3.8.1.2
mr3.8.10.1
mr3.8.11.1
mr3.8.12.1
mr3.8.13.1
mr3.8.2.1
mr3.8.3.1
mr3.8.3.2
mr3.8.3.3
mr3.8.3.4
mr3.8.4.1
mr3.8.5.1
mr3.8.6.1
mr3.8.7.1
mr3.8.8.1
mr3.8.9.1
mr4.0.1.1
mr4.0.1.2
mr4.0.1.3
mr4.0.1.4
mr4.0.2.1
mr4.1.1.1
mr4.1.1.2
mr4.1.2.1
mr4.2.1.1
mr4.2.1.2
mr4.2.2.1
mr4.3.1.1
mr4.3.2.1
mr4.4.1.1
mr4.4.1.2
mr4.4.1.3
mr4.4.2.1
mr4.5.1.1
mr4.5.1.2
mr4.5.1.3
mr4.5.1.4
mr4.5.1.5
mr4.5.10.1
mr4.5.11.1
mr4.5.12.1
mr4.5.13.1
mr4.5.2.1
mr4.5.3.1
mr4.5.3.2
mr4.5.3.3
mr4.5.3.4
mr4.5.4.1
mr4.5.5.1
mr4.5.6.1
mr4.5.7.1
mr4.5.8.1
mr4.5.9.1
mr5.0.1.1
mr5.0.1.2
mr5.0.1.3
mr5.0.2.1
mr5.1.1.1
mr5.1.2.1
mr5.2.1.1
mr5.2.2.1
mr5.3.1.1
mr5.3.2.1
mr5.4.1.1
mr5.4.2.1
mr5.5.1.1
mr5.5.10.1
mr5.5.10.2
mr5.5.11.1
mr5.5.11.2
mr5.5.12.1
mr5.5.12.2
mr5.5.12.3
mr5.5.13.1
mr5.5.2.1
mr5.5.2.2
mr5.5.3.1
mr5.5.3.2
mr5.5.4.1
mr5.5.5.1
mr5.5.5.2
mr5.5.5.3
mr5.5.6.1
mr5.5.6.2
mr5.5.7.1
mr5.5.7.2
mr5.5.8.1
mr5.5.8.2
mr5.5.9.1
mr5.5.9.2
mr5.5.9.3
mr6.0.1.1
mr6.0.1.2
mr6.0.2.1
mr6.1.1.1
mr6.1.1.2
mr6.1.2.1
mr6.2.1.1
mr6.2.1.2
mr6.2.2.1
mr6.2.2.2
mr6.2.2.3
mr6.3.1.1
mr6.3.2.1
mr6.3.2.2
mr6.4.1.1
mr6.4.1.2
mr6.4.1.3
mr6.4.1.4
mr6.4.2.1
mr6.5.1.1
mr6.5.1.2
mr6.5.1.3
mr6.5.1.4
mr6.5.1.5
mr6.5.1.6
mr6.5.10.1
mr6.5.11.1
mr6.5.11.2
mr6.5.12.1
mr6.5.13.1
mr6.5.2.1
mr6.5.2.2
mr6.5.2.3
mr6.5.2.4
mr6.5.3.1
mr6.5.3.2
mr6.5.4.1
mr6.5.4.2
mr6.5.4.3
mr6.5.4.4
mr6.5.5.1
mr6.5.5.2
mr6.5.5.3
mr6.5.6.1
mr6.5.6.2
mr6.5.7.1
mr6.5.8.1
mr6.5.8.2
mr6.5.9.1
mr6.5.9.2
mr6.5.9.3
mr7.0.1.1
mr7.0.1.2
mr7.0.1.3
mr7.0.2.1
mr7.1.1.1
mr7.1.2.1
mr7.2.1.1
mr7.2.2.1
mr7.2.2.2
mr7.3.1.1
mr7.3.1.2
mr7.3.2.1
mr7.3.2.2
mr7.4.1.1
mr7.4.1.2
mr7.4.2.1
mr7.5.1.1
mr7.5.1.2
mr7.5.1.3
mr7.5.10.1
mr7.5.10.2
mr7.5.10.3
mr7.5.11.1
mr7.5.12.1
mr7.5.13.1
mr7.5.2.1
mr7.5.2.2
mr7.5.2.3
mr7.5.3.1
mr7.5.3.2
mr7.5.4.1
mr7.5.4.2
mr7.5.4.3
mr7.5.4.4
mr7.5.5.1
mr7.5.5.2
mr7.5.6.1
mr7.5.7.1
mr7.5.7.2
mr7.5.8.1
mr7.5.9.1
mr8.0.1.1
mr8.0.1.2
mr8.0.2.1
mr8.1.1.1
mr8.1.1.2
mr8.1.1.3
mr8.1.1.4
mr8.1.2.1
mr8.2.1.1
mr8.2.1.2
mr8.2.1.3
mr8.2.2.1
mr8.2.2.2
mr8.3.1.1
mr8.3.1.2
mr8.3.2.1
mr8.4.1.1
mr8.4.1.2
mr8.4.1.3
mr8.4.1.4
mr8.4.1.5
mr8.4.2.1
mr8.5.1.1
mr8.5.1.2
mr8.5.1.3
mr8.5.10.1
mr8.5.11.1
mr8.5.11.2
mr8.5.12.1
mr8.5.2.1
mr8.5.2.2
mr8.5.2.3
mr8.5.2.4
mr8.5.3.1
mr8.5.3.2
mr8.5.3.3
mr8.5.3.4
mr8.5.3.5
mr8.5.4.1
mr8.5.4.2
mr8.5.4.3
mr8.5.5.1
mr8.5.5.2
mr8.5.6.1
mr8.5.6.2
mr8.5.6.3
mr8.5.7.1
mr8.5.8.1
mr8.5.9.1
mr8.5.9.2
mr9.0.1.1
mr9.0.1.2
mr9.0.1.3
mr9.1.1.1
mr9.1.1.2
mr9.1.1.3
mr9.1.1.4
mr9.2.1.1
mr9.2.1.2
mr9.2.1.3
mr9.3.1.1
mr9.3.1.2
mr9.3.1.3
mr9.4.1.1
mr9.4.1.2
mr9.4.1.3
mr9.5.1.1
mr9.5.1.2
mr9.5.1.3
mr9.5.1.4
mr9.5.1.5
mr9.5.2.1
mr9.5.2.2
mr9.5.2.3
mr9.5.3.1
mr9.5.4.1
mr9.5.5.1
mr9.5.5.2
mr9.5.6.1
mr9.5.6.2
mr9.5.7.1
mr9.5.7.2
mr9.5.8.1
mr9.5.9.1
${ noResults }
Git doesn't track file permissions (except for the executable flag). For sensitive data (like the 'ssl' directory and file 'constants.yml' with passwords included) we've to prevent non-root users from accessing those files. hooks/pre-commit is inspired and based on the implementation as present in etckeeper (and luckily we're license compatible) and takes care of storing the file permissions inside file /etc/ngcp-config/.ngcpcfg_perms. The restore-permissions helper script takes care of restoring the permissions after cloning the ngcpcfg repository via ngcpcfg itself (being actions decrypt, pull (PRO-only) + initialise (PRO-only)). It can be executed manually as well via `usr/share/ngcp-ngcpcfg/helper/restore-permissions /etc/ngcp-config/` (or wherever the according ngcpcfg repository is placed at). Regarding the commit integration: git(1) itself doesn't track file permissions, so we can't detect changes to file permissions using git itself. Our new pre-commit hook records file permissions via the .ngcpcfg_perms file. Now by just invoking it during 'ngcpcfg commit' time we can ensure that even if there have been any file permission changes in the working directory the file .ngcpcfg_perms is then up2date and committed. JFTR: The solution via the git pre-commit hook ensures that no matter whether you're using 'ngcpcfg commit …' or 'git commit …' you always get the file permissions handled via .ngcpcfg_perms. Now if you want to change file permissions in a clean working directory and commit *without* using 'ngcpcfg commit' but directly via git itself then you've to use 'git commit --allow-empty ...' and thanks to the pre-commit hook the file .ngcpcfg_perms will still be up2date. Change-Id: I84d608585c626b52112ff649893e232e441c59d8 |
9 years ago | |
---|---|---|
.. | ||
pre-commit | MT#22361 Remember file permissions through pre-commit hook + restore-permissions helper script | 9 years ago |