| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This attempts to create the target repository outside the call to
util.copy_dir(), since internally it uses mkdir_p, which doesn't
distinguish between a repository that already exists.
If this check is not made, then it will fail to create a file inside
the repository since it already exists, then attempt to clean up after
itself, possibly silently breaking the in progress copy.
|
| |
| |
| |
| |
| | |
This will create a repository in a different path, so it does not
appear until the copy is complete.
|
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| |
| | |
This is complicated enough it could be split out into its own module.
The most important function is copy_dir, which along with the source
and target, is given an optional table of functions, which can be
used to change its behaviour for different types of files.
It may also be given a filter function to determine which files to
process. The default function excludes . and .. of each directory
from the set of directories to process.
It is given the parent directory, filename and fileinfo of every
file to process, so it may exclude based on any combination of
location, file name and file type by returning true.
|
| |
| |
| |
| |
| |
| |
| |
| |
| | |
hardlink file converts from luxio's raw interface to
boolean success and error message return values, which are used
elsewhere in the codebase.
copy_symlink creates a symlink with the same target as the source
symlink.
|
| | |
|
| |
| |
| |
| |
| | |
It's longer in these cases, but it's more explicitly creating
a path when using a function for it.
|
| |
| |
| |
| |
| |
| |
| |
| | |
This is like python's os.path.join. It is shorter to write
`util.path_join("foo", "bar", "baz")` than
`table.concat({"foo", "bar", "baz"}, "/")`, and I think it looks nicer.
If any special path handling is later required, then it can go there.
|
| | |
|
|\ \
| | |
| | |
| | | |
Reviewd-By: Richard Maw <richard.maw@gmail.com>
|
| | |
| | |
| | |
| | |
| | |
| | |
| | |
| | | |
Adds op_set_readme to the defines in the skeleton ruleset. This also adds
op_set_readme to op_is_config since the README is essentially configuration for
the project. Projects can perform deeper checks themselves if they wish, but
the global ruleset applies the same to README changes as to everything else to
do with project configuration.
|
| | |
| | |
| | |
| | | |
Add to the readme command the ability to alter the README of a repository.
|
| | |
| | |
| | |
| | |
| | | |
Add a set_readme method to gitano.repository so that we can programmatically
change the README.
|
| | |
| | |
| | |
| | |
| | | |
This updates the defines in the skeleton gitano-admin ruleset to include the
user rename and group rename commands.
|
| | |
| | |
| | |
| | |
| | | |
This adds reasons to all generate_confirmation calls which were
still lacking them.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Before this patch, if you used 'group del' to remove a group
which was a subgroup member of another group, the resulting config
would not parse. This fixes that.
|
| | |
| | |
| | |
| | |
| | | |
This adds a group rename command to allow the administrator to easily
rename a group including all subgroup memberships.
|
| | |
| | |
| | |
| | |
| | | |
Prior to this patch, if you did 'user delete' on a user in a group
then the group membership change was not committed.
|
| | |
| | |
| | |
| | | |
Add a rename command for users.
|
| | |
| | |
| | |
| | |
| | |
| | | |
Given we now use repository tokens in multiple places, this ensures that the
tokens can be customised with notes. This might be to ensure that a delete
user token doesn't match a rename user token for example.
|
| | |
| | |
| | |
| | |
| | | |
This adds an fsck command to the repocommand module. This allows git-fsck to
be invoked on repositories in a Gitano instance.
|
|/ /
| |
| |
| |
| |
| |
| |
| | |
Move the gc and count-objects commands to a separate repocommand
module so that we can group fsck in with them neatly.
This new module is for commands which operate neatly on a repository with
little to no extra dependencies.
|
| | |
|
|\ \
| |/
|/|
| | |
Reviewed-By: Richard Maw <richard.maw@gmail.com>
|
| |
| |
| |
| |
| | |
This adds PCRE support to the simple matcher. In order for this to work,
lrexlib is required (lua-rex-pcre in Debian/Ubuntu).
|
| |
| |
| |
| |
| |
| | |
This adds prefix and suffix simple matches and updates the default ruleset to
use them as appropriate. This actually eliminates almost all pattern matches
from the default ruleset.
|
| |
| |
| |
| |
| |
| | |
This updates the simple match routine to have a table of match functions.
Initially this only supports the exact and pattern matches, but we can add
more.
|
|/
|
|
|
|
|
|
|
| |
This alters the simple match compiler to support a definition format along the
lines of:
define some_name ref pattern ^refs/heads/
The accepted middle entries being exact, pattern, !exact and !pattern
|
|
|
|
|
|
| |
Previously, oldsha could end up with a leading newline for all but the first
ref altered during a push. This fix corrects that so that oldsha doesn't get
newlines in it.
|
| |
|
| |
|
| |
|
| |
|
|\ |
|
|/ |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|
| |
|