Skip to content

OrleansContrib/Orleans.Providers.Firebase

Repository files navigation

Orleans.Providers.Firebase

An implementation of the Orleans storage and membership provider models for Firebase realtime database.

This provider library is in early development and is not recommended for production usage.

Usage

Host Configuration

Manually reference the Orleans.Providers.Firebase project (NuGet package not yet available).

Update OrleansConfiguration.xml in the Host application to add the following (example configuration)...

<OrleansConfiguration xmlns="urn:orleans">
  <Globals>
    <StorageProviders>
      <Provider Type="Orleans.Providers.Firebase.Storage.FirebaseStorageProvider" Name="Default" BasePath="https://{yourfirebasedatabase}.firebaseio.com" Key="{YourFirebaseKeyInBase64}"/>
    </StorageProviders>
    ...
    <SystemStore SystemStoreType="Custom" DataConnectionString="https://{yourfirebasedatabase}.firebaseio.com|{YourFirebaseKeyInBase64}" MembershipTableAssembly="Orleans.Providers.Firebase" ReminderServiceType="ReminderTableGrain" ReminderTableAssembly="Orleans.Providers.Firebase"/>
  </Globals>
</OrleansConfiguration>

The Key above can be created by Base64 encoding a .json Google service account key. Powershell example:

powershell "[convert]::ToBase64String([Text.Encoding]::UTF8.GetBytes((Get-Content -Path MyFirebaseServiceKey.json)))"

Examples

See the Orleans.Providers.Firebase.Tests.Host project for example usage.

Releases

No releases published

Packages

No packages published

Languages