Commit graph

195 commits

Author SHA1 Message Date
Tommi Virtanen
a5a758a407 Create ~git/gitosis in gitosis-init.
This fixes problems with e.g. "No such file or directory:
'/.../git/gitosis/projects.list.42.tmp'" in generate_project_list when
running gitosis-init.

Existing users need to run::

	 sudo install -d -m0755 -o git -g git ~git/gitosis

adjust the user and group name if necessary. Alternatively,
just rerun gitosis-init.
2007-12-11 22:29:43 +02:00
Tommi Virtanen
2078a0c828 Write gitweb projects.list to ~/gitosis, not inside the gitosis-admin repo.
This allows running gitweb as a separate user without needing to allow it
read access to gitosis-admin.git. Running as separate user will still most
likely require a ``chgrp www-data`` of the relevant repositories, but
nothing not already decided public needs to be exposed.

Existing gitweb users will need to adjust their gitweb.conf to point to
the new location of the projects.list file.

Removing the old projects.list from
~git/repositories/gitosis-admin.git/projects.list is safe once gitweb
has switched to using the new location.
2007-11-29 00:40:34 +02:00
Tommi Virtanen
6ab2aa0a4b Add instructions for using gitweb. 2007-11-25 18:32:02 +02:00
Tommi Virtanen
d875e0fe5a Add instructions for using git-daemon. 2007-11-25 18:14:29 +02:00
Tommi Virtanen
e6940bfa94 Add TODO note. 2007-11-18 18:09:35 +02:00
Tommi Virtanen
107833667a Let *.pub files have multiple lines, each containing one SSH key.
Makes managing accounts and access for people with multiple client
machines easier.
2007-11-18 18:08:09 +02:00
Tommi Virtanen
bda6572c92 When autocreating repositories on push, set git-daemon-export-ok etc.
Without this, it would need a separate push to gitosis-admin.git,
after the repository is autocreated, to get it to show up and be
anonymously usable.
2007-11-18 17:50:02 +02:00
Tommi Virtanen
af0081a197 Update TODO list.
In a gitosis-style setup, you can deal with most needs for cloneurl
via git_base_url_list in gitweb.conf.
2007-11-18 17:30:08 +02:00
Tommi Virtanen
4e76065fb7 Set description from config file for gitweb use. 2007-11-17 17:40:34 +02:00
Tommi Virtanen
d85d60f73c Make repository.export work even with relative git_dir.
It changes the current directory, so it can't set --git-dir to a
(potentially) relative path. Make path absolute before using it.

This should fix post-update hook problems.
2007-11-17 16:49:53 +02:00
Tommi Virtanen
13c89cdb7d Manage git-daemon-export-ok flags from gitosis config. 2007-11-17 16:27:21 +02:00
Tommi Virtanen
2487c658ba Add unit test for gitweb.generate_project_list. 2007-11-17 14:32:43 +02:00
Garry Dolley
8bbf93c532 generate_fp should be generate_project_list_fp 2007-11-17 01:46:07 -08:00
Tommi Virtanen
5bd5bd5bfc Give meaningful name to gitweb projects.list generation.
Remove mentions of cancelled gitweb.conf generation from docstrings.
2007-11-15 22:22:19 +02:00
Tommi Virtanen
a30645db52 Remove TODO to create gitweb.conf, that would be a security issue.
Implementing it would mean user git could run perl code as www-data,
on most setups. Not good.
2007-11-15 22:04:22 +02:00
Tommi Virtanen
e8f6d7947d Bring TODO list up to date. 2007-11-15 22:02:31 +02:00
Tommi Virtanen
6e76b0da05 Avoid decorators to be compatible with python2.3 (for now). 2007-11-15 21:23:07 +02:00
Tommi Virtanen
24e1196507 Depend on a new enough setuptools to preserve data file access modes. 2007-11-15 21:11:59 +02:00
Tommi Virtanen
a2e5470426 Create leading directories when creating missing repos in gitosis-serve.
Creation is in gitosis.serve and not directly in repository.init(),
because that's the location that can tell what part of the directory
tree is allowed to be missing. Made the reconstructed git command
include the extension as that was easier to do.

haveAccess return value is now tuple, to preserve information on what
parts of the path can be missing.
2007-11-15 20:56:15 +02:00
Tommi Virtanen
ea9ee97046 Fix copy-paste that made gitosis.gitweb use wrong logger. 2007-11-15 20:52:47 +02:00
Tommi Virtanen
810179e4d4 Make repository.export work with newer git.
gitosis-init and the post-update hook used to fail with
GitCheckoutIndexError, when run with git >=1.5.3, which made
checkout-index require GIT_WORK_TREE, jump through hoops to provide
it, but still be backwards compatible with older git.

