Commit Graph

4889 Commits

Author SHA1 Message Date
mpl ae097a3960 devcam: warn when outdated
http://camlistore.org/issue/482

Change-Id: Ifafec9c9ff337aefa98e630242cb28f19495d4b5
2014-08-19 17:45:54 +02:00
Brad Fitzpatrick 6f05133c88 Merge branch 'master' of https://camlistore.googlesource.com/camlistore 2014-08-18 23:18:57 -07:00
Brad Fitzpatrick c78e9af4b6 gce: run mysql too. link it with camlistored.
I think I'm not using systemd correctly here. Things get very unhappy
if I reboot CoreOS: the Docker container named 'db' already exists, things keep
flapping up and down (not waiting for their dependencies), etc.

Maybe I need to register stop actions too.

Change-Id: I75ac3e965c03df4f7f3938ff13c66f137948bf4d
2014-08-18 23:18:45 -07:00
Brad Fitzpatrick 956e838cc0 If on GCE, use MySQL if MYSQLDB_PORT env var is set. (to linked Docker container)
Change-Id: I4fd4718e6912e7ad8127395cdf6972337a8766bc
2014-08-18 23:17:17 -07:00
Aaron Boodman 8e876b51b9 Always show the search aspect for searches, even when results are empty.
Before we did not show the search aspect when the results were empty.
This was intended for the case where you're looking at an image or
something that doesn't have children.

But it had the side effect of meaning that we didn't show the search
aspect for empty sets, or empty search results, which isn't right
because you still want users to be able add items to empty sets.

Change-Id: Iad187b38317a5adcefbfd06f92047c03c5815583
2014-08-18 19:24:29 -07:00
Aaron Boodman 940150a5c7 Reimplement the Blob aspect using React.
Change-Id: I819b4d1dda86fe80db203f10e1e8a1b23b0777d5
2014-08-18 18:19:50 -07:00
Brad Fitzpatrick 082876c600 gce: don't make http client twice.
doesn't really matter, but.

Change-Id: I21495be1780e74464c7016979174ba722400ef1a
2014-08-18 17:17:33 -07:00
Brad Fitzpatrick 50f03763be Merge branch 'master' of https://camlistore.googlesource.com/camlistore 2014-08-18 17:16:18 -07:00
Brad Fitzpatrick 5a95215fcc GCE: use host's /tmp dir instead of inside container.
Change-Id: I2a52249148541c97dfdd84bac57a1605e0366471
2014-08-18 17:13:46 -07:00
Aaron Boodman 8c207ebed3 Merge "Change URL format for individual blobs in the web UI." 2014-08-18 22:27:51 +00:00
Aaron Boodman a4abea7525 Change URL format for individual blobs in the web UI.
Instead of /ui/?b=<hash>, /ui/?p=<hash>, /ui/?d=<hash>, etc...,
it's now just: /ui/<hash>

This makes constructing links easier, because you don't have to
know whether a blob is also a permanode, or a directory, or
whatever.

Change-Id: I771fa1b1699b9009269c7eee632e7e8fd5335331
2014-08-18 18:17:47 -07:00
Brad Fitzpatrick ae0607cbca Merge branch 'master' of https://camlistore.googlesource.com/camlistore 2014-08-18 15:27:44 -07:00
Brad Fitzpatrick e86d90dd42 GCE: expose host's systemd journal to camlistored; add /var/logs handler
The machine now boots with a new pair of cooperating systemd units:

1) cam-journal-gatewayd.service: a copy of the systemd-journal-gatewayd service,
   which runs an HTTP interface to the systemd journal.
2) cam-journal-gatewayd.socket: a unix socket listener listening on unix
   socket /run/camjournald.sock. Incoming connections will forward to 1).

Then the camlistored.service unit running camlistored under Docker now
passes -v /run/camjournald.sock:/run/camjournald.sock to make that unix socket
available to the Docker container.

Then in camlistored, a new handler at /debug/logs (wrapped in auth
checks) then opens that socket and makes an HTTP request to it,
copying its response (of log lines) back to the browser.

This will ease debugging, letting people only use their browser to
debug (or send logs to the Camlistore developers more likely), rather
than sshing in to CoreOS and learning CoreOS and systemd arcana.

