27 Commits

Author SHA1 Message Date
Bill Mahoney
098ba37907 ci: Protex only scan main 2022-03-10 09:13:41 -07:00
Mike
2a2d6a807b Merge pull request #68 from open-amt-cloud-toolkit/rsdmike-patch-1
docs: add contributing guidelines
2021-10-11 15:12:31 -07:00
Mike
6b7bbbf079 Merge branch 'main' into rsdmike-patch-1 2021-10-09 13:51:32 -07:00
Mike
2b3166dfa0 Merge pull request #67 from open-amt-cloud-toolkit/ci 2021-10-09 13:51:19 -07:00
Mike
926b8d7064 Merge branch 'main' into ci 2021-10-09 11:44:58 -07:00
Mike
62e0b4f037 Merge branch 'main' into rsdmike-patch-1 2021-10-09 11:44:45 -07:00
Mike
24b18f6422 docs(github): add pull request template 2021-10-04 11:39:23 -07:00
Mike
052dff7d6f docs: add contributing guidelines
closes AB#4121
2021-10-04 10:49:05 -07:00
Mike
2c4c42851d ci: rename master to main for jobs 2021-09-29 11:58:53 -07:00
Mike
d4df37c500 Merge pull request #66 from open-amt-cloud-toolkit/v2
docs(changelog): add v2 changelog
2021-09-15 16:10:13 -07:00
Mike
6c7443e7e4 Merge branch 'master' into v2 2021-09-15 15:33:54 -07:00
Mike
d6db3c32cc docs(changelog): add v2 changelog 2021-09-15 15:29:11 -07:00
mpvats-intel
e06d4cbe29 Merge pull request #65 from open-amt-cloud-toolkit/feat_update_openssl
feat: update to OpenSSL 1.1.1l
2021-09-10 11:15:48 -07:00
Mudit Vats
d596186fea feat: update to OpenSSL 1.1.1l 2021-09-09 16:29:21 -07:00
mpvats-intel
61678dc9f6 Merge pull request #64 from open-amt-cloud-toolkit/feat_update_version
feat: update version for release
2021-08-31 10:11:55 -07:00
Mudit Vats
739992cf29 feat: update version for release 2021-08-31 09:50:29 -07:00
mpvats-intel
a9b8d8e5f8 Merge pull request #63 from open-amt-cloud-toolkit/feat_update_vcpkg
feat: Update docs and scripts for Windows and Ubuntu.
2021-08-27 06:41:31 -07:00
Mudit Vats
2a460e90dc feat: update workflows and Docker build. 2021-08-26 13:27:36 -07:00
Mudit Vats
59a8d29ac4 Merge branch 'feat_update_vcpkg' of https://github.com/open-amt-cloud-toolkit/rpc into feat_update_vcpkg 2021-08-26 12:54:52 -07:00
Mudit Vats
cb9539639a feat: Update to latest vcpkg 2021-08-26 12:54:43 -07:00
mpvats-intel
a151146e8a Merge branch 'master' into feat_update_vcpkg 2021-08-25 08:25:25 -07:00
Mudit Vats
bb8211ae03 feat: Update docs and scripts for Windows and Ubuntu. 2021-08-25 08:19:02 -07:00
mpvats-intel
ed5480c7d1 Merge pull request #62 from open-amt-cloud-toolkit/spelling-fix
fix(spelling): lan inteface -> lan interface in amtinfo
2021-08-24 17:00:39 -07:00
Mike
c9a2ab44dd fix(spelling): lan inteface -> lan interface in amtinfo 2021-08-24 16:03:21 -07:00
Mike
fb29227f9d Merge pull request #61 from open-amt-cloud-toolkit/feat_message_formatting
feat: format json status messages
2021-08-18 08:51:44 -07:00
Mudit Vats
26629a1a68 feat: format json status messages 2021-08-17 13:41:07 -07:00
Mike
db924a9b2e build: bump version to v1.3.0 2021-08-02 10:13:39 -07:00
19 changed files with 209 additions and 22 deletions

16
.github/PULL_REQUEST_TEMPLATE.md vendored Normal file
View File

@@ -0,0 +1,16 @@
## PR Checklist
<!-- Please check if your PR fulfills the following requirements: -->
- [ ] Unit Tests have been added for new changes
- [ ] API tests have been updated if applicable
- [ ] All commented code has been removed
- [ ] If you've added a dependency, you've ensured license is compatible with Apache 2.0 and clearly outlined the added dependency.
## What are you changing?
<!-- Please provide a short description of the updates that are in the PR -->
## Anything the reviewer should know when reviewing this PR?
### If the there are associated PRs in other repositories, please link them here (i.e. open-amt-cloud-toolkit/repo#365 )

