Skip to content

fixup! feat(core): CI pipeline to build and test CPP SDK #26

fixup! feat(core): CI pipeline to build and test CPP SDK

fixup! feat(core): CI pipeline to build and test CPP SDK #26

Workflow file for this run

name: CXX build
on:
workflow_dispatch:
push:
branches:
- 'main'
- 'next'
- 'feature/cxx-build-workflow'
env:
HUSKY: 0
jobs:
thunder:
name: Build Thunder Libraries
runs-on: ubuntu-latest
container:
image: kevinshahfws/node-c:3.0
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Clone and Install Thunder
id: install_thunder
run: |
.github/workflows/utils.sh cloneAndInstallThunder
- name: Upload the library artifact
uses: actions/upload-artifact@v3
with:
name: thunder
path: /__w/firebolt-apis/install/
openrpc:
name: Build Openrpc Artifacts
runs-on: ubuntu-latest
container:
image: kevinshahfws/node-c:3.0
steps:
# Checkout/install project
- name: Checkout
uses: actions/checkout@v2
with:
fetch-depth: 0
repo-token: ${{ secrets.SEMANTIC_RELEASE_BOT_PAT }}
persist-credentials: false
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: 'lts/*'
- name: Set up NPM token
env:
NPM_TOKEN: ${{ secrets.SEMANTIC_RELEASE_NPM_TOKEN }} # <-- allow npm publish for each workspace
run: 'echo "//registry.npmjs.org/:_authToken=${NPM_TOKEN}" > .npmrc'
- name: Install dependencies
run: npm ci
# Set file permissions
- name: Set file permissions
run: |
chmod -R 755 ./
chown -R $(id -u):$(id -g) ./
- name: Build Artifacts
run: |
npm run dist
# - name: Create SDK artifacts
# run: |
# mkdir -p sdk-artifacts/
# mkdir -p sdk-artifacts/dist/
# mkdir -p sdk-artifacts/core-sdk/
# mkdir -p sdk-artifacts/manage-sdk/
# mkdir -p sdk-artifacts/discovery-sdk/
# cp -f package.json sdk-artifacts/
# cp -rf dist/* sdk-artifacts/dist/
# cp -rf src/sdks/core/* sdk-artifacts/core-sdk/
# cp -rf src/sdks/manage/* sdk-artifacts/manage-sdk/
# cp -rf src/sdks/discovery/* sdk-artifacts/discovery-sdk/
# - name: Upload the sdk artifacts
# uses: actions/upload-artifact@v3
# with:
# name: sdk-artifacts
# path: /__w/firebolt-apis/firebolt-apis/sdk-artifacts
- name: Upload the core sdk artifacts
uses: actions/upload-artifact@v3
with:
name: core-sdk
path: |
package.json
dist
src/sdks/core
core_sdk:
name: Build Core SDK
needs: [thunder, openrpc]
runs-on: ubuntu-latest
container:
image: kevinshahfws/node-c:3.0
steps:
# Checkout/install project
- name: Checkout
uses: actions/checkout@v2
- name: Download Core SDK
uses: actions/download-artifact@v3
with:
name: core-sdk
path: /__w/core-sdk/
- name: Show core sdk
run: ls -la /__w/core-sdk/

Check failure on line 113 in .github/workflows/cxx-build.yml

View workflow run for this annotation

GitHub Actions / .github/workflows/cxx-build.yml

Invalid workflow file

You have an error in your yaml syntax on line 113
# - name: Download Thunder
# uses: actions/download-artifact@v3
# with:
# name: thunder
# path: /__w/thunder/install/
# - name: Install npm dependencies
# run: |
# cd /__w/core-sdk/
# npm install
# - name: Build CXX Core SDK
# run: |
# .github/workflows/utils.sh buildCoreCPPSDK
# manage_sdk:
# name: Build Manage SDK
# needs: [thunder, openrpc]
# runs-on: ubuntu-latest
# container:
# image: kevinshahfws/node-c:3.0
# steps:
# # Checkout/install project
# - name: Checkout
# uses: actions/checkout@v2
# - name: Download Manage SDK
# uses: actions/download-artifact@v3
# with:
# name: sdk-artifacts/manage-sdk
# path: /__w/manage-sdk/
# - name: Download Thunder
# uses: actions/download-artifact@v3
# with:
# name: thunder
# path: /__w/thunder/install/
# - name: Install npm dependencies
# run: |
# cd /__w/manage-sdk/
# npm install
# - name: Build CXX manage SDK
# run: |
# .github/workflows/utils.sh buildManageCPPSDK
# dicovery_sdk:
# name: Build Dicovery SDK
# needs: [thunder, openrpc]
# runs-on: ubuntu-latest
# container:
# image: kevinshahfws/node-c:3.0
# steps:
# # Checkout/install project
# - name: Checkout
# uses: actions/checkout@v2
# - name: Download Dicovery SDK
# uses: actions/download-artifact@v3
# with:
# name: sdk-artifacts/dicovery-sdk
# path: /__w/dicovery-sdk/
# - name: Download Thunder
# uses: actions/download-artifact@v3
# with:
# name: thunder
# path: /__w/thunder/install/
# - name: Install npm dependencies
# run: |
# cd /__w/dicovery-sdk/
# npm install
# - name: Build CXX Dicovery SDK
# run: |
# .github/workflows/utils.sh buildDicoveryCPPSDK
#==============================================================
# - name: Install Gcovr
# run: |
# apt remove --purge gcovr -y
# pip install --upgrade gcovr
# - name: Setup Node.js
# uses: actions/setup-node@v2
# with:
# node-version: 'lts/*'
# - name: Install dependencies
# run: npm ci
# - name: Clone and Install Thunder
# id: install_thunder
# run: |
# .github/workflows/utils.sh cloneAndInstallThunder
# - name: Build Artifacts
# run: |
# npm run dist
# - name: Build CXX
# run: |
# cd src/sdks/core/
# ls
# npm run cpp
# - name: Build SDK
# run: |
# tar -zxvf src/sdks/core/build/cpp/src/firebolt-core-native-sdk-1.3.0-next.1.tgz -C ../
# cd ../firebolt-core-native-sdk-1.3.0-next.1
# cp -f ../firebolt-apis/external/CMakeLists.txt ./
# cp -f ../firebolt-apis/external/include/json_engine.h ./include/
# cp -f ../firebolt-apis/external/src/CMakeLists.txt ./src/
# cp -f ../firebolt-apis/external/src/Transport.h ./src/
# ./build.sh -s ${pwd}/../install
# ls build/test/
# ctest --test-dir build/