Subject | Hash | Author | Date (UTC) |
---|---|---|---|
TODO update and typo corrections. | 4f3aee242f4465d1c27dc1f171a72ab06ae8b822 | Catalin(ux) M. BOIE | 2016-11-06 12:39:17 |
Added possibility to use AuthorizedKeysCommand for performance reasons | bce5d32d2b419cb9bc53d54de2a915ac1342432e | Catalin(ux) M. BOIE | 2016-11-06 12:35:15 |
Restart rocketgit-fpm service if needed | 5742bea67f2e784e2b2bb9e97f005fc621c4119d | Catalin(ux) M. BOIE | 2016-11-02 19:56:53 |
Added CORS headers so API will work | 57b172971ff1329d02dc1220ec77fe9a875d6633 | Catalin(ux) M. BOIE | 2016-11-02 19:56:17 |
Added git hosting solution comparison page | 8eca6c104373fd0dbcde54691edfd9e81a3a59be | Catalin(ux) M. BOIE | 2016-11-02 19:54:26 |
Be sure a key is present or use a default one (api) | 842d587f948ff4ec9de56e2ebfd591d96b066a43 | Catalin(ux) M. BOIE | 2016-10-13 22:45:51 |
Small correction in wording agains CLA | 70dc902b1c84e6ee416d7af2af8bef319dbb7504 | Catalin(ux) M. BOIE | 2016-10-11 15:50:07 |
Make it the default: word-wrap: break-word | 1512f51eba93b6dd296246bf20432ec9223148d9 | Catalin(ux) M. BOIE | 2016-10-08 07:53:19 |
Footer: reverse last two columns | d9fe4e8adf980996d5ca06387a0a2c49236e7ad4 | Catalin(ux) M. BOIE | 2016-10-08 07:51:55 |
Post configuration must include also web conf file | 3583e8915579dc8e4c9a508bac7998a3e612e501 | Catalin(ux) M. BOIE | 2016-10-08 07:50:00 |
ssl_request_log -> rocketgit-ssl_request_log | 639e5532748729cd8a6ac8e4cf082b24e15e2eeb | Catalin(ux) M. BOIE | 2016-10-08 07:47:45 |
Add 'SSLCipherSuite PROFILE=SYSTEM' to the SSL configuration | 100d73878b3da1718cf97c58d016ed182c690a9b | Catalin(ux) M. BOIE | 2016-10-08 06:33:09 |
Instruct login user to create a repo if she/he has none. | f6f2f438deadb1ec80d32acbc8947dcc849dca19 | Catalin(ux) M. BOIE | 2016-10-08 06:24:57 |
Small changes at vm docs | 8106a47f5bf89990ba7f7dbb0f8feb319ba4d883 | Catalin(ux) M. BOIE | 2016-10-05 03:32:37 |
No need to login to find out the ip address | 55a3abd3dda66d9d0dccdc0fc27dc3dc3e7c3fa1 | Catalin(ux) M. BOIE | 2016-10-05 03:25:47 |
Bump version to 0.62 | 61acc979d8c3bb629e03dc371bba1f604f300205 | Catalin(ux) M. BOIE | 2016-10-04 18:49:31 |
TODO updates | cc78fa90ebdb7605013f2ba40b7d196d708d7415 | Catalin(ux) M. BOIE | 2016-10-04 18:49:04 |
Allow php-fpm to use lock files and to regenerate authorized_keys file | 5970fcb677e3443ff96549413df105c9956f0abf | Catalin(ux) M. BOIE | 2016-10-04 18:48:35 |
Add ServerName and ServerAlias also for TLS virtual host | 08bf46f86137767e4432222475a3ea31034a132a | Catalin(ux) M. BOIE | 2016-10-04 18:47:47 |
Bump version to 0.61 | 99a6ed768168adf45bab328c7405cd10a3e3a81d | Catalin(ux) M. BOIE | 2016-10-03 16:31:43 |
File | Lines added | Lines deleted |
---|---|---|
README | 3 | 0 |
TODO | 49 | 0 |
docker/TODO | 3 | 0 |
inc/keys.inc.php | 11 | 3 |
inc/sql.inc.php | 4 | 2 |
inc/workers.inc.php | 8 | 2 |
root/themes/default/admin/settings/ssh/hints.html | 1 | 1 |
root/themes/default/download-vm.html | 1 | 0 |
root/themes/default/hints/ssh/key.html | 1 | 1 |
tools/rg_change_pass | 1 | 1 |
File README changed (mode: 100644) (index eb8fa57..deaf3d4) | |||
126 | 126 | . Point your browser to the newly created server and you will be asked to | . Point your browser to the newly created server and you will be asked to |
127 | 127 | create the admin account. | create the admin account. |
128 | 128 | ||
129 | . As admin user, go to Admin -> Settings and check if any setting should be | ||
130 | tweaked. | ||
131 | |||
129 | 132 | . You may want to install 'qrencode' package to be able to be able to see the | . You may want to install 'qrencode' package to be able to be able to see the |
130 | 133 | two factor authentication keys as QR images. | two factor authentication keys as QR images. |
131 | 134 |
File TODO changed (mode: 100644) (index 17de6db..e7b6671) | |||
2 | 2 | [ ] | [ ] |
3 | 3 | ||
4 | 4 | == BEFORE NEXT RELEASE == | == BEFORE NEXT RELEASE == |
5 | [ ] rg_authorize seems to be executed twice! | ||
6 | [ ] Get rid of remote.sh and execute directly remote.php? | ||
7 | [ ] AuthorizedPrincipalsCommand - for certificates | ||
8 | [ ] LOW: With a lot of accounts, use AuthorizedKeysCommand with %f. | ||
9 | But, it is hard to change the configuration (as a package). | ||
10 | So, add a patch to openssh to always search for xx/xx/xx/fingerprint | ||
11 | "authorize_keys" file, where xx is a part of the fingerprint. | ||
12 | Pay attention, if the file is found, do not fall back to authorize_keys | ||
13 | file! So, rocketgit can generate both and will work without changes. | ||
14 | Better, extend % commands: %1 %2 %3 %4 to means byte 1, 2, 3 and 4 from fingerprint. | ||
15 | [ ] Bug user to confirm the e-mail. | ||
16 | [ ] Add a privacy policy | ||
17 | [ ] Provide qcow2 image for direct boot with copy-on-read and for OpenStack. | ||
18 | [ ] Add custom web page messages (idea from GitLab) | ||
19 | Also, add them for ssh/git. | ||
20 | [ ] Add a log per user as per project. | ||
21 | [ ] Add expiration for keys, api key, hooks, rights etc. | ||
22 | [ ] Debian: on reconfigure - add admin account? | ||
23 | [ ] Investivate gc.*, repack.* etc. configuration. | ||
24 | [ ] Use .mailmap when building stats? | ||
25 | [ ] Before start a builing, check if it was already built. | ||
26 | Think about a fast forward. | ||
27 | [ ] API: When loading info about a user, do we need to show the e-mail? | ||
28 | [ ] API: Seems I get: | ||
29 | PHP ERROR: Unknown:0: Automatically populating $HTTP_RAW_POST_DATA is deprecated and will be removed in a future version. To avoid this warning set 'always_populate_raw_post_data' to '-1' in php.ini and use the php://input stream instead. (errno=8192) | ||
30 | when I access the API. Probably because there is no '='! | ||
31 | [ ] '<b>Description</b>' in api cannot be right | ||
32 | Also, 'HTML:' prefixed one. Hm. | ||
33 | [ ] Add api.html javascript example for calling the API (add it in demo?) | ||
34 | [ ] Nice font: 'Open Sans', 'sans-serif' | ||
35 | "proxima-nova", 'Helvetica Neue', 'Helvetica', sans-serif | ||
36 | Think about non utf-8 chars! | ||
37 | [ ] cache: add primitive transaction support to avoid de-sync: | ||
38 | Something like: | ||
39 | BEGIN DESTROY=uid::3 | ||
40 | bla bla | ||
41 | COMMIT - if this is not present, the cache will destroy uid::3 key | ||
42 | More keys will need to be destroyed. | ||
43 | What if we cannot connect to the cache and we delete something?! | ||
44 | The cache will return the deleted stuff. | ||
45 | Maybe we should mark the cache as dead and do not use it anymore. | ||
46 | Or use it after is emptied. | ||
47 | [ ] virt-install(?) must be a dependency for the worker? | ||
48 | [ ] ci: add notification e-mail on every command/label. | ||
49 | [ ] ci: build hook: if is docker, how to specify the start image? | ||
50 | [ ] ci: when defining the build hook, specify a list of branches to merge | ||
51 | if everything is ok. Checkbox for fast-forward or not? | ||
52 | [ ] ci: if the review points are met also do auto merge. | ||
53 | How it relates to build test (order etc.)? | ||
5 | 54 | [ ] Initial commits may be very big. And we are generating them all. | [ ] Initial commits may be very big. And we are generating them all. |
6 | 55 | And this takes a lot of memory in $rg. Optimize it! | And this takes a lot of memory in $rg. Optimize it! |
7 | 56 | And, we may want to show the diff per file, not all files at once. | And, we may want to show the diff per file, not all files at once. |
File docker/TODO changed (mode: 100644) (index a68ed1f..f9ccdd0) | |||
1 | 1 | [ ] Fix rocketgit link | [ ] Fix rocketgit link |
2 | 2 | [ ] Specify docker build http://... | [ ] Specify docker build http://... |
3 | 3 | [ ] rg.sh: No test for openssh! | [ ] rg.sh: No test for openssh! |
4 | [ ] postgresql: I think "VOLUME" command is too high in the list. | ||
5 | I think it should be lower. Or maybe we let the user to | ||
6 | define the volume? | ||
4 | 7 | [ ] | [ ] |
File inc/keys.inc.php changed (mode: 100644) (index e117fb5..644f306) | |||
... | ... | $rg_keys_functions = array( | |
28 | 28 | 1000 => "rg_keys_event_new", | 1000 => "rg_keys_event_new", |
29 | 29 | 1001 => "rg_keys_event_del", | 1001 => "rg_keys_event_del", |
30 | 30 | 1002 => "rg_keys_event_regen", | 1002 => "rg_keys_event_regen", |
31 | 1003 => "rg_keys_event_notify_user" | ||
31 | 1003 => "rg_keys_event_notify_user", | ||
32 | // new style | ||
33 | 'rg_keys_event_regen' => 'rg_keys_event_regen' | ||
32 | 34 | ); | ); |
33 | 35 | rg_event_register_functions($rg_keys_functions); | rg_event_register_functions($rg_keys_functions); |
34 | 36 | ||
... | ... | function rg_keys_event_new($db, $event) | |
42 | 44 | $event['op'] = "new"; | $event['op'] = "new"; |
43 | 45 | ||
44 | 46 | // mark keys dirty | // mark keys dirty |
45 | $ret[] = array_merge($event, array("category" => 1002, "prio" => 10)); | ||
47 | $ret[] = array_merge($event, array( | ||
48 | 'category' => 'rg_keys_event_regen', | ||
49 | 'prio' => 10) | ||
50 | ); | ||
46 | 51 | ||
47 | 52 | // notify user | // notify user |
48 | 53 | $ret[] = array_merge($event, array("category" => 1003, "prio" => 100)); | $ret[] = array_merge($event, array("category" => 1003, "prio" => 100)); |
... | ... | function rg_keys_event_del($db, $event) | |
60 | 65 | $event['op'] = "del"; | $event['op'] = "del"; |
61 | 66 | ||
62 | 67 | // mark keys dirty | // mark keys dirty |
63 | $ret[] = array_merge($event, array("category" => 1002, "prio" => 10)); | ||
68 | $ret[] = array_merge($event, array( | ||
69 | 'category' => 'rg_keys_event_regen', | ||
70 | 'prio' => 10) | ||
71 | ); | ||
64 | 72 | ||
65 | 73 | // notify user | // notify user |
66 | 74 | $ret[] = array_merge($event, array("category" => 1003, "prio" => 100)); | $ret[] = array_merge($event, array("category" => 1003, "prio" => 100)); |
File inc/sql.inc.php changed (mode: 100644) (index e7fb0f5..10abc86) | |||
... | ... | function rg_sql_error() | |
32 | 32 | $rg_sql_app = "rg-unk"; | $rg_sql_app = "rg-unk"; |
33 | 33 | function rg_sql_app($name) | function rg_sql_app($name) |
34 | 34 | { | { |
35 | global $rg_sql_app; | ||
35 | global $rg_sql_app; | ||
36 | 36 | ||
37 | $rg_sql_app = $name; | ||
37 | $rg_sql_app = $name; | ||
38 | 38 | } | } |
39 | 39 | ||
40 | 40 | /* | /* |
... | ... | function rg_sql_open_nodelay($h) | |
60 | 60 | break; | break; |
61 | 61 | } | } |
62 | 62 | ||
63 | putenv('PGAPPNAME=' . $rg_sql_conn[$h]['app']); | ||
64 | |||
63 | 65 | $str = $rg_sql_conn[$h]['str']; | $str = $rg_sql_conn[$h]['str']; |
64 | 66 | if ($rg_sql_debug > 0) | if ($rg_sql_debug > 0) |
65 | 67 | rg_log("DB: opening [$str]..."); | rg_log("DB: opening [$str]..."); |
File inc/workers.inc.php changed (mode: 100644) (index 7e6f287..755a9f6) | |||
... | ... | function rg_worker_event_add($db, $ev) | |
33 | 33 | { | { |
34 | 34 | $ret = array(); | $ret = array(); |
35 | 35 | ||
36 | $ret[] = array_merge($ev, array('category' => 1002, 'prio' => 10)); | ||
36 | $ret[] = array_merge($ev, array( | ||
37 | 'category' => 'rg_keys_event_regen', | ||
38 | 'prio' => 10) | ||
39 | ); | ||
37 | 40 | ||
38 | 41 | return $ret; | return $ret; |
39 | 42 | } | } |
... | ... | function rg_worker_event_del($db, $ev) | |
45 | 48 | { | { |
46 | 49 | $ret = array(); | $ret = array(); |
47 | 50 | ||
48 | $ret[] = array_merge($ev, array('category' => 1002, 'prio' => 10)); | ||
51 | $ret[] = array_merge($ev, array( | ||
52 | 'category' => 'rg_keys_event_regen', | ||
53 | 'prio' => 10) | ||
54 | ); | ||
49 | 55 | ||
50 | 56 | return $ret; | return $ret; |
51 | 57 | } | } |
File root/themes/default/admin/settings/ssh/hints.html changed (mode: 100644) (index 434dcdb..72554ed) | |||
... | ... | file anymore; instead, it will provide a helper to OpenSSH that will look-up dir | |
5 | 5 | the database the fingerprint provided by the user.<br /> | the database the fingerprint provided by the user.<br /> |
6 | 6 | See 'man sshd_config' for more info.<br /> | See 'man sshd_config' for more info.<br /> |
7 | 7 | Before choosing 'Yes', you must append to /etc/ssh/sshd_config file the following lines | Before choosing 'Yes', you must append to /etc/ssh/sshd_config file the following lines |
8 | (use tab to indent): | ||
8 | (use tab key to indent): | ||
9 | 9 | <div class="xcode"> | <div class="xcode"> |
10 | 10 | Match User rocketgit<br /> | Match User rocketgit<br /> |
11 | 11 | AuthorizedKeysCommand /usr/sbin/rg_authorize %f<br /> | AuthorizedKeysCommand /usr/sbin/rg_authorize %f<br /> |
File root/themes/default/download-vm.html changed (mode: 100644) (index fb17b37..df22dd0) | |||
235 | 235 | * adjust logrotate times<br /> | * adjust logrotate times<br /> |
236 | 236 | * customize /etc/rocketgit/config.php<br /> | * customize /etc/rocketgit/config.php<br /> |
237 | 237 | * customize /etc/httpd/conf.d/rocketgit.conf (ServerName, ServerAlias etc.)<br /> | * customize /etc/httpd/conf.d/rocketgit.conf (ServerName, ServerAlias etc.)<br /> |
238 | * login into RocketGit as admin and tweak settings in Admin -> Settings<br /> | ||
238 | 239 | <br /> | <br /> |
239 | 240 | Enjoy your new RocketGit instance!<br /> | Enjoy your new RocketGit instance!<br /> |
240 | 241 | </div> | </div> |
File root/themes/default/hints/ssh/key.html changed (mode: 100644) (index f63012b..cf9a1fc) | |||
... | ... | and paste it in the form above. Do not worry about spaces or wrapping.<br /> | |
12 | 12 | <br /> | <br /> |
13 | 13 | ||
14 | 14 | To force the use of this key when you connect to the server,<br /> | To force the use of this key when you connect to the server,<br /> |
15 | add the following lines to your ~/.ssh/config (use tab to indent):<br /> | ||
15 | add the following lines to your ~/.ssh/config (use tab key to indent):<br /> | ||
16 | 16 | <div class="xcode"> | <div class="xcode"> |
17 | 17 | Host @@rg_ssh_host@@<br /> | Host @@rg_ssh_host@@<br /> |
18 | 18 | User rocketgit<br /> | User rocketgit<br /> |
File tools/rg_change_pass changed (mode: 100755) (index c79707a..a54fb47) | |||
... | ... | $_s = microtime(TRUE); | |
9 | 9 | ||
10 | 10 | require_once("/etc/rocketgit/config.php"); | require_once("/etc/rocketgit/config.php"); |
11 | 11 | ||
12 | $INC = dirname(__FILE__) . "/../inc"; | ||
12 | $INC = $rg_scripts . '/inc'; | ||
13 | 13 | require_once($INC . "/init.inc.php"); | require_once($INC . "/init.inc.php"); |
14 | 14 | require_once($INC . "/log.inc.php"); | require_once($INC . "/log.inc.php"); |
15 | 15 | require_once($INC . "/sql.inc.php"); | require_once($INC . "/sql.inc.php"); |