require 'uri' #---------------------------------------------------------------------------- # Read Config from Environment #---------------------------------------------------------------------------- # This allows developers to use environment variables locally to set up # configuration instead of creating /etc/perforce/helix_web_services.conf. ENV['RACK_ENV'] = 'production' require 'hws_settings' if ENV.key?('WORKSPACE_DIR') HWSSettings.system_handle.WORKSPACE_DIR = ENV['WORKSPACE_DIR'] end #---------------------------------------------------------------------------- # Configure Sinatra #---------------------------------------------------------------------------- require 'helix_web_services' helix_web_services = HelixWebServices::Master.new #---------------------------------------------------------------------------- # Startup #---------------------------------------------------------------------------- # This is *only* the configuration for the Unicorn instance. Worker processes # and the web socket server will be managed *elsewhere*. run helix_web_services
# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#1 | 15741 | ptomiak | Branch HWS for my use. | ||
//guest/perforce_software/helix-web-services/main/source/helix_web_services/config.ru | |||||
#1 | 15622 | tjuricek |
Move source code to 'source/' subdirectory of branch. build/ will remain where it is. |
||
//guest/perforce_software/helix-web-services/main/helix_web_services/config.ru | |||||
#9 | 15110 | tjuricek | Revise changes methods for new p4 connection handling, add server specs, remove model references in client, and update asciidoc documentation. | ||
#8 | 15099 | tjuricek | Revise project services to be our simple 'container' for other systems. | ||
#7 | 15032 | tjuricek |
Starting config and doc revisions. System is now broken while revisions underway. Configuration of the p4d connection is now done via a single HWSSettings middleware object injected into the Rack env. The HWSP4Cleanup middleware now cleans up any p4 injected into the Rack env. The Auth::App class now mostly just contains one method to generate a p4 ticket. /auth/v1/login. Added yard documentation for the main project. Yard docs have been reconfigured to dump into build/ directories. This should probably be done with each release. Hm... The top level rake file contains a task, 'all:doc', to update our documentation. This should probably be run for each checkin. Hm... Specs are now using Rack::Test on top of a 'live' p4d. I'd suggest you still use the p4util mechanism, which now dumps to a /tmp folder, so we can safely add P4IGNORE rules back into your local .p4config file. Old 'perforce' application now called 'helix_versioning_engine'. Removing cache data. Helix Sync may be slow. It may also get axed. We'll see. |
||
#6 | 14231 | tjuricek | Make the default locations for working files consistent between process forks. | ||
#5 | 14184 | tjuricek | Revise the CD diagram, update official docs, and change the DB configuration key. | ||
#4 | 13941 | tjuricek |
Re-implemented the sync project methods at the HTTP level. The Qt API is missing the "members" concept, but it's likely not quite usable just yet. It's existing logic does work, however. |
||
#3 | 13891 | tjuricek |
Added a 'member' concept to projects. members is the start of a basic project 'role' definition. In Helix sync, this is mostly just used to indicate this is a "my Project" in the UI and a project member can have the ability to leave the project or add someone else. Eventually, we expect "members" to mean more, like, is part of a group that has write access to the files of the project. But that sort of definition is very TBD. |
||
#2 | 13846 | tjuricek | Setup development rules for creating/initializing PostgreSQL, and updated some of the ProjectService specs. | ||
#1 | 13799 | tjuricek |
Start with branch specs hosting in a new monolithic 'helix web services' project. Converting from a microservice to a monolithic architecture due to resource constraints at getting a deployable system running. Additionally, since it's not expected that people will upgrade often, the major benefit of microservices - being able to add services individually without affecting others - is not really a major benefit. The Ruby SDK will be consolidated into a single 'helix web services client' project. It may end up being distributed via Rubygems. This only runs branch specs at the moment. I want to get a CD pipeline setup for the monolithic server before revising more methods. |