I have installed the git promise type from:
*
https://build.cfengine.com/modules/promise-type-git/0.2.3/
This is a very simple example but I get an error when run in non-inform
mode:
```
git:
"cf_data_repo"
repository => "git@<server>:clustercomputing/cf_data",
destination => "$(git_data_dir)",
version => "master",
force => "true",
ssh_options => "-i /root/.ssh/id_ed25519 -o
IdentitiesOnly=yes",
update => "true
```
This is good when we run with the -I flag:
* cf-agent -IK -f ./
update.cf
```
14:17 install3.cc.surfsara.nl:~/bas/cf_masterfiles/working (master)
root# cf-agent -KI -f ./
update.cf
info: Checkout 'git@<server>:clustercomputing/cf_data:master' in
'/data/cfengine3'
```
And with this one:
* 14:17 install3.cc.surfsara.nl:~/bas/cf_masterfiles/working (master)
root# cf-agent -K f ./
update.cf
```
CRITICAL: Bug in promise module - Failed to log about changes made by a
repaired git promise with promiser 'cf_data_repo'
(/root/bas/cf_masterfiles/working/./lib/update/
bundle.cf:65)
```
This is due to the fact in the `git.py`:
```
if output == "HEAD":
detached = True
output = self._git(
model,
[model.executable, "rev-parse", "HEAD"],
cwd=model.destination,
)
if output != model.version:
self.log_info(
"Checkout '{repository}:{version}' in
'{destination}'".format(
repository=model.repository,
version=model.version,
destination=model.destination,
)
)
self._git(
model,
[model.executable, "checkout",
model.version],
cwd=model.destination,
)
result = Result.REPAIRED
```
the `result line is the cause of the problem. The problem that I want to
update the `master` branch and the `ouput` is compared against a branch
name:
```
verbose: Run: git rev-parse --abbrev-re HEAD
debug: Received line from module:
'log_verbose=--abbrev-re\nca3df8de2987a4b2a2e49768de9c7f9fe53349b3'
verbose: --abbrev-re\nca3df8de2987a4b2a2e49768de9c7f9fe53349b3
```
That is not equal branch name `master`. Is the a bug or did I something
wrong?
--
--
Bas van der Vlies
| High Performance Computing & Visualization | SURF| Science Park 140 |
1098 XG Amsterdam
| T
+31 (0) 20 800 1300 |
bas.van...@surf.nl |
www.surf.nl |