Name | Modified | Size |
---|---|---|
.. | ||
clients | ||
omnibus-p4_web_api | ||
p4_web_api |
Change | User | Description | Committed |
---|---|---|---|
13972 | tjuricek | Removing old microservice implementations. The system is now mostly a monolith. Eventua...lly there will be a websocket service. « |
10 years ago |
13784 | tjuricek | Typo fix | 10 years ago |
13675 | tjuricek | Add notification_services initialization Removing the 'online setup' mode in lieu of do...ing things during the salt process. Mostly this removes the trigger setup from the main web application. « |
10 years ago |
13635 | tjuricek | Exploring modular web applications with Sinatra. If the app has fairly unique content p...er page, Sinatra works really well actually. (Mostly because it's a thin layer over Rack.) Sharing anything though, basically means implementing a module or base class and implementing it everywhere. An added benefit is that these applications could be used in Rails apps as well. I'd probably think hard about this, because Rails tends to be a resource hog. Here's an example config.ru I used for running against the dev system: require 'pms' app = Pms::App.new Pms::Login.settings.p4_web_api_url = http://172.16.100.20/p4_web_api/v1 ProjectApp.settings.phoenix_services_url = http://172.16.100.20/p4_phoenix_services/v1 app.settings.static = :true app.settings.public_folder = File.absolute_path('../../ui/pms', __FILE__) puts "public_folder is #{app.settings.public_folder}" run app « |
10 years ago |
13612 | tjuricek | Update deployment guide, switch built documentation to asciidoc, remove unused packaging s...cript for p4_web_api « | 10 years ago |
13544 | tjuricek | Revise package and gem versioning. Packages will use [gem]-[changelist] as their versio...ns. Gems will use a standard Ruby MAJOR.MINOR.REVISION format. P4WEBAPI-64 « |
10 years ago |
13535 | tjuricek | Add notification_services to deployment, and reconfigure build step to exec bash. The e...xecution bit doesn't seem to stay set on config/bash.sh The notification_services service doesn't have advanced tests just yet. « |
10 years ago |
13534 | tjuricek | Remove automatically generated license files and unused run.sh files. | 10 years ago |
13530 | tjuricek | Add p4_phoenix_services package and Salt configuration for deployment. This uncovered a... couple of issues from the C++ API during it's conversion to C++03. So, in a nutshell, most operations, except for notifications, appear to be working (well, using Vagrant machines). « |
10 years ago |
13528 | tjuricek | Moved rack and app server configuration to be managed via Salt. Also, only using a sing...le value "url" to configure how the p4_project_services instance references the p4_web_api. And, removing the Docker setup, since that won't work for a production system. « |
10 years ago |
13525 | tjuricek | Setup God to manage both the p4 web api and p4 project services processes. Apparently,... there can only be one true god per machine. « |
10 years ago |
13520 | tjuricek | Created a 'cluster' build procedure that creates an installer on build, and executes the i...nstall on a test instance. The main change is to package all gem dependencies via 'vendor/cache' (using the 'bundle package' command). Right now, there appears to be an issue with test data initialization, which may need a revised approach. « |
10 years ago |
13515 | tjuricek | Initial configuration for the p4_project_services. The tests haven't been run yet, so i...t's likely missing some more configuration. Using vagrant to even manage these environments may not be our realistic CD premise. I may end up moving some more responsibility into the Salt layer, which would make vSphere automation easier. « |
10 years ago |
13514 | tjuricek | Revised some of the p4_web_api tests to work under the installed 'production' perforce sys...tem. Notes on data resets: sudo p4dctl stop helix-evaluation sudo rm -rf /var/lib/perforce/p4d sudo /opt/perforce/sbin/configure-perforce-server.sh helix-evaluation -n -p 1666 -r /var/lib/perforce/p4d -u super -P 'superuser1A!' --unicode sudo su webservices /home/webservices/.rvm/wrappers/ruby-2.2.2@p4webapi/p4util init -p :1666 /home/vagrant/p4ws/p4init « |
10 years ago |
13513 | tjuricek | Update several files that were missing from the last commit regarding a basic 'test' envir...onment « | 10 years ago |
13504 | tjuricek | The 'build-ubuntu12' seems to generate the appropriate debian packages for the distributio...n. I had permissions issues (probably related to shared folder usage) with the dpkg tools. So I've removed them. If we happen to need them, we'll have to figure out a build process. This environment probably shouldn't be used to test the packages, since omnibus likes to dirty everything up, leave files in the /opt/perforce directory owned by vagrant, etc. « |
10 years ago |
13500 | tjuricek | Reorganizing Vagrant definitions. Each platform should allow developers to launch envir...onments for development, builds, or 'production', so the entire CD process can be evaluated by anyone wiht access to the source tree. This may eventually bring up a transient vSphere machine up and down, which may be necessary for sandboxing Omnibus related builds. « |
10 years ago |
13499 | tjuricek | Simple p4_web_api omnibus installer. Successfully built using a test-kitchen VM for deb...ian ubuntu 14.04. « |
10 years ago |
13496 | tjuricek | Complete and seed the setup of the p4webapi in a development mode. This works against t...he local development tree for dev environments. « |
10 years ago |
13491 | tjuricek | Minimal .deb installer package for the p4_web_api The goal of this package is to provid...e a way of distributing the web application source via deb instead of something like the workshop or git. There will definitely be some changes as a complete deployment workflow is defined. This includes some vagrant machines for building the installer packages ('ubuntu') and testing out the environment ('salt'). « |
10 years ago |
13490 | tjuricek |
Removing external_links configuration references from the p4_web_api. P4WEBAPI-51 |
10 years ago |
13489 | tjuricek | Add zookeeper service to cluster for development evaluation. It's a little unclear exac...tly what values need to be distributed via zk, since a lot of the configuration may end up being handled via ports. I wanted to at least provide a way to evaluate this. P4WEBAPI-60 « |
10 years ago |
13488 | tjuricek | Added hsm:startworld and hsm:stopworld tasks to do global starts and stops. This is not... without apparent issues. It appears bundler or ruby is pausing before the nginx launch task happens. I'm not sure if there's some kind of resource issue first. P4WEBAPI-49 « |
10 years ago |
13487 | tjuricek | Pushing host, port, and URL configuration into docker-compose.yml consistently. All oth...er configuration will be figured out by a separate system later. P4WEBAPI-51 « |
10 years ago |
13481 | tjuricek | Tests for the p4 web api and p4 project services now pass against a development setup both... in and out of the docker cluster. Note that configuration *has not* been finalized, so conventions to dealing with development vs production need to be organized a bit. « |
10 years ago |
13478 | tjuricek | Added Docker configuration for notification services, and phoenix services, also, opened u...p most ports to the host by default. The current configuration is now working first for a setup of "development mode" environments, anticipating that each service will use the private internal network for most services. That way, you can selectively run things, say, in your OS X environment, and other things in the docker cluster. It can make your debugging a little easier. When more automation is available, we'll find a way to describe how to handle this in different ways. « |
10 years ago |
13477 | tjuricek | More docker-compose configuration for projects in research for HSM. Added a geminabox h...ost for the cluster, which allows for quick rebuilds. Each cluster will cache the gems it needs, and publish as well. We may want to put the overwrite commands for all publish steps by default. Note: referencing "external links" can only be done 'at runtime', so "bundle install" really needs to be run in the context of 'docker-compose up' not 'docker-compose build'. This was edited in all configured libraries so far. Finally, added the p4_project_services projects to configuration, which is running under it's own puma instance. The postgres instance is a little tricky to figure out the exact workflow. Right now I'm using the host rake db:migrate task and calling createdb manually, since we need to pass the password along. « |
10 years ago |
13476 | tjuricek | Some initial concepts for 'hsm' Using docker-machine and docker-compose for a basis is... very useful, instructions are documented in hsm/hsm/README.md Currently uses the installer for perforce, doesn't have to. We *very likely* want to consider a way to set up a Docker image with data. Probably should change the Docker image for perforce to use an internal 15.x release. We may want to have all other web services just use the p4_web_api for auth, and alter our shared middleware approach. It's likely that we'd want a library of 'docker images' for our components, since not every component will get touched frequently. This will save a lot of startup time, just download and go. This may be step #1 even of hsm. « |
10 years ago |
13474 | tjuricek | Corrected regressions that broke the API and Project services specs. | 10 years ago |
13470 | tjuricek | Phoenix notification services, client API, including new phoenix_updater This is an int...erim commit containing a first pass implementation of the phoenix_updater. Notably missing parts: - The Qt API doesn't yet actually interact with the phoenix_updater - The phoenix_services web service doesn't filter out notifications I *may* end up creating another web application *just* to filter out notifications, since this may end up taking up a lot of background workers. « |
10 years ago |
13458 | tjuricek | Revising P4 Web API docbook documentation to become the Perforce Web Services guide. Ri...ght now this is just focused on the Qt SDK. The remaining protocol documentation, etc, will happen eventually. « |
10 years ago |
13439 | tjuricek | Added a *very trivial* logIn implementation. This just makes the *current* POST request... to /p4_phoenix_services/v1/sessions, which *does not* include the ability to create a host locked P4 ticket for the user. So it's not quite usable yet. But, I've made several tweaks to the API which should be stablizing. « |
10 years ago |
13420 | tjuricek | Setup the main directory to launch specs in subprojects and a unicorn-based daemon via rak...e. See rake -T for details, but this should allow for CI builds to collect output. « |
10 years ago |
13419 | tjuricek | The p4_project_services specs now run that provide basic create-read ability. | 10 years ago |
13418 | tjuricek | Added p4_project_services to development config.ru, and reconfigured p4 web api client tes...ts to use the new paths. « | 10 years ago |
13417 | tjuricek | Added a 'rake work/config.ru' task, that creates a local rack configuration. This now i...ncludes the project services, which is not yet mounted. The p4 web api tests still pass though. « |
10 years ago |
13416 | tjuricek | Set up the p4_web_api related projects to be loaded by the parent Gemfile to make it a lit...tle easier to launch a test p4d with different seed data. Also fixed a couple of minor issues related to the client api. You'll notice that the 'rake api_reset api_init' task sets up a p4d for the p4_web_api tests, where the 'rake proj_reset proj_init' tasks set up p4d for project services testing. An example p4_web_api.ru that can be used for launching just the p4_web_api: require 'p4_web_api' # Do *not* let your development environment variables pollute how the p4 web api runs! ENV.keys.select { |k| k =~ /^P4/ }.each { |k| ENV.delete(k) } api = P4WebAPI::App.new puts 'changing paths' api.settings.token_path = '/Users/tjuricek/dev/p4ws/work/tokens' api.settings.workspace_folder = '/Users/tjuricek/dev/p4ws/work/workspaces' api.settings.p4 = {'port' => 'localhost:1666', 'charset' => 'auto'} run api « |
10 years ago |
13412 | tjuricek | Initial version of the web-services mainline. This is a collection of several projects,... that will likely often get released together, though many of them may not always be relevant. See the README for more information. « |
10 years ago |