View File

@@ -24,7 +24,7 @@ jobs:
- name: Create Build Dir
run: mkdir build
- name: Clone
run: git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
run: git clone https://github.com/microsoft/vcpkg.git && cd vcpkg && git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
- name: Build VCPKG
run: cd vcpkg && bootstrap-vcpkg.bat
shell: cmd
@@ -71,7 +71,7 @@ jobs:
- name: Create Build Dir
run: mkdir build
- name: Clone
run: git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
run: git clone https://github.com/microsoft/vcpkg.git && cd vcpkg && git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
- name: Build VCPKG
run: cd vcpkg && ./bootstrap-vcpkg.sh
shell: bash

View File

@@ -2,7 +2,7 @@ name: Changelog Generator
on:
pull_request:
branches: [ master ]
branches: [ main ]
workflow_dispatch:
jobs:
build:

View File

@@ -7,7 +7,7 @@ name: Build RPC (Native)
on:
pull_request:
branches: [ master ]
branches: [ main ]
env:
BUILD_TYPE: Release
@@ -21,7 +21,7 @@ jobs:
- name: Create Build Dir
run: mkdir build
- name: Clone
run: git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
run: git clone https://github.com/microsoft/vcpkg.git && cd vcpkg && git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
- name: Build VCPKG
run: cd vcpkg && bootstrap-vcpkg.bat
shell: cmd
@@ -54,7 +54,7 @@ jobs:
- name: Create Build Dir
run: mkdir build
- name: Clone
run: git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
run: git clone https://github.com/microsoft/vcpkg.git && cd vcpkg && git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
- name: Build VCPKG
run: cd vcpkg && ./bootstrap-vcpkg.sh
shell: bash

View File

@@ -7,7 +7,7 @@ name: Docker Image CI
on:
push:
branches: [ master ]
branches: [ main ]
jobs:
build:
runs-on: ubuntu-latest

View File

@@ -25,8 +25,9 @@ sudo apt install git cmake build-essential curl zip unzip tar pkg-config
Open a Terminal window.
```
git clone -b 2020.11-1 https://github.com/microsoft/vcpkg.git
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
./bootstrap-vcpkg.sh
./vcpkg install cpprestsdk[websockets]
```
@@ -68,8 +69,9 @@ Steps below are for Windows 10 and Visual Studio 2019 Professional.
Open an x64 Native Tools Command Prompt for Visual Studio 2019.
```
git clone -b 2020.11-1 https://github.com/microsoft/vcpkg.git
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
bootstrap-vcpkg.bat
vcpkg install cpprestsdk[websockets]:x64-windows-static
```

View File

@@ -1,3 +1,30 @@
<a name="v2.0.0"></a>
## v2.0.0
### Build
- bump version to v1.3.0
- bump version to v2.0.0
### Ci
- update scanning
### Docs
- **readme:** wording
- **readme:** update readme
- **security:** added SECURITY.md file
### Feat
- update to OpenSSL 1.1.1l
- update workflows and Docker build.
- Update to latest vcpkg
- Update docs and scripts for Windows and Ubuntu.
- format json status messages
- add AMT wireless adapter info to amtinfo LAN settings.
### Fix
- klockwork reported success / failure check fix
- **spelling:** lan inteface -> lan interface in amtinfo
<a name="v1.2.2"></a>
## [v1.2.2] - 2021-06-22
### Ci

View File

@@ -1,6 +1,6 @@
cmake_minimum_required (VERSION 3.1)
project (rpc VERSION 1.2.1)
project (rpc VERSION 2.0.0)
set (CMAKE_CXX_STANDARD 11)

101
CONTRIBUTING.MD Normal file
View File

