Commit Graph

120 Commits

Author SHA1 Message Date
Nick O'Leary 52475df783
Fix various tests due to projects rework 2018-01-16 16:18:18 +00:00
Nick O'Leary 25f4a018d9
Merge branch '0.18' into projects 2018-01-16 11:21:54 +00:00
Nick O'Leary 3306d30094
Get proper path to local keyfile when selected 2018-01-11 11:19:04 +00:00
Nick O'Leary 6516e0dfd2
Allow a user to pick existing sshkeys from ~/.ssh 2018-01-10 17:37:41 +00:00
Nick O'Leary 13356047dc
Better handling of empty projects and lifecycle 2018-01-09 15:06:05 +00:00
Nick O'Leary 1c2ea56f42
Allow a project to be specified on the command-line
Reuses the existing flowFile - if its value is found
to be the name of an existing project, that project
is set as the active one.

If it is not the name of an existing project, it is
ignored.
2018-01-08 16:10:54 +00:00
Nick O'Leary 1d7ae300e2
Handle cloning a bare repository 2018-01-08 14:46:56 +00:00
Hideki Nakamura 5a6cde1446 Refactoring ssh-keygen function (#1533) 2018-01-05 16:12:01 +00:00
Nick O'Leary 9c350311e8
Fix reauthentication of remote repositories 2017-12-21 17:40:24 +00:00
Nick O'Leary 816442f5f0
Update sshey UI to use common list style 2017-12-20 23:45:17 +00:00
Nick O'Leary 8c87478636
Merge sshkeys 2017-12-20 15:12:10 +00:00
Nick O'Leary d870b072d7
Tidy up branch/remote list in projectSettings 2017-12-20 14:37:34 +00:00
Hideki Nakamura 2ea2af7d2a Use a fixed string instead of `os.hostname()` 2017-12-20 19:44:57 +09:00
Hideki Nakamura c24b0c6bb4 Change "generateSSHKey" function signature 2017-12-19 22:57:40 +09:00
Nick O'Leary 33a5b84181
Add first-run dialog to migrate files to project 2017-12-19 00:56:02 +00:00
Hideki Nakamura 2a9d0a5e7d Merge branch 'projects' into sshkey-management 2017-12-17 23:54:44 +09:00
Nick O'Leary 474f4572f2
Fix conditional initialisation of projects 2017-12-16 23:43:08 +00:00
Hideki Nakamura bf57cb209f Delete unnecessary logs 2017-12-16 00:46:05 +09:00
Hideki Nakamura 9bc41c1709 Merge branch "projects" 2017-12-16 00:33:08 +09:00
Hideki Nakamura fe10b8650f Add Git access feature via SSH and Enhance SSH Key management 2017-12-16 00:07:47 +09:00
Hideki Nakamura 3a311c9584 Detect a SSH key generation error 2017-12-15 23:48:52 +09:00
Nick O'Leary a3a1bba5ef
Add projects editorTheme flag to disable the feature 2017-12-13 09:44:48 +00:00
Nick O'Leary bb59cd5742
Allow unstaged files to be reverted 2017-12-11 17:05:12 +00:00
Nick O'Leary 27f1d3b704
Add delete local branch option 2017-12-08 16:31:42 +00:00
Nick O'Leary d007623347
Return more detailed information on /project/branches api 2017-12-07 22:24:57 +00:00
Hideki Nakamura 6a5cf7a1fa Merge branch 'projects' into sshkey-management 2017-12-07 23:29:58 +09:00
Hideki Nakamura 3adfe249b0 Support to delete project feature (#1509)
* First commit to support to delete projects

* Add delete project menu & Implement delete project API

* Correspond to the PR feedback
2017-12-07 14:28:26 +00:00
Hideki Nakamura 923893e160 Add SSH key management API 2017-12-07 23:11:24 +09:00
Nick O'Leary 304c597a2f
Store repo credentials per-user 2017-12-06 22:39:30 +00:00
Nick O'Leary 1840d15397
Restructure how editor/git settings are saved in userSettings 2017-12-05 23:50:32 +00:00
Nick O'Leary 91352e855a
Handle overwrite warning on local branch change 2017-12-05 16:12:07 +00:00
Nick O'Leary a7e14f1093
Handle a local branch that does not yet track a remote 2017-12-04 13:26:47 +00:00
Nick O'Leary 94eeaeb8d3
Allow committer details to be set per-user 2017-12-04 11:42:44 +00:00
Nick O'Leary 14c48253f6
Confirm actions that would overwrite dirty workspace 2017-11-24 23:12:35 +00:00
Nick O'Leary e5ff25b92d
Fix project pull with authentication 2017-11-23 20:52:15 +00:00
Nick O'Leary 5c88888e02
Better auth handling in projects 2017-11-23 00:27:13 +00:00
Nick O'Leary 10057de9b3
A big projects update
Includes:

 - change local/remote branches
 - basic support for username/password handling
2017-11-21 23:31:41 +00:00
Jim Turner 6baedf909d Fix #1478 - Project files are not being flushed to disk after being written (#1479)
* Call fsync() before closing file

* Fix race condition in tests due to incorrect stub.

The startFlows() function wasn't really being stubbed, so it was still being called. But there was no corresponding call to stopFlows().

In later tests, the check in Flows.init() was throwing the "Cannot init without a stop" error.

* Test coverage for fsync() calls

For issue #1478

* Revert "Fix race condition in tests due to incorrect stub."

This reverts commit 4f71d7851b.

* Fix race condition in tests due to incorrect stub.

The startFlows() function wasn't really being stubbed, so it was still being called. But there was no corresponding call to stopFlows().

In later tests, the check in Flows.init() was throwing the "Cannot init without a stop" error.

* Fix intermittent test failure in Exec node.

Occasionally, the error text on stderr will come in more than one piece. The test only worked correctly if a single message was received.
2017-11-17 17:29:33 +00:00
Nick O'Leary 57533fd831
Add commit-diff view 2017-10-25 15:26:24 +01:00
Nick O'Leary 3d6468326a
Allow a project's flow file to be changed 2017-10-19 21:38:53 +01:00
Nick O'Leary 5218a3fbac
Add custom project.toJSON to simplify state mangement 2017-10-17 10:14:50 +01:00
Nick O'Leary 4569cb432d
Add Project object in runtime 2017-10-16 23:23:50 +01:00
Nick O'Leary 19c84eb694
Add commit history view in sidebar 2017-10-09 23:37:19 +01:00
Nick O'Leary 10567afbb9
Add unified diff view to version control tab 2017-10-09 00:11:07 +01:00
Nick O'Leary 9a2fd0e2b2
Add initial version control sidebar with commit function 2017-10-07 00:18:20 +01:00
Nick O'Leary 522f7e6844
Do not include creds when calculating flow revision hash 2017-09-28 22:34:21 +01:00
Nick O'Leary 6a06142e1e
Allow credSecret to be managed via project settings 2017-09-26 22:51:08 +01:00
Nick O'Leary edc2310599
Move project sidebar to project settings dialog 2017-09-20 22:51:28 +01:00
Nick O'Leary b1cd13d629
Initial projects implementation 2017-09-20 10:30:07 +01:00
HirokiUchikawa ff40b521b7 Fix problem with multi-byte character (#1391) 2017-09-17 08:46:14 +01:00
Nick O'Leary 9a8b404054
Split localfilesystem storage plugin into component parts 2017-08-23 17:31:33 +01:00
Kazuhito Yokoi b3ffd33507 Add file extension into flow name of library automatically (#1331) 2017-07-09 11:58:17 +01:00
Kazuhito Yokoi ac60725d2a Fix flow library in menu to support period characters as flow name (#1320) 2017-07-04 10:02:24 +01:00
Kazuki Nakanishi c34c98386e Fix creating userDir other than system drive on Windows (#1317) 2017-07-03 15:22:49 +01:00
Nick O'Leary f97f92c297
Strip BOM character from JSON files if present
Fixes #1239
2017-05-15 14:21:12 +01:00
Nick O'Leary f2235dacdc
Shuffle promises for creating default package.json 2017-01-28 14:21:22 +00:00
Nick O'Leary 85b2a03a42
Create a package.json file in userDir if one doesn't exist 2017-01-27 22:35:17 +00:00
Nick O'Leary 0a96259ddf
Update copyright header for JS Foundation 2017-01-11 15:24:33 +00:00
Nick O'Leary f0a4ea099c
Fix whitespace in localfilesystem 2017-01-08 23:01:28 +00:00
btsimonh c8d6693fba fix bug where savesettings did not honor local settings variables (#1073)
* fix bug where savesettings did not honor local settings variables

* don't create lib/flows on read;  It's already created in localfilesystem.init and in saveLibraryEntry -
so removed call to promiseDir, and added a return of [] if accessing a folder which did not exist.
This is important because else when settings.readOnly is true, it still creates folders.

* Fix a CI failure where path passed to getLibraryEntry is empty;
treat this case as meaning it was wanting a folder, and return empty if the folder dioes not exist

* Add a test for getLibraryEntry( type, '/' ) as called by node-red

* change newsettings to camelCase newSettings
2017-01-08 23:00:27 +00:00
Nick O'Leary b4be1184fd Add v2 /flows api and deploy-overwrite protection 2016-10-09 22:02:40 +01:00
Nick O'Leary f9b972349d Move credential load/save storage functions under get/setFlows 2016-09-21 21:58:50 +01:00
Nick O'Leary e06cadd761 Pass full runtime object to storage and flow sub-components 2016-09-21 10:22:04 +01:00
Nick O'Leary d6b326c134 Handle empty credentials file
Closes #937
2016-07-26 22:23:49 +01:00
Josh 3454e5ac77 Flows lib honours flowFilePretty setting (#837)
* Flow lib now adheres to pretty flow file, ui also adheres to this as well

* added settings mock object in flows_spec get api test

* reverted api changes, fixed parse of flow only

* try spell flows correctly
2016-05-17 22:09:57 +01:00
Nick O'Leary f2191e94b3 Better handling of zero-length flow files
Closes #819

If a flow file is found to be zero-bytes:
  If there is a non-empty backup, restore the backup and resolve
  If there is no backup or it is also empty, resolve empty flow
If a flow file is found to be invalid json:
  Log and resolve empty flow
2016-03-11 22:42:04 +00:00
Nick O'Leary dcd8b3699c Create node_modules in userDir
This ensures npm install puts modules under .node-red even if there's
already a node_modules dir in the parent directory.
2016-03-01 22:08:37 +00:00
Nick O'Leary 87d77efa57 Add flow reload admin api 2016-01-06 17:01:11 +00:00
Nick O'Leary f62b7afede Remove all uses of fs.exists as it is deprecated
The tests still use it in places - particular localfilesystem tests,
but those tests need to be redone with sinon stubbing in place and
not rely on real fs operations.
2016-01-06 17:01:11 +00:00
Nick O'Leary f43738446e WIP: separate runtime and api components 2016-01-06 17:01:11 +00:00