# msb-proxies

> HTTP proxy services for microservicebus e.g. http2bus, bus2http

Latest version **0.6.1** (published 2015-08-07) · MIT license · 0 weekly downloads

## Install

```sh
npm install msb-proxies
pnpm add msb-proxies
yarn add msb-proxies
bun add msb-proxies
```

Provides the commands `bus2http`, `http2bus`.

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.6.1 |
| Published | 2015-08-07 |
| First published | 2015-04-10 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 3 |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 2 |
| Maintainers | tcdl |

## Links

- npm: https://www.npmjs.com/package/msb-proxies
- Repository: https://github.com/tcdl/msb-proxies
- Issues: https://github.com/tcdl/msb-proxies/issues
- npm.io page: https://npm.io/package/msb-proxies

## Dependencies (3)

- [msb](https://npm.io/package/msb.md) >=0.8.0 <1
- [msb-bus2http](https://npm.io/package/msb-bus2http.md) >=0.6.0 <1
- [msb-http2bus](https://npm.io/package/msb-http2bus.md) >=0.6.0 <1

## Recent versions

- 0.6.1 (latest) — 2015-08-07
- 0.6.0 — 2015-07-31
- 0.5.1 — 2015-07-31
- 0.5.0 — 2015-07-31
- 0.4.1 — 2015-07-22
- 0.4.0 — 2015-07-22
- 0.3.2 — 2015-07-20
- 0.3.1 — 2015-06-17
- 0.3.0 — 2015-06-17
- 0.2.2 — 2015-05-21
- 0.2.1 — 2015-05-12
- 0.2.0 — 2015-04-13
- 0.1.3 — 2015-04-10
- 0.1.2 — 2015-04-10

## README

# msb-proxies ![Project status](https://travis-ci.org/tcdl/msb-proxies.svg?branch=master)

HTTP adapters for [microservicebus](http://github.com/tcdl/msb) framework

![e.g. http2bus and bus2http](doc/end-to-end.png)

## Note

This module has been split into two separate modules, [msb-http2bus](https://github.com/tcdl/msb-http2bus) and [msb-bus2http](https:/
/github.com/tcdl/msb-bus2http). This module will only be available for compatibility and integration tests.

## Installation

To use globally from the command line:

```
$ npm install msb-proxies -g
```

## http2bus

```
$ http2bus -p 8080 example/http2bus.json
```

Arguments:
- **-port** or **-p** Default: 0 (random)
- **-dump** or **-d** Default: false – print the config
- **...** Load the config from a JSON or JS file at this path

### Configuration

Example:

```json
{
  "channelMonitorEnabled": false,
  "port": 8080,
  "routes": [
    {
      "bus": {
        "namespace": "test:through",
        "responseTimeout": 3000,
        "waitForResponses": 1
      },
      "http": {
        "methods": ["get"],
        "path": "/api/items/:id"
      }
    },

    {
      "bus": { ... },
      "http": {
        "methods": ["post"],
        "baseUrl": "/api",
        "path": "/items"
      }
    }
  ]
}
```

## bus2http

```
$ bus2http example/http2bus.json
```

Arguments:
- **-dump** or **-d** Default: false – print the config
- **...** Load the config from a JSON or JS file at this path

### Configuration

Example:

```json
{
  "channelMonitorEnabled": false,
  "routes": [
    {
      "bus": {
        "namespace": "test:through"
      },
      "http": {
        "baseUrl": "https://www.google.com"
      }
    }
  ]
}
```

## Docker Container

### Building

```
$ docker build -t msb-proxies .
```

### Running

#### Tests

With a local Redis container. (See https://github.com/dockerfile/redis)

```
$ docker run --rm --link redis:redis msb-proxies npm test
```

#### http2bus

With a local Redis container and with configuration on host.

(Assuming files exist on the host at `/etc/msb-proxies/msb.json` and `/etc/msb-proxies/http2bus.json`.)

```
$ docker run --name http2bus -d -p 8080:8080 --link redis:redis -v /etc/msb-proxies:/opt/msb-proxies/config msb-proxies bin/http2bus config/http2bus.json
```

#### bus2http

With a local Redis container and configuration on host.

(Assuming files exist on the host at `/etc/msb-proxies/msb.json` and `/etc/msb-proxies/bus2http.json`.)

```
$ docker run --name bus2http -d --link redis:redis -v /etc/msb-proxies:/opt/msb-proxies/config msb-proxies bin/bus2http config/bus2http.json
```

---
_Source: https://npm.io/package/msb-proxies · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