Thanks to Garry Dolley for hunting the bug.
2007-11-15 19:02:55 +02:00
Tommi Virtanen
a3fc27143a Make gitosis-serve pass through environment to git-shell. 2007-11-15 17:25:36 +02:00
Tommi Virtanen
7743e80d87 Make repository.export unit tests use --git-dir= too. 2007-11-15 17:22:06 +02:00
Tommi Virtanen
8e488ad02f Make repository.has_initial_commit pass through environment to git. 2007-11-15 17:20:39 +02:00
Tommi Virtanen
aa529dcd65 Make repository.export pass through environment to git. 2007-11-15 17:17:20 +02:00
Tommi Virtanen
aa1c0712be Make repository.fast_import pass through environment to git. 2007-11-15 17:10:40 +02:00
Tommi Virtanen
a9e37272cd Make repository.init pass through environment to git. 2007-11-15 17:10:25 +02:00
Tommi Virtanen
c81daadc79 Missed mkdir in README 2007-10-30 18:26:49 +02:00
Tommi Virtanen
c83c23fbaf Update for release v0.2. 2007-09-03 23:28:35 -07:00
Tommi Virtanen
a813f31370 Add TODO notes. 2007-09-03 23:26:14 -07:00
Tommi Virtanen
805688c08e Fix initial push syntax in README. Needs to say "refs/heads/". 2007-09-03 23:26:14 -07:00
Tommi Virtanen
876231753f Clean up more files in debian/rules. 2007-09-03 23:26:14 -07:00
Tommi Virtanen
777eaffbad Mark the generated egg as non-zip-safe. 2007-09-03 23:26:14 -07:00
Tommi Virtanen
5df4b0c4f8 Ensure "git init" doesn't write to stdout, and confuse a push.
The repository autocreation functionality ends up sending the
stdout to the client side, and there a very confused git push
can't make any sense of the protocol.
2007-09-03 23:26:14 -07:00
Tommi Virtanen
4d793f6fd4 Make sure ~git/.ssh exists in gitosis-init. 2007-09-03 22:06:37 -07:00
Tommi Virtanen
e7a1cc68c7 Let SSH public key user fields have a bit more varied content. 2007-09-03 22:06:37 -07:00
Tommi Virtanen
19d507c754 Fix whitespace in README. 2007-09-03 21:26:45 -07:00
Tommi Virtanen
8bbe3b989d Add a long description to setup.py 2007-09-03 21:26:24 -07:00
Tommi Virtanen
1f3924e2cb Make gitosis-init call run_hook.post_update directly.
This avoids complexity where failing to read the config file in
gitosis-run-hook is non-fatal, but only on the first run. gitosis-init
will take care of config file reading and just pass a RawConfigParser
instance to run_hook.post_update.
2007-09-03 21:16:15 -07:00
Tommi Virtanen
1dfe84754a Make gitosis-init ignore error from non-existent config file.
Refactored config file reading and logging initialization to make
things nicer.
2007-09-03 20:54:14 -07:00
Tommi Virtanen
96216c231e Created user get home from somewhere, let adduser create it.
At least the Ubuntu/Debian adduser is nice enough not to make a mess
of system user home directories with skeleton files.
2007-09-03 20:45:24 -07:00
Tommi Virtanen
2e068602d0 Don't git init when it's not needed.
Confusion between pathnames with extensions and without made
gitosis-serve confused when it needs to create a repository
and when not.
2007-09-03 19:24:04 -07:00
Tommi Virtanen
e37b1dac1b Oops, fix bad arguments. Sadly no unit tests for this part :( 2007-09-03 19:17:48 -07:00
Tommi Virtanen
f9158dca1e Add a simple "./debian/rules generate" to build debian/control.
This is ugly and annoying but alternatives are storing generated files
in version control, or manually maintaining pesky little details.
The control file will be part of the .diff.gz.
2007-09-03 18:30:16 -07:00
Tommi Virtanen
964e6ce79c Make debian package version match setup.py 2007-09-03 17:53:16 -07:00
Tommi Virtanen
ce7cf1fad7 Make git ignore unit test coverage checking result file. 2007-09-03 17:52:23 -07:00
Tommi Virtanen
a45445dca0 Update documentation in preparation of release. 2007-09-03 17:51:44 -07:00
Tommi Virtanen
82f5857759 Make gitosis-serve not fail with commands without arguments. 2007-09-03 17:09:19 -07:00
Tommi Virtanen
8a0654abe2 Refactor command line utilities to share setup.
Hide internal gitosis-ssh and gitosis-gitweb, it's all in gitosis-run-hook.
2007-09-03 17:09:12 -07:00
Tommi Virtanen
e492d76c29 Make setuptools include templates in the egg. 2007-09-03 14:06:51 -07:00