Age | Commit message (Collapse) | Author | Files | Lines |
|
Update the schema pack to include ComponentIntegrity resources.
ComponentIntegrity is used for representing roots of trust, and
conveying attestation parameters forward.
Tested: Automated change
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I1c62ddeeb9151bfe2852199a9ebb12a6636e6262
|
|
Adds an AggregationSource resource for each satellite config present on
dbus.
Adds the AggregationSource schema which we had previously ignored.
Tested:
Querying an AggregationSource returned the expected information.
curl localhost/redfish/v1/AggregationService/AggregationSources/5B247A
{
"@odata.id": "/redfish/v1/AggregationService/AggregationSources/5B247A",
"@odata.type": "#AggregationSource.v1_3_1.AggregationSource",
"HostName": "http://122.111.11.1:80",
"Id": "5B247A",
"Name": "Aggregation source",
"Password": null,
}
Service Validator passed. The Service Validator also passed after
removing the satellite config from the system such that
/redfish/v1/AggregationService/AggregationSources returns an empty
Members array.
Signed-off-by: Carson Labrado <clabrado@google.com>
Change-Id: I88b5fbc15f27cddd330ec22a25427fd8b18cf766
|
|
This is an intermediate step in setting up aggregation sources. A
future patch will add aggregation sources based on the existence of
satellite configs. For now the collection will always return as 0
members.
Adds the AggregationSourceCollection schema which we previously
ignored.
Tested:
Service Validator passes
Signed-off-by: Carson Labrado <clabrado@google.com>
Change-Id: I65c9231289bf0a9b6392696d55bc3feb0023c694
|
|
AggregationService is used to inform a client that some of the results
might be aggregated, and to allow setting up aggregation sources.
Today, this resource only contains the basic fields, as well as
"Enabled", which informs the client of the fact that the service is
aggregation enabled.
AggregationService was one of the schemas we ignored, so this adds it to
the supported list.
Tested: Redfish service validator passes.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ifb16a86ff81e387f01016a83f9e69240c8928614
|
|
Based on DSP8010_2022.3 and adds the Ports schema.
The port is a child of the FabricAdapters schema, and the
PortCollection schema will collect all Ports information, each Port
contains Location, LocationIndicatorActive, etc., and these functions
will be implemented in the next patch.
Tested: built bmcweb successfully and validator passes.
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I9adfa852c3b9c5deaace0c958e477a67d49f4939
|
|
This was missed by me; At the same time as we were resolving the
redfish-service-validator failure[1], I was trying to fix this. So in
the result I saw:
ERROR - Validation has failed: 2 problems found
Which I thought was the existing false-positive, but turns out was
hiding the namespace issue.
Mea Culpa.
[1]: https://github.com/DMTF/Redfish-Service-Validator/issues/533
Tested: Redfish service validator actually passes.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I51de9d508539756394ead1bca437ca37b61f5e40
|
|
f041387d5912db27e0317805e5c341c9c472887a didn't quite fix the issue due
to testing problems, which luckily CI caught. This actually fixes it.
Tested: redfish service validator passes.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ieac721477b3e78165559f857c0683d0520b7fcc2
|
|
Fixes regression introduced at 5b5574ace856c7f787528ab8f5e5352a90f2a6cb
Because of the order in which a few patches were merged, the static
$metadata file never got updated. There are other patchsets still in
review to completely remove the file, which is why the validator passed
on previous commits.
Tested: Metadata now resolves
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I402eb0bb83220f13293e9e7c86f34a257c2f981e
|
|
This schema as-written broke a bunch of Redfish specification rules for
schemas, naming and other things. This commit starts to fix them.
It can be used as a starting point for fixing the existing schemas.
This working through testing.
Tested: OpenBMCAccountService_v1.xml now passes the redfish odata schema
validator.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Id991794344b8b7d36af3c44bba7214bf025deec8
|
|
Seeing CI fails:
```
Running beautysh
Running black
reformatted scripts/websocket_test.py
```
```
diff --git a/scripts/websocket_test.py b/scripts/websocket_test.py
index 21c7f160..fce9cd7e 100755
--- a/scripts/websocket_test.py
+++ b/scripts/websocket_test.py
@@ -45,10 +45,10 @@ async def hello():
authbytes = "{}:{}".format(args.username,
args.password).encode("ascii")
auth = "Basic
{}".format(base64.b64encode(authbytes).decode("ascii"))
headers = {"Authorization": auth}
- async with websockets.connect(
- uri, ssl=ssl_context, extra_headers=headers
- ) if args.ssl else websockets.connect(
- uri, extra_headers=headers
+ async with (
+ websockets.connect(uri, ssl=ssl_context, extra_headers=headers)
+ if args.ssl
+ else websockets.connect(uri, extra_headers=headers)
) as websocket:
request = json.dumps(
{
Format: FAILED
```
Change-Id: I8020716f2f9b9f1745d817728d3fe1eccd0bf778
Signed-off-by: Gunnar Mills <gmills@us.ibm.com>
|
|
Update scripts/update_schemas.py to point at 2022.3 and run.
Schema pack 2022.3 is the latest Redfish release, released 01/23/2023.
It contains several new schemas and support for Multi-factor
Authentication and CXL support along other things.
Update done by automation.
Tested: Redfish service validator passes.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I55a64d7cda26572e7b75135acc324cb44d316fe6
|
|
In d678d4fc59f131cf9820c1783f86a4a6ede32995 I forgot to remove
OemSession from the metadata, and it now returns invalid. This was
missed in testsing, because this was originally stacked with patches
that remove the $metadata hardcoding entirely, so with that patch, this
error wasn't present.
Tested: CI can catch this just fine. Regression fix.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I56ad68846174d42004565dd3bc75f3008720d58a
|
|
Will be used in commit https://gerrit.openbmc.org/c/openbmc/bmcweb/+/41216
From the Redfish schema "A FabricAdapter represents the physical fabric adapter
capable of connecting to an interconnect fabric. Examples include but are not
limited to Ethernet, NVMe over Fabrics, Gen-Z, and SAS fabric adapters."
Tested: built bmcweb successfully and validator passes
Change-Id: I9f8fb3bfc5b68a86b078b1261445437bdd5c550a
Signed-off-by: Lakshmi Yadlapati <lakshmiy@us.ibm.com>
|
|
Utilize the new array of top level collection URIs to determine if a
given URI in the response needs to have the aggregation prefix added.
This removes the need to check for specific collections like
/redfish/v1/UpdateService/FirmwareInventory which do not fit the
generic format of /redfish/v1/<collection>.
Future patches will use this same approach to improve the logic for
initially determining if and how a request should be aggregated.
This patch also adds a series of unit tests for the function
responsible for adding a prefix to a given URI. Cases covered include
valid URIs that involve a selection of aggregated resources, top level
collection URIs, other invalid URIs, and URIs with a trailing "/".
Tested:
Unit tests pass.
Signed-off-by: Carson Labrado <clabrado@google.com>
Change-Id: I676983d3c77ae3126c04e9f57ad8698c51df2675
|
|
In aggregation we need to account for when a satellite BMC supports a
resource collection that the aggregating BMC does not. We need to
add links in responses from upstream resources to indicate that these
satellite only resources exist. These top level collections do not
always have the location format of /redfish/v1/<collection_id>. We
determine all of those from the schema rather than hardcoding a few
choice exceptions that do not fit that format such as
/redfish/v1/UpdateService/FirmwareInventory.
This patch is the first step in accomplishing this. We parse all
xml schema files in order to determine what are the top level
collection URIs. For URIs that are upstream from top level collections
we'll be able to derive what URIs could appear in the response which
are also on the same path to a top level collection.
The xml files for resources that aren't currently supported by bmcweb
are ignored when creating the schema index and later deleted once the
above parsing completes.
Later patches will use this information to make sure that we are
properly handling all schema defined top level collections.
Tested:
Compiles with aggregation enabled
Signed-off-by: Carson Labrado <clabrado@google.com>
Change-Id: Icff825f4e4e9d84c96254561350f82839abdc074
|
|
Even for schemas we ignore, we should still generate the enums for them,
just to keep changes like [1] smaller.
Tested: Code compiles. No functional binary change.
[1] https://gerrit.openbmc.org/c/openbmc/bmcweb/+/55215
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I78adf1204a319bc14900152f94161afea21f2e07
|
|
black and isort are enabled in the openbmc-build-scripts on Python files
to have a consistent formatting. Re-run the formatter on the whole
repository.
Change-Id: I00a6615fdb2b47ffee38e4bf649dd644eb636844
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
|
|
Python packaging seems to have changed to be much more stringent about
what version strings is accepts. It's not clear why this was done, but
we need a fix to unbreak CI.
This commit adds more parsing code into the script to parse out version
numbers from the form of LogEntry.v1_2_3 to split them up into a custom
class, and sort manually. Despite dropping the dependency, this ends up
dropping a net 7 lines of code compared to using the library, so it
seems worth it, especially given the breaking API change.
One seemingly unrelated change was that we were adding schema folders to
the sort lists, which don't sort well because they have no version
numbers or extensions. This fixes to only add individual files to the
list of things to sort.
Tested:
Code no longer crashes.
Running update_schemas.py generates the same result (with one minor
same-prefix sort order change).
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I1a792ffb4ad7bc71637ab1aa0648a245949aeeee
|
|
OpenBMC tends to have a significant problem in doing the appropriate
lookups from the schema files, and many bugs have been injected by users
picking a bad enum, or mistyping the casing of an enum value.
At the same time, nlohmann::json has recently added first class support
for enums, https://json.nlohmann.me/features/enum_conversion/
This commit attempts to build a set of redfish includes file with all
the available Redfish enums in an easy to use enum class. This makes it
very clear which enums are supported by the schemas we produce, and adds
very little to no extra boilerplate on the human-written code we
produced previously.
Note, in the generated enum class, because of our use of the clang-tidy
check for macros, the clang-tidy check needs an exception for these
macros that don't technically follow the coding standard. This seems
like a reasonable compromise, and in this case, given that nlohmann
doesn't support a non-macro version of this.
One question that arises is what this does to the binary size.... Under
the current compiler optimizations, and with the current best practices,
it leads to an overall increase in binary size of ~1200 bytes for the
enum machinery, then approximately 200 bytes for every call site we
switch over. We should decide if this nominal increase is reasonable.
Tested: Redfish protocol validator runs with same number of failures as
previously.
Redfish Service Validator passes (one unrelated qemu-specific exception)
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I7c7ee4db0823f7c57ecaa59620b280b53a46e2c1
|
|
Reformat the repository using the latest from openbmc-build-scripts.
Add the `static/redfish` directory to be ignored by prettier since
these files come from elsewhere and having the ability to do a direct
diff is handy.
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I74464d6f97047b4888a591e0d8a4f5ca970ac69e
|
|
Signed-off-by: Patrick Williams <patrick@stwcx.xyz>
Change-Id: I6bcc6c72e1855c7de7c8b1e88cbab01e92b4070d
|
|
Based on DSP8010_2022.2 and adds the ThermalMetrics schema.
ThermalMetrics is child of the ThermalSubsystem schema. It is part of
the new Power/Thermal Schemas.
ThermalMetrics contains temperature readings and the corresponding
link to that sensor in the sensor collection.
Temperatures such as Ambient, Exhaust, Intake, and Internal can be
found in the schema.
Tested: built bmcweb successfully and validator passes.
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I16ad2f922acc963a0434f3d9ab5583d2242b0013
|
|
Based on DSP8010_2022.2 and adds the EnvironmentMetrics schema.
Tested: built bmcweb successfully and validator passes
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: I994b48c544edc22a6bf99187b536f3e51e10b052
|
|
Add schemas for PowerSubsystem PowerSupply and PowerSupplyCollection.
Tested: built bmcweb successfully and validator passes.
Signed-off-by: Chicago Duan <duanzhijia01@inspur.com>
Change-Id: I913d690108e30c841d5dec5fa37c7b9cee43f7c1
|
|
The script missed a #include. Add it.
Tested: Code compiles. Header change only.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ib38a46d8e97e4aadb596b4ff68795cea06e62fde
|
|
Based on DSP8010_2022.2 and adds the schema of Fan and FanCollection.
Tested: built bmcweb successfully and validator passes
Signed-off-by: George Liu <liuxiwei@inspur.com>
Change-Id: Id1867a6f19d47d0fb1d686d650f7d936c33b5284
|
|
Run the script update_schemas.py by pointing it to 2022.2
An overview of 2022.2 release can be found at:
[1] https://www.dmtf.org/sites/default/files/Redfish_Release_2022.2_Overview.pdf
Signed-off-by: Asmitha Karunanithi <asmitk01@in.ibm.com>
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ic729af6848badd1c81121e61a22a7115e553358a
|
|
Update to an intermediate schema pack. This is not the newest, but is
an incremental commit to allow us to differentiate different versions of
the schema packs evolution.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I4e5905a3ed40ca41b095c39b4d29c074b6eaeb67
|
|
New versions of the DMTF schema pack seem to make this list parse in
less-than-ideal order. Previously, the schema pack zip file had an
order that was at least semi-alphabetical, but 2022.2 seems to cause
that to change.
This commit makes the update_schemas.py script explicitly alphabetize
the list. This changes the order of two keys that have common prefixes,
but leaves the rest of the order the same. Both are arguably correct.
This commit also exposes that this script seemed to have lots of
problems in its version number detection logic. To make all this work
properly, a fairly invasive change is required.
Tested: Running the script on 2021.4 produces the same result as
previously. See later commits for 2022.2 where result is now correct.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ia2365daee1d91de142652161bf752600f3109115
|
|
Now it supports updating individual registry. Run parse_registries.py to
see all the options. This speeds up development of the script itself:
e.g., when developing privilege related generator, we don't want to
regenerate other headers every time during development.
```
usage: parse_registries.py [-h] [--registries REGISTRIES]
options:
-h, --help show this help message and exit
--registries REGISTRIES
Comma delimited list of registries to update
```
```
[hi on] nanzhou@nanzhou:~/Desktop/bmcweb$ time scripts/parse_registries.py
real 0m1.493s
user 0m0.401s
sys 0m0.046s
[hi on] nanzhou@nanzhou:~/Desktop/bmcweb$ time scripts/parse_registries.py --registries privilege
real 0m0.667s
user 0m0.213s
sys 0m0.030s
```
This saves 50% of the time. Though the absolute time to generate a full
list if small.
By default, it generates all the registries.
Tested: tested the script, it can update headers correctly.
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: If13748a605a462f5dc7d83bad52360942b7dc6b7
|
|
https://black.readthedocs.io/en/stable/
Is a formatter that takes a more opinionated stance on pep8 compliance
than others, and as such gives us more consistent python code, even if
that's not currently enforced by ci. In addition, it allows patches to
automate their pep8 compliance similar to how we've done clang-format
for c++. We've done this transform other places throughout the codebase
and gotten a decent result, so duplicate it in bmcweb..
Run the black tool on update_schemas.py.
Tested: Reran update_schemas.py, and generated output is identical
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I83f47025ac61d0afd5df87ddb33f84269160191c
|
|
Made the auto-generated headers and the openbmc registry include what
they use. Also alligned the include style.
Tested: code compiles.
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: I6577d5e12bc02da3bd7bf5780f89a4860b314e19
|
|
This patch reused similar patterns in |REGISTRY_HEADER| so that the
python code is more readable. It also moved the clang-format off macro
and warning a bit in so they are all consistent with each other.
Tested: code compiles.
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: If18de0d9f89088f9b5732613ecf59520650bb11a
|
|
Suggested by https://peps.python.org/pep-0008/#imports.
Tested: parse_registries runs without issues.
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: I380f8d64caf963ac799ba255b55e36101fb7a8e4
|
|
Redfish collection Json schema files are not versioned, and only have a
single version file. In the script, we assumed that all files were
versioned, and the script ignored files that didn't parse as versioned.
This commit fixes the script, and checks in the relevant Collection
resources.
Tested: Redfish service validator passes on JsonSchemas resources and
collection.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I579dac3fdfecf485f7d414842effa9ae0ee517e8
|
|
Adds the ThermalSubsystem schema to the list of the supported schemas.
Tested: Code compiles. Script generated change.
Signed-off-by: Xiaochao Ma <maxiaochao@inspur.com>
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I4540fcaa57455ec95d4c8fff71429309c2eebce3
|
|
Tested:
Build pass.
Change-Id: Ic985b7fc15214a1e8cfa855ce2fb9a6557201c4e
Signed-off-by: Jiaqing Zhao <jiaqing.zhao@intel.com>
|
|
This change updates the privilege registry .json file from version 1.2.0
to 1.3.0. The change in privilege_registry is generated by executing the
parse_registries.py script.
Tested: The build completes.
Signed-off-by: Sui Chen <suichen@google.com>
Change-Id: Id36fa21df1b8fbd38a3b9aaad952773b0a1a0208
|
|
Generating all of these index files at compile time is kind of wasteful,
considering that it's really not that much code to generate them. This
commit modifies the update_schemas script to generate a C++ version of
the schemas that can then be used to generate a route. This allows
deleting a LOT of fixed files, for a very small incremental binary size
increase.
This change will cause two impacts that a user could possibly notice.
Expand will now work properly on JsonSchemas tree.
Keys on the JsonSchema schemas will now be sorted alphabetically, as we
do elsewhere.
All other things should remain the same.
Tested:
Redfish service validator passes.
curl --insecure --user root:0penBmc https://192.168.7.2/redfish/v1/JsonSchemas/Triggers
Returns the same object as before with changes above.
This adds 2512 bytes to the bmcweb binary size, and interestingly, adds
3764 bytes to the overall rootfs size, despite the level of file
deletion seen in the patch. While this is debatably "worse" than
what we had before in this regard, making JsonSchemas work similar
to how the rest of the Redfish tree operates, is worth the minor
increase in code size.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ic0d568112a3784821aa6867f7bcf50705dc586db
|
|
We plan on using these schemas, add them to the allow list.
Tested: Code generated.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I4d2cc4d580115bbaf2445469577940984e3045f0
|
|
The latest C++ no longer requires the size of the array to be hardcoded.
This removes the hardcoded size to simplify changes to the message
arrays.
Tested:
Confirmed that event Messages are still correctly generated.
Signed-off-by: Jason M. Bills <jason.m.bills@intel.com>
Change-Id: I29e6a4a02c247865c275cf4ff71587bc188d5957
|
|
Env is generally more portable than hardcoding path.
This change also keeps all scripts consistent.
Tested: all can run directly.
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: Ia2636420e54fae24a5a339377de65957ed40cc7e
|
|
In the way we store the message registry, we store both Severity and
MessageSeverity. Severity as a field is deprecated, and in every case
in every registry both fields have the same value. We shouldn't
duplicate data in that way. This commit changes the parse_registries.py
script to stop producing the Severity field into the struct. The few
uses we have left are moved over to use MessageRegistry.
Tested:
Redfish service validator shows no errors on the
/redfish/v1/Registries tree. Other errors present that were there
previously and are unchanged.
This saves a trivial amount: about 1kB on our compressed binary size.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ibbaf533dc59eb08365d6ed309aba16b54bc40ca1
|
|
The message_registries namespace is overly wordy, and results in very
long defines. Doing this one minor change reduces the code by 50 lines.
This seems worthwhile.
Tested: Unit tests pass. Namespace change only.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Ib1401580b3fa47596eb56cdc86e60eeeb1c2f952
|
|
When formatting blocks of code, there's a lot of redundant
registry.write calls that obfuscate a lot of the intent. When handling
whitespace, this also makes the code a level harder to read.
This commit tries to avoid large blocks of registry.write entries, to
make the code easier to read.
Tested:
ran parse_registries.py, and verified via git that it generates the same
files as it did previously.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I77a885fe3eb0738e4bfb53cf321b20f691572f5b
|
|
A number of reviews have been submitted that ignore this warning. While
we now have 01caf624211197a993dbbd186149293f7053f9d8 which will catch
these violations at CI time, that is arguably already too late, and
developers will have wasted their time.
This commit changes the warning to be multiple lines, with a caps
header, such that it's less likely to be ignored. It also adds
suggestions on how to proceed.
As a note, this also standardizes privilege registry to use the same
warning as the other files, which it didn't previously.
Tested: Comment changes only, no functional changes.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I3224130dbf581dc962187b2fde4dc98ae26de082
|
|
Previously, parse_registries was not very careful about generating
readable files, and relied on clang-format to "fix" them after the fact.
Given they're generated, this is unforunate, and leads to some
inconsistencies in reading the generated code.
This commit changes the script to no longer rely on clang-format, and
wrap the whole file in a clang-format off bracket. This means that our
message registry generation will be consistent.
As an added bonus, different versions of clang-format like to format
these structures differently, so this removes one possible barrier to
people updating these.
This was initiated by the next patch in the series, which made a
seemingly minor change to a comment, which caused a significant change
in this file because of clang-format versioning.
Tested: ran parse_registries.py and saw build passing. Whitespace
changes only.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: Id48bb43dd9d8ecc83de1840f2f1045a87e2ff796
|
|
This change adds the ManagerDiagnosticData schema files.
Tested: ran Redfish Service Validator:
+ Manager
Diagnostic
2021.4 Data
metadataNamespaces: 2388 2390
pass: 3249 3274
passAction: 8 8
passGet: 121 123
passRedfishUri: 115 117
skipNoSchema: 3 3
skipOptional: 2184 2198
warnDeprecated: 315 315
warningPresent: 11 11
Validation has: succeeded succeeded
curl -k
https://$bmc/redfish/v1/JsonSchema/ManagerDiagnosticData/\
ManagerDiagnosticData.json
...
"title": "#ManagerDiagnosticData.v1_0_0.ManagerDiagnosticData"
}
Signed-off-by: Sui Chen <suichen@google.com>
Change-Id: I0d86b45350475771acdd492a98018156f8c819dd
|
|
Being able to index into the message registry constexpr arrays will be
useful in the future, so update the parse_registries script to generate
an Index enum class, that allows directly indexing into the constexpr
table when necessary.
These indexes are used in the patchset here:
https://gerrit.openbmc-project.xyz/c/openbmc/bmcweb/+/50950
to avoid a binary search lookup for each entry.
Tested: No-op change, code inspection only.
Signed-off-by: Ed Tanous <edtanous@google.com>
Change-Id: I345cc26a2b17b5bcd8cfb0055642f4ae443caad4
|
|
Tested:
The following command worked.
```
python scripts/websocket_test.py --host localhost:18080 --no-ssl
```
Signed-off-by: Nan Zhou <nanzhoumails@gmail.com>
Change-Id: Ib14bd8ecdb5f0cad4a8e0478d69abcdc3e46c3ec
|