Skip to content

Commit

Permalink
Merge pull request #53 from finos/feature/mergeAlphaToBeta
Browse files Browse the repository at this point in the history
Feature/merge alpha to beta
  • Loading branch information
Vivek-NatWest authored Nov 17, 2023
2 parents d2ea4f2 + 23ff50e commit 5f8fd86
Show file tree
Hide file tree
Showing 13 changed files with 193 additions and 26 deletions.
12 changes: 7 additions & 5 deletions .github/workflows/backplane-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
Expand All @@ -36,10 +38,10 @@ jobs:

- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GIT_AUTHOR_NAME: vivek-natwest
GIT_AUTHOR_EMAIL: vivek.kumargiri@natwestmarkets.com
GIT_COMMITTER_NAME: vivek-natwest
GIT_COMMITTER_EMAIL: vivek.kumargiri@natwestmarkets.com
GITHUB_TOKEN: ${{ secrets.AUTO_RELEASE_TOKEN }}
GIT_AUTHOR_NAME: manish-nwm
GIT_AUTHOR_EMAIL: manish.bhutani@natwestmarkets.com
GIT_COMMITTER_NAME: manish-nwm
GIT_COMMITTER_EMAIL: manish.bhutani@natwestmarkets.com
run: npx semantic-release
working-directory: ./src/Finos.Fdc3.Backplane
12 changes: 7 additions & 5 deletions .github/workflows/npm-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@ jobs:
steps:
- name: Checkout
uses: actions/checkout@v3
with:
persist-credentials: false

- name: Setup Node.js
uses: actions/setup-node@v3
Expand All @@ -25,11 +27,11 @@ jobs:
working-directory: ./src/Finos.Fdc3.Backplane.Client.JS
- name: Release
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GITHUB_TOKEN: ${{ secrets.AUTO_RELEASE_TOKEN }}
NPM_TOKEN: ${{ secrets.NPM_TOKEN }}
GIT_AUTHOR_NAME: vivek-natwest
GIT_AUTHOR_EMAIL: vivek.kumargiri@natwestmarkets.com
GIT_COMMITTER_NAME: vivek-natwest
GIT_COMMITTER_EMAIL: vivek.kumargiri@natwestmarkets.com
GIT_AUTHOR_NAME: manish-nwm
GIT_AUTHOR_EMAIL: manish.bhutani@natwestmarkets.com
GIT_COMMITTER_NAME: manish-nwm
GIT_COMMITTER_EMAIL: manish.bhutani@natwestmarkets.com
run: npx semantic-release
working-directory: ./src/Finos.Fdc3.Backplane.Client.JS
12 changes: 7 additions & 5 deletions .github/workflows/nuget-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ jobs:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
with:
persist-credentials: false
- name: Setup .NET
uses: actions/setup-dotnet@v3
with:
Expand All @@ -32,10 +34,10 @@ jobs:
- name: Release
env:
NUGET_TOKEN: ${{ secrets.NUGET_TOKEN }}
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
GIT_AUTHOR_NAME: vivek-natwest
GIT_AUTHOR_EMAIL: vivek.kumargiri@natwestmarkets.com
GIT_COMMITTER_NAME: vivek-natwest
GIT_COMMITTER_EMAIL: vivek.kumargiri@natwestmarkets.com
GITHUB_TOKEN: ${{ secrets.AUTO_RELEASE_TOKEN }}
GIT_AUTHOR_NAME: manish-nwm
GIT_AUTHOR_EMAIL: manish.bhutani@natwestmarkets.com
GIT_COMMITTER_NAME: manish-nwm
GIT_COMMITTER_EMAIL: manish.bhutani@natwestmarkets.com
run: npx semantic-release
working-directory: ./src/Finos.Fdc3.Backplane.Client
11 changes: 10 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,15 @@ The power and benefits of FDC3 based interoperability can be harnessed to full p

### ✔️ Workflows can be spanned across multiple machines, provided they are operated by same user.

## Quick Start

See the guide here: [quick start](./docs/QuickStart.md).

## Hello World!

See how multi machine interop set up is done: [multi machine desktop agent(finsemble) bridging](./docs/HelloWorld.md)


## Demo

Below is a short demonstration of how backplane is used to connect two desktop agents(finsemble), running on different machines, to share context among apps running in context of those desktop agents.
Expand Down Expand Up @@ -114,4 +123,4 @@ Copyright (C) 2022 Backplane open source project

Distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).