@@ -0,0 +1,101 @@
## <a name="commit"></a> Commit Message Guidelines
We have precise rules over how our git commit messages should be formatted. This leads to more readable messages that are easy to follow when looking through the project history.
### Commit Message Format
Each commit message consists of a **header**, a **body** and a **footer**. The header has a special format that includes a **type**, a **scope** and a **subject**:
```
<type>(<scope>): <subject>
<BLANK LINE>
<body>
<BLANK LINE>
<footer>
```
The **header** with **type** is mandatory. The **scope** of the header is optional as far as the automated PR checks are concerned, but be advised that PR reviewers **may request** you provide an applicable scope.
Any line of the commit message should no be longer 72 characters! This allows the message to be easier to read on GitHub as well as in various git tools.
The footer should contain a reference to an Azure Boards ticket (e.g. AB#[number]).
Example 1:
```
feat(telemetry): Add new MQTT events
Events are now emitted over various /mps topics on MQTT for success/failures
as they occur throughout the service.
Resolves: AB#2222
```
### Revert
If the commit reverts a previous commit, it should begin with `revert: `, followed by the header of the reverted commit. In the body it should say: `This reverts commit <hash>.`, where the hash is the SHA of the commit being reverted.
### Type
Must be one of the following:
* **feat**: A new feature
* **fix**: A bug fix
* **docs**: Documentation only changes
* **style**: Changes that do not affect the meaning of the code (white-space, formatting, etc)
* **refactor**: A code change that neither fixes a bug nor adds a feature
* **perf**: A code change that improves performance
* **test**: Adding missing tests or correcting existing tests
* **build**: Changes that affect the CI/CD pipeline or build system or external dependencies (example scopes: travis, jenkins, makefile)
* **ci**: Changes provided by DevOps for CI purposes.
* **revert**: Reverts a previous commit.
### Scope
Should be one of the following:
Modules:
* **common**: A change or addition to the common module
* **tracker**: A change or addition to the tracker module
* **server**: A change or addition to the server module
* **msgs**: A change or addition to msgs module
* **eval**: Any change to benchmark tools
* **deps**: A change to any dependency or 3rd-party library
* **all**: A change that affects all modules
* *no scope*: If no scope is provided, it is assumed the PR does not apply to the above scopes
### Body
Just as in the **subject**, use the imperative, present tense: "change" not "changed" nor "changes".
Here is detailed guideline on how to write the body of the commit message ([Reference](https://chris.beams.io/posts/git-commit/)):
```
More detailed explanatory text, if necessary. Wrap it to about 72
characters or so. In some contexts, the first line is treated as the
subject of the commit and the rest of the text as the body. The
blank line separating the summary from the body is critical (unless
you omit the body entirely); various tools like `log`, `shortlog`
and `rebase` can get confused if you run the two together.
Explain the problem that this commit is solving. Focus on why you
are making this change as opposed to how (the code explains that).
Are there side effects or other unintuitive consequences of this
change? Here's the place to explain them.
Further paragraphs come after blank lines.
- Bullet points are okay, too
- Typically a hyphen or asterisk is used for the bullet, preceded
by a single space, with blank lines in between, but conventions
vary here
```
### Footer
The footer should contain a reference to JIRA ticket (e.g. SL6-0000) that this commit **Closes** or **Resolves**.
The footer should contain any information about **Breaking Changes**.
**Breaking Changes** should start with the word `BREAKING CHANGE:` with a space or two newlines.
### Pull Requests practices
* PR author is responsible to merge its own PR after review has been done and CI has passed.
* When merging, make sure git linear history is preserved. PR author should select a merge option (`Rebase and merge` or `Squash and merge`) based on which option will fit the best to the git linear history.
* PR topic should follow the same guidelines as the header of the [Git Commit Message](#commit-message-format)

View File

@@ -50,8 +50,9 @@ export PATH=/home/user/Downloads/git:$PATH
Using a Terminal window with the PATH and devtoolset enabled per the Dependencies.
```
git clone -b 2020.11-1 https://github.com/microsoft/vcpkg.git
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
./bootstrap-vcpkg.sh
./vcpkg install cpprestsdk[websockets]
```

View File

@@ -28,8 +28,9 @@ sudo yum install cmake
Using a Terminal window with the PATH and devtoolset enabled per the Dependencies.
```
git clone -b 2020.11-1 https://github.com/microsoft/vcpkg.git
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
./bootstrap-vcpkg.sh
./vcpkg install cpprestsdk[websockets]
```

View File

@@ -15,7 +15,7 @@ RUN \
RUN git clone https://github.com/open-amt-cloud-toolkit/rpc.git
WORKDIR /rpc
RUN mkdir -p build
RUN git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
RUN git clone https://github.com/microsoft/vcpkg.git && cd vcpkg && git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
RUN cd vcpkg && ./bootstrap-vcpkg.sh
RUN ./vcpkg/vcpkg install cpprestsdk[websockets]

7
Jenkinsfile vendored
View File

@@ -24,6 +24,11 @@ pipeline {
PROJECT_NAME = 'OpenAMT - RPC'
SCANNERS = 'protex'
}
when {
anyOf {
branch 'main';
}
}
steps {
rbheStaticCodeScan()
}
@@ -151,4 +156,4 @@ pipeline {
}
}
}
}
}