Change-Id: Icd5967ae7e9946d36229bdbc5d37644a11ee5e9f
2014-08-18 15:20:59 -07:00
mpl 00832f8ecb third_party/kv: update to a9e92863f9c096cd0de82eb9c71af2a59174e671
with dependencies:
bufs: 3dcccbd7064a1689f9c093a988ea11ac00e21f51
exp: 9b0e4be12fbdb7b843e0a658a04c35d160371789
fileutil: 73109188c05569cd7eaf09a523a090e714fa9d37
mathutil: 1dc74626b71a300f674026585083535b6a4d3853
sortutil: e14776c5119b49f2cf829486056e411043b6b6b2
zappy: be0e6f7682658396e2ce883e87d9de3abc08fb74

Change-Id: I00c6ea4e85a62fe8268c41b1e3524ded64c235fb
2014-08-18 23:03:56 +02:00
Brad Fitzpatrick b191ece806 GCE: start systemd-journal-gatewayd.socket on boot.
Change-Id: I53e679f9a5f745c9a35904cdf65ff7844420e23b
2014-08-17 14:21:59 -07:00
Brad Fitzpatrick f86f9a1292 signhandler: minor style cleanups made while debugging
Change-Id: I3ea1537d0a6b277c49065053fc366e8f93e5e105
2014-08-17 13:56:34 -07:00
Brad Fitzpatrick d87911b39a cloudstorage: fix StatBlobs
It was saying things existed (with size 0) when they didn't.
Also fix the TODO while I'm here and do multiple things in parallel.

Change-Id: Iff8b1e6470c41af9d3094dfb6ed7cc9d8f21b281
2014-08-17 13:53:36 -07:00
Brad Fitzpatrick ed4add5cf6 serverinit: add /debug/config handler to see low-level config
Useful for debugging GCE issues.

Change-Id: Iafd20de39ed64e66c8ff6cb736ec49ed8ae568c5
2014-08-16 21:40:12 -07:00
Brad Fitzpatrick 7ee69bd716 make.go, genfileembed: track genfileembed output files and delete stale ones
Don't just trust all zembed_*.go files to be wanted. Instead, we now
ask genfileembed to write out its output files to stderr, parse that,
and add those to our set of wanted files. Then when we look for
unwanted files that aren't known outputs that now also potentially
includes zembed_*.go files.

This fixes a JavaScript breakage from when Aaron renamed some
JavaScript files recently.

Turns out I had 4 such files that were stale outputs.

In other news, I hereby declare a moratorium on updates to make.go.
It has become disgusting and is need of cleanup love before it is
disgraced further.

Change-Id: Ia1432d21ce486bfbca9e3c9db6f1852b859ebfc0
2014-08-16 18:19:38 -07:00
Brad Fitzpatrick c6b72a6e52 make.go: don't treat all ReadFile errors the same
Change-Id: Icdb2f313e77f46fba6e094cab9ae6a114c3bcef2
2014-08-16 17:35:38 -07:00
Brad Fitzpatrick 274f838f6f Add make.go support for building the camlistored Docker binary.
Change-Id: I2f8ad914b217843749c0aee57c24ce44c1c619f1
2014-08-16 14:56:40 -07:00
Brad Fitzpatrick d36efd7434 ui: Change text Server status, not just Sync status
Change-Id: I9de4d6c6ee391fac81401331f907bbbd57ab7faf
2014-08-16 14:52:57 -07:00
Brad Fitzpatrick 494e9e7814 docker: add push target
Change-Id: I82fd35a3f1e5c4a76c9774aff28328a7acc97e78
2014-08-16 14:27:51 -07:00
Brad Fitzpatrick c28e6736b8 Merge branch 'master' of https://camlistore.googlesource.com/camlistore 2014-08-16 11:58:29 -07:00
Brad Fitzpatrick dbc1a681bc Add importers to status.
For http://camlistore.org/issue/483

Change-Id: I2621c5484efb121a5e5e24debeff64ffc5139ad3
2014-08-16 11:58:16 -07:00
Aaron Boodman 4b9874afd5 Fix UI refresh when you don't have websocket support.
I broke this in an early CL. Damn you JavaScript and your non-compiling.

Change-Id: I796bb19855802d7663e0aed9c7e30ddcc4061b44
2014-08-16 11:05:29 -07:00
Brad Fitzpatrick 774de12e5e Merge "website: add camlistore error handler" 2014-08-16 14:56:11 +00:00
mpl eb0578a17c website: add camlistore error handler
http://camlistore.org/issue/276