SPDX-License-Identifier: [Apache-2.0](https://spdx.org/licenses/Apache-2.0)
SPDX-License-Identifier: [Apache-2.0](https://spdx.org/licenses/Apache-2.0).
75 changes: 75 additions & 0 deletions docs/HelloWorld.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,75 @@
![backplane logo](./resources/BackplaneIcon.png)

# Hello World! with Backplane
** This is for demonstration only and is not the strategic way of finsemble integration. Such integration services are out of scope of backplane and would be part of vendor implementation compliant to bridging specs.

## Use case
User want a workflow automation where on applying *filter in an app running in context of finsemble on Desktop A is automatically applied to apps running in context of finsemble on Desktop B* to avoid hassle of manual copy paste.

## Workflow

Broadcast

Grid App[Finsemble: Desktop A] ↔ Bridge[Finsemble: Desktop A] ↔ Backplane[Desktop A] ↔(Network)↔ Backplane[Desktop B] ↔ Bridge[Finsemble: Desktop B] ↔ Chart App[Finsemble: Desktop B]

## Set Up

### On Desktop A


Download latest version of backplane:
1. go to [backplane-releases](https://github.com/finos/backplane/releases?q=finos-fdc3-backplane).
2. Download finos-fdc3-backplane-vx.x.xX.zip from assets.
3. Unzip the zip folder.


*If multi desktop interop is not required, skip and jump to step 6*


4. Open appsettings.json file.
5. Navigate to key MultiHostConfig and add the address of Desktop B. Ex below

```JSON
- "MultiHostConfig": {
"MemberNodes": [
//put your member nodes url here
//example:
"http://Desktop_B:4475"
]
},
```
6. Run 'Finos.Fdc3.Backplane.exe'.
7. If multi desktop interop is not required, jump to [finsemble-backplane bridge setup](#finsemble-backplane-bridge)

### On Desktop B


Download latest version of backplane:
- go to [backplane-releases](https://github.com/finos/backplane/releases?q=finos-fdc3-backplane).
- Download finos-fdc3-backplane-vx.x.xX.zip from assets.
- Unzip the zip folder.
- Open appsettings.json file.
- Navigate to key MultiHostConfig and add the address of Desktop A. Ex below

```JSON
- "MultiHostConfig": {
"MemberNodes": [
//put your member nodes url here
//example:
"http://Desktop_A:4475"
]
},
```
- Run 'Finos.Fdc3.Backplane.exe'.

### Finsemble-Backplane Bridge

- Download the seed project as zip from https://github.com/Finsemble/finsemble-seed/tree/release/7.3.2

- Install dependencies:
``` NPM
cd finsemble-seed
yarn install
```
- Set up the bridge service and launch finsemble as described here: [readme](../samples/FinsembleIntegration/README.md)

57 changes: 57 additions & 0 deletions docs/QuickStart.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
![backplane logo](./resources/BackplaneIcon.png)

## Quick Start Guide

Download latest version of backplane:
- go to [backplane-releases](https://github.com/finos/backplane/releases?q=finos-fdc3-backplane).
- Download finos-fdc3-backplane-vx.x.xX.zip from assets.
- Unzip the zip folder.
- Run 'Finos.Fdc3.Backplane.exe'.

Install npm package of backplane client:

```sh

# npm
npm install @finos/fdc3-backplane-client

#yarn
yarn add @finos/fdc3-backplane-client

```
See [readme](../src/Finos.Fdc3.Backplane.Client.JS/README.md)

### Multi desktop interop through config
- Open appsettings.json file.
- Navigate to key MultiHostConfig and add the address of Desktop B. Ex below

```JSON
- "MultiHostConfig": {
"MemberNodes": [
//put your member nodes url here
//example:
"http://Desktop_B:4475"
]
},
```

### Finsemble-Backplane Integration

- Download the seed project as zip from https://github.com/Finsemble/finsemble-seed/tree/release/7.3.2

- Install dependencies:
``` sh
cd finsemble-seed
yarn install
```
- Set up the bridge service as described here: [readme](../samples/FinsembleIntegration/README.md)

Note: In case of multi desktop interop, both instance of finsemble on desktop A and B must have this configuration to communicate with backplane.

- Launch finsemble






Original file line number Diff line number Diff line change
Expand Up @@ -14,6 +14,7 @@

<ItemGroup>
<ProjectReference Include="..\..\src\Finos.Fdc3.Backplane.Client\Finos.Fdc3.Backplane.Client.csproj" />
<ProjectReference Include="..\..\src\Finos.Fdc3.Backplane.DTO\Finos.Fdc3.Backplane.DTO.csproj" />
</ItemGroup>

</Project>
2 changes: 1 addition & 1 deletion src/Finos.Fdc3.Backplane.Client/.releaserc.json
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,7 @@
[
"@semantic-release/exec",
{
"publishCmd": "dotnet build Finos.Fdc3.Backplane.Client.csproj --configuration Release --no-restore; dotnet nuget push ./artifacts/*.nupkg -k ${process.env.NUGET_TOKEN} -s https://api.nuget.org/v3/index.json"
"publishCmd": "dotnet build Finos.Fdc3.Backplane.Client.csproj --configuration Release --no-restore; dotnet pack Finos.Fdc3.Backplane.Client.csproj --configuration Release; dotnet nuget push ./artifacts/*.nupkg -k ${process.env.NUGET_TOKEN} -s https://api.nuget.org/v3/index.json"
}
],
[
Expand Down
24 changes: 21 additions & 3 deletions src/Finos.Fdc3.Backplane.Client/Finos.Fdc3.Backplane.Client.csproj
Original file line number Diff line number Diff line change
@@ -1,7 +1,25 @@
<Project Sdk="Microsoft.NET.Sdk">
<!--This is advance msbuild setting to enable project reference copied to nuget pack
see: https://github.com/NuGet/Home/issues/3891#issuecomment-569491001
-->
<PropertyGroup>
<TargetsForTfmSpecificBuildOutput>$(TargetsForTfmSpecificBuildOutput);CopyProjectReferencesToPackage</TargetsForTfmSpecificBuildOutput>
</PropertyGroup>
<Target Name="CopyProjectReferencesToPackage" DependsOnTargets="BuildOnlySettings;ResolveReferences">
<ItemGroup>
<!-- Filter out unnecessary files -->
<_ReferenceCopyLocalPaths Include="@(ReferenceCopyLocalPaths->WithMetadataValue('ReferenceSourceTarget', 'ProjectReference')->WithMetadataValue('PrivateAssets', 'All'))"/>
</ItemGroup>
<!-- Print batches for debug purposes -->
<Message Text="Batch for .nupkg: ReferenceCopyLocalPaths = @(_ReferenceCopyLocalPaths), ReferenceCopyLocalPaths.DestinationSubDirectory = %(_ReferenceCopyLocalPaths.DestinationSubDirectory) Filename = %(_ReferenceCopyLocalPaths.Filename) Extension = %(_ReferenceCopyLocalPaths.Extension)" Importance="High" Condition="'@(_ReferenceCopyLocalPaths)' != ''"/>
<ItemGroup>
<!-- Add file to package with consideration of sub folder. If empty, the root folder is chosen. -->
<BuildOutputInPackage Include="@(_ReferenceCopyLocalPaths)" TargetPath="%(_ReferenceCopyLocalPaths.DestinationSubDirectory)"/>
</ItemGroup>
</Target>
<PropertyGroup>
<TargetFramework>netstandard2.0</TargetFramework>
<GeneratePackageOnBuild>true</GeneratePackageOnBuild>
<GeneratePackageOnBuild>false</GeneratePackageOnBuild>
<Authors>FINOS</Authors>
<Product>FDC3 'Backplane' client</Product>
<Description>.NET client for connecting and communicating with FDC3 'backplane'</Description>
Expand All @@ -12,7 +30,7 @@
<PackageOutputPath>artifacts</PackageOutputPath>
<GenerateDocumentationFile>true</GenerateDocumentationFile>
<PackageReadmeFile>Readme.md</PackageReadmeFile>
<Version>1.0.0-beta.1</Version>
<Version>1.0.0-alpha.4</Version>
</PropertyGroup>
<ItemGroup>
<PackageReference Include="Microsoft.AspNetCore.SignalR.Client" Version="6.0.*"/>
Expand All @@ -32,7 +50,7 @@
</AssemblyAttribute>
</ItemGroup>
<ItemGroup>
<ProjectReference Include="..\Finos.Fdc3.Backplane.DTO\Finos.Fdc3.Backplane.DTO.csproj"/>
<ProjectReference Include="..\Finos.Fdc3.Backplane.DTO\Finos.Fdc3.Backplane.DTO.csproj" PrivateAssets="all"/>
</ItemGroup>
<ItemGroup>
<None Update="Readme.md">
Expand Down
6 changes: 3 additions & 3 deletions src/Finos.Fdc3.Backplane.Client/Readme.md
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ The library is written in .NET standard 2.0.

## Installation

PM> Install-Package Finos.Fdc3.Backplane.Client
PM> Install-Package Finos.Backplane.Client

## Usage example

Expand Down Expand Up @@ -49,8 +49,8 @@ await backplaneClient2.BroadcastAsync(new Context(JObject.Parse(instrument)), "C

## License

Copyright (C) 2022 Backplane open source project
Copyright (C) 2022 Backplane open source project.

Distributed under the [Apache License, Version 2.0](http://www.apache.org/licenses/LICENSE-2.0).

SPDX-License-Identifier: [Apache-2.0](https://spdx.org/licenses/Apache-2.0)
SPDX-License-Identifier: [Apache-2.0](https://spdx.org/licenses/Apache-2.0).
4 changes: 2 additions & 2 deletions src/Finos.Fdc3.Backplane.Client/package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion src/Finos.Fdc3.Backplane.Client/package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "backplane-client-net",
"version": "1.0.0-beta.1",
"version": "1.0.0-alpha.4",
"private": "true",
"devDependencies": {
"@semantic-release/changelog": "^6.0.2",
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -20,6 +20,7 @@

<ItemGroup>
<ProjectReference Include="..\..\src\Finos.Fdc3.Backplane.Client\Finos.Fdc3.Backplane.Client.csproj" />
<ProjectReference Include="..\..\src\Finos.Fdc3.Backplane.DTO\Finos.Fdc3.Backplane.DTO.csproj" />
</ItemGroup>

</Project>

0 comments on commit 5f8fd86

Please sign in to comment.