View File

@@ -27,7 +27,7 @@ We leverage GitHub Actions as a means to build RPC automatically leveraging Gith
3. Click the **Run Workflow** dropdown.
4. Select the **Branch: master**, or a preferred version, from the **Use workflow from** dropdown.
4. Select the **Branch: main**, or a preferred version, from the **Use workflow from** dropdown.
5. By default, the Build Type should be **release**.

View File

@@ -273,7 +273,7 @@ bool info_get_lan_interface_settings()
bool hasWired = cmd_get_lan_interface_settings(tmp);
if (hasWired)
{
out_text("LAN Inteface", "wired");
out_text("LAN Interface", "wired");
out_text("DHCP Enabled", (tmp.dhcp_enabled) ? "true" : "false");
out_text("DHCP Mode", (tmp.dhcp_mode == 1) ? "active" : "passive");
out_text("Link Status", (tmp.link_status) ? "up" : "down");
@@ -291,7 +291,7 @@ bool info_get_lan_interface_settings()
bool hasWireless = cmd_get_lan_interface_settings(tmp, false);
if (hasWireless)
{
out_text("LAN Inteface", "wireless");
out_text("LAN Interface", "wireless");
out_text("DHCP Enabled", (tmp.dhcp_enabled) ? "true" : "false");
out_text("DHCP Mode", (tmp.dhcp_mode == 1) ? "active" : "passive");
out_text("Link Status", (tmp.link_status) ? "up" : "down");
@@ -368,4 +368,4 @@ bool info_get_verify(const std::string info)
}
return false;
}
}

View File

@@ -7,6 +7,7 @@
#include <thread>
#include <cpprest/ws_client.h>
#include <cpprest/json.h>
#include <algorithm>
#include "port.h"
#include "lms.h"
#include "commands.h"
@@ -271,7 +272,22 @@ int main(int argc, char* argv[])
g_timeout_val = 0;
// exit
std::cout << std::endl << msgMessage << std::endl;
try {
std::cout << std::endl;
utility::string_t tmp = utility::conversions::convertstring(msgMessage);
web::json::value parsed = web::json::value::parse(tmp);
for (const auto& obj : parsed.as_object()) {
std::string key = utility::conversions::to_utf8string(obj.first);
std::string value = utility::conversions::to_utf8string(obj.second.serialize());
value.erase(std::remove(value.begin(), value.end(), '"'), value.end());
std::cout << key << ": " << value << std::endl;
}
}
catch (...)
{
std::cout << std::endl << msgMessage << std::endl;
}
return;
}
else if (msgStatus.compare("failed")==0)
@@ -280,7 +296,22 @@ int main(int argc, char* argv[])
g_timeout_val = 0;
// exit
std::cout << std::endl << msgMessage << std::endl;
try {
std::cout << std::endl;
utility::string_t tmp = utility::conversions::convertstring(msgMessage);
web::json::value parsed = web::json::value::parse(tmp);
for (const auto& obj : parsed.as_object()) {
std::string key = utility::conversions::to_utf8string(obj.first);
std::string value = utility::conversions::to_utf8string(obj.second.serialize());
value.erase(std::remove(value.begin(), value.end(), '"'), value.end());
std::cout << key << ": " << value << std::endl;
}
}
catch (...)
{
std::cout << std::endl << msgMessage << std::endl;
}
return;
}

View File

@@ -15,8 +15,9 @@ set VCPKG_DIR=C:\opt\vcpkg-source
cd %VCPKG_DIR%
REM build vcpkg
git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git
git clone https://github.com/microsoft/vcpkg.git
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
cmd /c bootstrap-vcpkg.bat
REM install CPPRestSDK

View File

@@ -12,8 +12,9 @@ apt install git cmake build-essential curl zip unzip tar pkg-config -y
#cd "$BASE_DIR"/rpc
## build vcpkg
git -C vcpkg pull || git clone --branch 2020.11-1 https://github.com/microsoft/vcpkg.git vcpkg
git -C vcpkg pull || git clone https://github.com/microsoft/vcpkg.git vcpkg
cd vcpkg
git checkout 772d435ba18bf2f342458e0187ab7b48b84fe3f0
./bootstrap-vcpkg.sh
## install CPPRestSDK

1
vcpkg Submodule

Submodule vcpkg added at 5568f110b5