Hello, since a few days I got this error message when I am doing
This is on a Debian unstable computer. I do no tknow if this is related to the git 2.4.x -> 2.5.x upgrade
:~/.propellor$ propellor Building propellor-2.6.0... Preprocessing library propellor-2.6.0... In-place registering propellor-2.6.0... Preprocessing executable 'propellor' for propellor-2.6.0... Preprocessing executable 'propellor-config' for propellor-2.6.0... Propellor build ... done Enter passphrase for key '/home/picca/.ssh/id_rsa': Pull from central git repository ... done Building propellor-2.6.0... Preprocessing library propellor-2.6.0... In-place registering propellor-2.6.0... Preprocessing executable 'propellor' for propellor-2.6.0... Preprocessing executable 'propellor-config' for propellor-2.6.0... Propellor build ... done [master 08f2f53] propellor spin Git commit ... done Enter passphrase for key '/home/picca/.ssh/id_rsa': Décompte des objets: 1, fait. Écriture des objets: 100% (1/1), 202 bytes | 0 bytes/s, fait. Total 1 (delta 0), reused 0 (delta 0) To ssh://xxxxxxxxxxxxxxxxxxxxxxxxxxxx/propellor.git 3a4d960..08f2f53 master -> master Push to central git repository ... done root@xxxxxx's password: Depuis git://xxxxxxxxxxxxxxxxxxxx/propellor 3a4d960..08f2f53 master -> origin/master Pull from central git repository ... done Sending privdata (11 bytes) to mordor ... done error: unknown option `gitpush' usage : git fetch [] [<dépôt> [<spécification-de-référence>...]] ou : git fetch [] ou : git fetch --multiple [] [(<dépôt> | )...] ou : git fetch --all []
-v, --verbose être plus verbeux
-q, --quiet être plus silencieux
--all récupérer depuis tous le dépôts distants
-a, --append ajouter à .git/FETCH_HEAD au lieu de l'écraser
--upload-pack <chemin>
chemin vers lequel télécharger le paquet sur le poste distant
-f, --force forcer l'écrasement de la branche locale
-m, --multiple récupérer depuis plusieurs dépôts distants
-t, --tags récupérer toutes les étiquettes et leurs objets associés
-n ne pas récupérer toutes les étiquettes (--no-tags)
-p, --prune éliminer les branches de suivi distant si la branche n'existe plus dans le dépôt distant
--recurse-submodules[=<à la demande>]
contrôler la récupération récursive dans les sous-modules
--dry-run simuler l'action
-k, --keep conserver le paquet téléchargé
-u, --update-head-ok permettre la mise à jour de la référence HEAD
--progress forcer l'affichage de l'état d'avancement
--depth <profondeur> approfondir l'historique d'un clone superficiel
--unshallow convertir en un dépôt complet
--update-shallow accepter les références qui mettent à jour .git/shallow
--refmap <correspondance de référence>
spécifier une correspondance de référence pour la récupération
propellor: : hIsTerminalDevice: illegal operation (handle is closed) error: git-upload-pack died of signal 13 Sending git update to mordor ... failed propellor: user error (ssh ["-o","ControlPath=/xxxxxxxxxxxxxxxxxxxx.sock","-o","ControlMaster=auto","-o","ControlPersist=yes","root@xxxxxx","sh -c 'if [ ! -d /usr/local/propellor/.git ] ; then (if ! git --version >/dev/null; then apt-get update && apt-get --no-install-recommends --no-upgrade -y install git; fi && echo STATUSNeedGitClone) || echo STATUSNeedPrecompiled ; else cd /usr/local/propellor && if ! cabal configure >/dev/null 2>&1; then ( apt-get update ; apt-get --no-upgrade --no-install-recommends -y install gnupg ; apt-get --no-upgrade --no-install-recommends -y install ghc ; apt-get --no-upgrade --no-install-recommends -y install cabal-install ; apt-get --no-upgrade --no-install-recommends -y install libghc-async-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-missingh-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-hslogger-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-unix-compat-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-ansi-terminal-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-ifelse-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-network-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-quickcheck2-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-mtl-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-transformers-dev ; apt-get --no-upgrade --no-install-recommends -y install libghc-exceptions-dev ; cabal update ; cabal install --only-dependencies ) || true; fi&& if ! test -x ./propellor; then cabal configure && cabal build && ln -sf dist/build/propellor-config/propellor-config propellor; fi;if test -x ./propellor && ! ./propellor --check 2>/dev/null; then cabal clean && cabal configure && cabal build && ln -sf dist/build/propellor-config/propellor-config propellor; fi && ./propellor --boot mordor ; fi'"] exited 1)
About all I can tell from this is that "git fetch" is failing, and apparently complaining about being passed a "gitpush" option.
Since the only occurrance of "gitpush" is a internal flag that propellor passes to itself, and not to git fetch, I don't know why your propellor would be doing this. Perhaps if you turn on
PROPELLOR_DEBUG
you'll find out more.Hmm, I do reproduce same problem spinning a remote host that's been upgraded to this git version.
What's happening here is propellor is running: git pull --progress --upload-pack command, where command is "./propellor --gitpush".
Apparently git's --upload-pack option parsing has changed in a way that breaks this.
I think this is a straight-up git bug. I have reported the bug to the git mailing list.
May have to work around the bug by just passing "./propellor" to --upload-pack, and using environment variables to tell it what to do.
Erm.. AFAIKS, git pull is no longer running --upload-pack specified command at all. So it seems git has completely defeated how propellor --spin sends a git push over its ssh channel. I don't have any prospect of a fix right now.
I have found a workaround -- Since git pull is broken, it can instead do a git fetch followed by a git merge. I've put that fix in place.
Unfortunately, --spin can't be used to deploy a fix that breaks the --spin transport! So, hosts that are suffering from this problem will need to have their propellor git repos updated in some other way, like pulling from a central git repo.
Hello I built the debian package of your git repository with debuild and installed it.
then I run propellor in order to upgrade my local repo
:~/.propellor$ propellor warning: Your /home/picca/.propellor is out of date.. A newer upstream version is available in /usr/src/propellor/propellor.git To merge it, find the most recent commit in your repository's history that corresponds to an upstream release of propellor, and set refs/remotes/upstream/master to it. Then run propellor again.
So I followed the advices, found the most recent commit which was the one created when I run for the first time propellor cb7f1acc108609b345dbec26d8113513bf7b4ece
But now when I run propellor,I get thir message
:~/.propellor$ propellor warning: Your /home/picca/.propellor is out of date.. A newer upstream version is available in /usr/src/propellor/propellor.git To merge it, run: git merge upstream/master
But when I try the merge,
~/.propellor$ git merge upstream/master Already up-to-date.
so nothing happend
Hmm, not sure that's going on there, perhaps you've found a way to break the propellor debian package, which has not been much used AFAIK.
Seems to me it would be easier to pull the fix into your propellor repository from eg, propellor's public git repository.
Yes you are right I generated the Debian package but not from a tagged version. Now that I created the 2.7.1 version from the tag, it works.
thanks