# | Change | User | Description | Committed | |
---|---|---|---|---|---|
#10 | 17275 | tjuricek | Rename directory to "ruby_client" to avoid confusion. | ||
#9 | 17274 | tjuricek |
Initial revision of Ruby client API. Removing a bunch of the "helper method aliases" and specs that no longer run. The 2016.1 API will be much more like the Java (and TBD C++) APIs. |
||
#8 | 16280 | tjuricek |
Adjustments for Helix Cloud settings Several tests are now disabled due for Helix Cloud since they won't work on streams, which HC only uses. |
||
#7 | 16141 | tjuricek |
Some fixes for Helix Cloud integration. We have a strange requirement that our HWS client should login via the project server URL in order to work. This likely means our auth approach for clients needs a bit of work. |
||
#6 | 16095 | tjuricek | Shorten /helix_versioning_engine URLs to /p4 | ||
#5 | 16094 | tjuricek |
Move /auth/v1/login -> /projects/v1/login The more generic login method is now /helix_versioning_engine/vAPI/login |
||
#4 | 15969 | tjuricek |
Add support for repo creation/update and deletion, same for SSH keys. Add util module for supporting methods, modify temp client to dissapear. (Modified submit of review 15549 by @ptomiak) |
||
#3 | 15698 | tjuricek |
Added a /helix_versioning_engine/v[api]/login method This is used by the Helix Sync client to differentiate the auth source of HWS from that of P4D (to be used for projects). |
||
#2 | 15684 | tjuricek | Add a '.version' method to the client API that will return the version string. | ||
#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_client/lib/helix_web_services_client.rb | |||||
#28 | 15617 | tjuricek | Add P4PORT variable to 'remotetest' task, add 'debug' option to client. | ||
#27 | 15479 | tjuricek | Added a basic "HVE project" implementation for creating clients. | ||
#26 | 15461 | tjuricek |
Allow the settings to be specified on initialization of the client, and deal with Nginx issues and header keys. Nginx, by default, blocks all headers with underscores. Rack, on the other hand, convert hyphens to underscores. |
||
#25 | 15437 | tjuricek |
Basic "HVE Project" implementation. This will allow directories in a HVE instance to host 'projects' for use by helix sync. There are no methods defined for creating the projects, however. This does not include any specialization or testing in the Qt API yet. I may investigate creating a "higher level" interface for Qt client apps. |
||
#24 | 15297 | tjuricek |
Implement of 'cluster services' configuration. The configuration will be stored in a local JSON file, which is expected to be maintained by the systems admin. Eventually, it's expected to have this sort of thing implemented via Helix Admin. |
||
#23 | 15240 | tjuricek |
Set api level via request path on all Helix Versioning Engine methods. This will allow migration of applications to different P4D versions. Our internal methods (like project API) should attempt to handle backward compatibility similarly. P4WEBAPI-118 |
||
#22 | 15228 | tjuricek | Revise triggers implementation, tests, and documentation. | ||
#21 | 15227 | tjuricek |
Revise implementation, tests, and documentation for protections management. Remove some specs I will not be revising from the helix_web_services project. |
||
#20 | 15225 | tjuricek |
Revise counter implementation, tests, and documentation Wasn't available in the Ruby client before, so, it's now available. |
||
#19 | 15222 | tjuricek |
Revise server specs testing and documentation. Note: also fixed issues with setting P4PORT via headers. For whatever reason, the host setting doesn't seem to work like I expect it to, though P4PORT works just fine. |
||
#18 | 15211 | tjuricek | Implement tests and documentation for label spec management. | ||
#17 | 15210 | tjuricek | Implement tests and documentation for job spec management. | ||
#16 | 15209 | tjuricek | Implement tests and documentation for group spec management. | ||
#15 | 15208 | tjuricek |
Revise 'command' implementation, tests, and documentaiton. This includes a change from a command blacklist to a whitelist. See P4WEBAPI-21 |
||
#14 | 15205 | tjuricek | Implemented tests and documentation for depot spec editing. | ||
#13 | 15185 | tjuricek | Update user spec management implementation, tests, and documentation. | ||
#12 | 15132 | tjuricek | Provde a basic submit -e mechanism on classic perforce workspaces. | ||
#11 | 15110 | tjuricek | Revise changes methods for new p4 connection handling, add server specs, remove model references in client, and update asciidoc documentation. | ||
#10 | 15090 | tjuricek |
Update _proposed_ API for project services. This is *very likely* to change, and will not be implemented until reviewed. |
||
#9 | 15078 | tjuricek |
clients spec method revisions Updated some other documentation. |
||
#8 | 15077 | tjuricek |
Add new 'model' technique, revised branch spec operations, test Auth::Middleware. The Ruby client now does *not* strictly type anything, but extends OpenStruct with helper methods to help deal with inconsistent data formats. See the OpenModel class documentation for more details. The Auth::Middleware class is also *finally* implemented as well. This does not take into account all possible variations of server behavior (yet), but that will happen in follow-up work. |
||
#7 | 15059 | tjuricek | Tested authentication of the core /auth/v1/login method. | ||
#6 | 15053 | tjuricek |
Revise the client API to use the new login method. The current specs will need to be revised since data normalization is moving out of the server and into the client. |
||
#5 | 15038 | tjuricek | Document 'login' auth method and client programming overview. | ||
#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 | 13839 | tjuricek |
Conversion of the p4_project_service microservice to new monolithic system. This may not have an HTTP front end in the monolithic system. Project services are really just about how the core object model is structured. It's likely that each application will add their own wrinkles and extensions to the system, so it's unlikely we'll need a generic "project model". Exactly how extensions are registered and used is still a bit TBD at the moment. Previously they were to be registered webhooks, that model may change. Does not include tests yet. |
||
#2 | 13808 | tjuricek | Finish converting most of the core p4d API into the new monolithic system. | ||
#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. |