Change-Id: I786d8a858624caeb9258ae6b2a21056a4f79d246
2014-08-19 02:25:52 +02:00
mpl 22c13c7e88 Merge "blobserver/protocol: use blob.SizedRef to upload" 2014-08-16 07:00:29 +00:00
mpl d36b42862c blobserver/protocol: use blob.SizedRef to upload
Change-Id: I4b38b07869e08c2ccdcb76898dc908e6358501b0
2014-08-18 19:36:34 +02:00
mpl 138101c6b9 Merge "osutil: selfpath for windows, and make it public." 2014-08-16 07:00:18 +00:00
mpl c5630a8906 osutil: selfpath for windows, and make it public.
Change-Id: Ic3e8de6e75651921cb29e3b5e91cdb9f5159896a
2014-08-18 22:30:01 +02:00
Brad Fitzpatrick 9dae4f7ddf Since GCE only links to the HTTP url, redirect HTTP requests to https.
Change-Id: I50ff31f0d27437a11f672565e5f0870aaa2fd81b
2014-08-15 23:17:14 -07:00
Brad Fitzpatrick 4106d1bd2e Merge branch 'master' of https://camlistore.googlesource.com/camlistore 2014-08-15 22:29:55 -07:00
Brad Fitzpatrick e92090e948 googlestorage: set the Content-Type for objects.
Change-Id: If7a66795f6c53601c67d1f92ccbc5df3d9f4acd5
2014-08-15 22:27:15 -07:00
Brad Fitzpatrick 38b97e1b9a Add Dockerfile and Makefile for 'camlistore/camlistored' Docker image.
Change-Id: Ied7055689f1946ce0e6a857b4e6ddd5f8dca79b9
2014-08-15 22:20:57 -07:00
Brad Fitzpatrick 38cceb30aa misc/gce: flesh out enough to boot instances running Camlistore.
Polish remains.

Change-Id: I998cf4d515049e6d0e462fa6c259c39fc1638cf2
2014-08-15 22:18:10 -07:00
Brad Fitzpatrick d2f6f9e057 serverinit: in the GCE env, set the BaseURL based on the IP address for now.
Change-Id: I3be51c52ac78e6f6d7cf373cbc358ac1244526c4
2014-08-15 22:06:13 -07:00
Brad Fitzpatrick cab5f227f6 Handle serverinit.DefaultEnvConfig return values correctly.
Change-Id: I074507fc1e32d62f2d1b8af00f4ce47d733d89a7
2014-08-15 22:05:33 -07:00
Brad Fitzpatrick 79335328cc Make 2048 bit keys instead of 1024.
Change-Id: I82a93a7fc5ba8e6b688a422b55b868bb3f3969fa
2014-08-15 22:05:08 -07:00
Brad Fitzpatrick cf380d917f Update gce to aef7815
Change-Id: I35df55eebae3d2e18898d82d4bbab8c8825af78a
2014-08-15 22:04:36 -07:00
Aaron Boodman 1e0db747fd Make directory aspect actually work.
Change-Id: I560cb9c8d91a395c26253d7fd4a8ec605671a910
2014-08-15 21:37:43 -07:00
Aaron Boodman 6b9ed9e467 Some cleanup: remove an unneeded file and rename another.
Change-Id: I7ef87c7fcfc831d40b2c507128de04b7c8b20d1c
2014-08-15 21:37:22 -07:00
Aaron Boodman 89bcd69bed Merge "Add a piggy menu item to go to the sync status page." 2014-08-16 04:20:08 +00:00
Aaron Boodman 2cb1956a3a Add a piggy menu item to go to the sync status page.
Also add support for piggy menu items that are just links. Links are
nice because you can right-click 'em and so on.

Change-Id: I0cfb4ba6f58141ee396916925793a06033457028
2014-08-16 10:57:11 -07:00
Aaron Boodman a6450f6468 Merge "Propagate all clicks in the hacky child frame up to the main app." 2014-08-16 04:20:08 +00:00
Aaron Boodman 48803d183b Propagate all clicks in the hacky child frame up to the main app.
This is temporary duct tape to make the child frames work better
utnil they are rewritten.

Change-Id: I1822af95620164896b959f946b9a888e6ecdf91f
2014-08-15 21:19:54 -07:00
Brad Fitzpatrick 9fbec8dd12 serverinit, camlistored: support environment-specific default config files
When running on GCE now, the default config file is a function of
attributes on the instance.

Change-Id: I62fe23ecf28757a6baee6bd432f080f223a389c5
2014-08-15 20:50:59 -07:00
Brad Fitzpatrick 03739edb2a serverinit: break WriteDefaultConfigFile up, pull out getOrMakeKeyring
Change-Id: I8322f975baba0037138af30d0bb59572f852b3ed
2014-08-15 20:49:26 -07:00
Brad Fitzpatrick 81b4417e8c server: ignore errors looking up optional username.
Change-Id: I457f604c60726beaf9d263c07fb0283035696fd2
2014-08-15 18:24:23 -07:00