lp:s3fs

Created by zlj and last modified
Get this branch:
bzr branch lp:s3fs

Related bugs

Related blueprints

Branch information

Owner:
zlj
Project:
s3fs
Status:
Development

Import details

Import Status: Suspended

This branch is an import of the Subversion branch from http://s3fs.googlecode.com/svn/trunk/s3fs.

Last successful import was .

Import started on galapagos and finished taking 20 seconds — see the log
Import started on russkaya and finished taking 40 seconds — see the log
Import started on neumayer and finished taking 30 seconds — see the log
Import started on galapagos and finished taking 40 seconds — see the log

Whiteboard

20100625 maxb It seems to me that importing /trunk/s3fs, not /trunk, as the root of the branch is more likely what is desirable?
20100625 maxb Requester confirmed the above. Edited and approved.
20101123 thumper /svn/trunk/s3fs was not found on this server -- suspending

Recent revisions

95. By Dan Moore

Added command line option for debug (-d or --debug)

Sending DEBUG messages to syslog is off by default.
-d (or --debug) enables DEBUG messages to go to
syslog

Additionally, if an additional -d command line option
is given, then the -d option is passed to FUSE, upon
which FUSE outputs debug messages to STDOUT

resolves issue #120

94. By Dan Moore

A couple of small changes to the check collateral:

- The script was looking for /root/.passwd-s3fs on my debian
machine (it worked correctly on Ubuntu). Fixed the common.sh
file to always look in the SUDO_USER's home directory

- Added the passwd_file option to the s3fs command. Since the
test runs as root, the $SUDO_USER's password file wasn't
being looked for by the program itself. Instead the normal
precedence was being followed and the /etc/passwd-s3fs file
was being used.

93. By Dan Moore

Fixed issue #123 - Check permissions on password file used

If any password file is used, regardless if it is specified
on the command line, ~/.passwd-s3fs or /etc/passwd-s3fs it
is checked for appropriate permissions.

No password file is allowed to have any others permissions

Only the /etc/passwd-s3fs file is allowed to have any
group permissions, all others are not allowed to have
any group permissions.

92. By apetresc

Usability improvement: use the ${SUDO_USER} environment provided by sudo to create the bucket based on the user who invoked the test using sudo. Much better this way.

91. By apetresc

Making the test bucket be based on ${USER}. This requires the bucket to already exist. S3FS doesn't report an error when mounting if it doesn't exist, so the test fails strangely in such cases.

The correct way to solve this is to consistently faily when mounting. Also offer a flag to forcefully create the bucket if it doesn't yet exist.

90. By apetresc

Added a simple integration test, and properly integrated it with autotools.

To run integration tests, just use: sudo make check
This will give you a report of all passes and failures.

To add an integration test, just add it to the TESTS variable in s3fs/test/Makefile.am
Make sure your test sources integration-test-common.sh and require-root.sh

Having many of these for every feature will help us avoid regressions and develop with confidence.

89. By Dan Moore

Revamped the read_passwd_file function to resolve issue #114

Add support for mulitple access id/secret access keys in passwd-s3fs file

This change applies to any passwd-s3fs files.

The format of the file is more robust, error checked and extended:

  - as before, any line beginning with # is ignored
  - any empty line is ignored
  - any non-ignored line which contains a space or tab is an error
  - any non-ignored line which does not contain a : separator is an error

The format of the file is:

[bucket:]AccessKeyId:SecretAccessKey

The bucket can now be specified to allow for multiple credentials.
A default entry is as before:

AccessKeyId:SecretAccessKey

Only one default entry is allowed, if more than one default entry
is found, that is an error. A default entry is not required, if the
bucket that is being mounted has its own entry.

If the user's .passwd-s3fs file is present but credentials cannot
be determined from it, then the system-wide /etc/passwd-s3fs will
be consulted (if readable by the current user).

This change is completely backward compatable with the existing
scheme and has been well tested.

88. By Dan Moore

Fixes for several issues:

Issue #102 --help command line
Issue #107 command line checking and other error checking
Issue #112 uses getopt_long now, but FUSE's own parser is still there
           some command line checking is split between main() and the
           helper function
Issue #117 command line option for credentials file
Issue #118 use of environment variables for credentials
Issue #119 support for a local passwd-s3fs file

Big checkin, many new lines of code.

Comand line option checking is now more robust and does quite
a bit of error checking before handing the mount off to FUSE.

Cleaned up the code and made several new functions from
existing code

Many ways to supply credentials now and there is a precedance
order followed.

--help is helpful

87. By Dan Moore

Reduced minimum versions for fuse and libxml-2

Resolves issue #110 - see issue for more details

86. By Dan Moore

Added support for anonymously mounting a public bucket.

If the "public_bucket=1" option is used, then
the command line options for Access Key ID and
Secret Access Key are ignored as well as the
/etc/passwd-s3fs file

Internally, the "Authorization: AWS ..." header
line is not included in the header.

Tested on a public bucket and it appears to work.

Branch metadata

Branch format:
Branch format 7
Repository format:
Bazaar repository format 2a (needs bzr 1.16 or later)
This branch contains Public information 
Everyone can see this information.

Subscribers