Coder Social home page Coder Social logo

jpflueger / enterprise-wasm Goto Github PK

View Code? Open in Web Editor NEW

This project forked from zeiss/enterprise-wasm

0.0 0.0 0.0 101.84 MB

Evaluate various WebAssembly back-end frameworks and tool-chains for enterprise workloads

License: MIT License

Shell 12.32% JavaScript 0.29% TypeScript 5.83% HCL 79.40% Makefile 2.16%

enterprise-wasm's Introduction

Enterprise WebAssembly

Evaluate various WebAssembly back-end frameworks and tool-chains for enterprise workloads.

Intention is to create an environment similar to a performance comparison between Dapr and Azure Functions to get a basic indication on the scaling and performance behavior of various setups.

STATUS : UNDER CONSTRUCTION

Prequisites

Azure

To use Azure examples in this repository these tools are required:

  • Azure CLI version >= 2.55.0

Before starting deployments, optionally execute these steps

  • az login to your Azure account and set the desired subscription with az account set -s {subscription-id}
  • create a service principal e.g. with az ad sp create-for-rbac --name "My Terraform Service Principal" --role="Contributor" --scopes="/subscriptions/$(az account show --query id -o tsv)" to create and assign Contributor authorizations on the subscription currently set in Azure CLI
  • from the output like
{
  "appId": "00000000-0000-0000-0000-000000000000",
  "displayName": "My Terraform Service Principal",
  "password": "0000-0000-0000-0000-000000000000",
  "tenant": "00000000-0000-0000-0000-000000000000"
}
  • note down, create a script or extend your session initialization script like .bashr or .zshrc to set Terraform environment variables:
export ARM_SUBSCRIPTION_ID="{subscription-id}"
export ARM_TENANT_ID="{tenant}"
export ARM_CLIENT_ID="{appId}"
export ARM_CLIENT_SECRET="{password}"
  • or when running these samples with GitHub Codespaces, add 4 secrets ARM_SUBSCRIPTION_ID, ARM_TENANT_ID, ARM_CLIENT_ID, ARM_CLIENT_SECRET and assign those to this repository or the fork of the repository you are using
  • assign RBAC management authorization to service principal with az role assignment create --role 'Role Based Access Control Administrator' --scope /subscriptions/$ARM_SUBSCRIPTION_ID --assignee $ARM_CLIENT_ID so that various role assignments can be conducted by Terraform
  • if you want to sign in with the above credentils to your current Azure CLI session, use az login --service-principal -u $ARM_CLIENT_ID -p $ARM_CLIENT_SECRET --tenant $ARM_TENANT_ID && az account set -s $ARM_SUBSCRIPTION_ID

Terraform & Helm

All infrastructure in this repository is defined with Terraform templates with linked Helm charts which requires these tools:

  • Terraform CLI version >= 1.6.6
  • Helm CLI version >= 3.13.1
  • jq version >= 1.6
  • yq version >= 4.40.4

optional:

Sample Workloads

sample infrastructure workload deploy sample destroy sample
Spin with Dapr on AKS, Rust aks-spin-dapr spin-dapr-rs make deploy-aks-spin-dapr-rs make destroy-aks-spin-dapr-rs
Spin with Dapr on AKS, Node.js/TypeScript aks-spin-dapr spin-dapr-ts make deploy-aks-spin-dapr-ts make destroy-aks-spin-dapr-ts

enterprise-wasm's People

Contributors

kaiwalter avatar jpflueger avatar fl-lutz avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.