Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
41 commits
Select commit Hold shift + click to select a range
75e7814
adding dist `.gitkeep` files
jgkawell Feb 18, 2025
7bb675f
create `go.mod` in `api/`
jgkawell Feb 18, 2025
25af9e1
fixed launch.json
jgkawell Feb 18, 2025
96d037e
updated `buf.lock`
jgkawell Feb 18, 2025
62dfc09
dctl: interrupt instead of kill processes (allows services to cleanly…
jgkawell Feb 18, 2025
d1759ca
add proper closer and fix blueprint reconnect
jgkawell Feb 18, 2025
f6ab079
logging cleanup
jgkawell Feb 18, 2025
8295c29
make networking config consistent
jgkawell Feb 18, 2025
c66e4a3
logging cleanup - blueprint
jgkawell Feb 18, 2025
dca375c
consistent networking configs - services
jgkawell Feb 18, 2025
f37cd1d
cleanup main.go's
jgkawell Feb 18, 2025
8099e8a
blueprint/web-client readme
jgkawell Feb 18, 2025
ca30ae0
remove old placeholder code for catalyst web-client
jgkawell Feb 18, 2025
213257f
working on compose setup
jgkawell Feb 18, 2025
5c5027a
updated chassis
jgkawell Feb 18, 2025
4023676
Merge branch 'main' of github.com:steady-bytes/draft into fix/getting…
jgkawell Feb 18, 2025
370ba74
removing old docker compose files
jgkawell Feb 27, 2025
a705488
progress on consolidated docker compose file
jgkawell Feb 27, 2025
56db39c
multi route with a single virtual host
jgkawell Feb 28, 2025
d61c24f
just prefix for now (dropping exact)
jgkawell Feb 28, 2025
4548d42
added compose name
jgkawell Feb 28, 2025
a02742b
cleaning up example services
jgkawell Feb 28, 2025
bc2ca0a
remove host requirement
jgkawell Feb 28, 2025
2410e29
move to default virtual host pattern when no host is provided
jgkawell Feb 28, 2025
1083499
remove commented replaces
jgkawell Mar 3, 2025
91927f4
debug on blueprint config
jgkawell Mar 3, 2025
2baa317
updated go mods
jgkawell Mar 3, 2025
0e4b90e
Merge branch 'main' of github.com:steady-bytes/draft into fix/getting…
jgkawell Mar 3, 2025
dd6ffdd
remove replace in fuse
jgkawell Mar 3, 2025
f388af8
added Route ordering based on Prefix
jgkawell Mar 3, 2025
16e7309
compose cleanup
jgkawell Mar 3, 2025
84fcb89
buf.lock update
jgkawell Mar 3, 2025
8d005b7
added chassis TODO
jgkawell Mar 3, 2025
b29851e
updated examples go.mdo
jgkawell Mar 3, 2025
1c3626c
removed uneccesary exposes in Dockerfile
jgkawell Mar 3, 2025
3d04024
adding core draft services to dctl infra
jgkawell Mar 3, 2025
59e9208
Merge branch 'main' of github.com:steady-bytes/draft into fix/getting…
jgkawell Mar 4, 2025
e67abcb
added infra to context
jgkawell Mar 5, 2025
2eff704
use context services
jgkawell Mar 5, 2025
864ca1e
add --full flag to `infra clean`
jgkawell Mar 5, 2025
6804550
updated readme
jgkawell Mar 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
25 changes: 2 additions & 23 deletions .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,27 +4,6 @@
// For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387
"version": "0.2.0",
"configurations": [
{
"name": "Gateway",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "services/core/gateway/main.go",
"cwd": "${workspaceFolder}",
"debugAdapter": "dlv-dap",
"args": [
"run"
]
},
{
"name": "Host",
"type": "go",
"request": "launch",
"mode": "auto",
"program": "services/core/host/main.go",
"cwd": "${workspaceFolder}",
"debugAdapter": "dlv-dap",
},
{
"name": "Blueprint CMD: Register Cluster",
"type": "go",
Expand Down Expand Up @@ -166,7 +145,7 @@
"cwd": "${workspaceFolder}",
"debugAdapter": "dlv-dap",
"env": {
"DRAFT_CONFIG": "tests/catalyst/config.yaml"
"DRAFT_CONFIG": "services/core/catalyst/config.yaml"
},
},
{
Expand Down Expand Up @@ -198,7 +177,7 @@
"cwd": "${workspaceFolder}",
"debugAdapter": "dlv-dap",
"env": {
"DRAFT_CONFIG": "tests/fuse/config.yaml"
"DRAFT_CONFIG": "services/core/fuse/config.yaml"
},
},
{
Expand Down
8 changes: 0 additions & 8 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -67,11 +67,3 @@ WORKDIR /etc

# Run
ENTRYPOINT ["/etc/main"]

# Runtime arguments
ARG HTTP_PORT=8080
ARG GRPC_PORT=8090

# Expose needed ports
EXPOSE ${HTTP_PORT}
EXPOSE ${GRPC_PORT}
10 changes: 5 additions & 5 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -43,15 +43,15 @@ Here are some simple descriptions of what you'll find in each directory:

* [Go](https://golang.org/doc/install) v1.21 (we suggest using [gvm](https://github.com/moovweb/gvm) for easier version management)
* [Docker](https://docs.docker.com/get-docker/)
* [Kubernetes](https://kubernetes.io/docs/tasks/tools/) (this is for running testing suites locally: if on Mac or Windows you can use the Kubernetes engine built into Docker Desktop)
* [Kubernetes](https://kubernetes.io/docs/tasks/tools/) (this is for running testing suites locally; if on Mac or Windows you can use the Kubernetes engine built into Docker Desktop)

You'll need the `dctl` CLI tool to work with everything in Draft. Let's install it now:

```shell
go install github.com/steady-bytes/draft/tools/dctl@latest
```

We'll need to import this project as a usable context into `dctl` so it can manage things for us. After cloning the repo run the below command from the root of the repo:
We'll need to import this project as a usable context into `dctl` so it can manage things for us. After cloning the repo run the below command from inside the repo:

```shell
dctl context import
Expand All @@ -64,12 +64,12 @@ Now you can set up your local environment:
dctl infra init
dctl infra start

# test run some domains
dctl run --domains examples

# initialize and do a first generation of the API
dctl api init
dctl api build

# test run some domains
dctl run --domains core,examples
```

## Future Components
Expand Down
4 changes: 2 additions & 2 deletions api/buf.lock
Original file line number Diff line number Diff line change
Expand Up @@ -9,8 +9,8 @@ deps:
- remote: buf.build
owner: googleapis
repository: googleapis
commit: acd896313c55464b993332136ded1b6e
digest: shake256:66626d5e4d9c8ecf25cd72bdbfbbf62b9a68e9e9c33dab6b9b39a53a67063eeba6b8493247dd6d6240b1ac1c32eb2dc311484e67dd7d271884a960c2e5ce8c9a
commit: 751cbe31638d43a9bfb6162cd2352e67
digest: shake256:87f55470d9d124e2d1dedfe0231221f4ed7efbc55bc5268917c678e2d9b9c41573a7f9a557f6d8539044524d9fc5ca8fbb7db05eb81379d168285d76b57eb8a4
- remote: buf.build
owner: srikrsna
repository: protoc-gen-gotag
Expand Down
20 changes: 20 additions & 0 deletions deployments/compose/blueprint.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
service:
name: blueprint
domain: core

logging:
level: info

network:
bind_address: 0.0.0.0
bind_port: 2221


badger:
path: /etc/badger

raft:
node-id: node_1
address: localhost
port: 1111
bootstrap: true
14 changes: 14 additions & 0 deletions deployments/compose/catalyst.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
service:
name: catalyst
domain: core
entrypoint: http://blueprint:2221

logging:
level: info

network:
bind_address: 0.0.0.0
bind_port: 2220
internal:
host: localhost
port: 2220
46 changes: 46 additions & 0 deletions deployments/compose/docker-compose.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
name: draft-core
services:
blueprint:
image: ghcr.io/steady-bytes/draft-core-blueprint:latest
restart: unless-stopped
ports:
- 2221:2221
- 1111:1111
volumes:
- ./blueprint.yaml:/etc/config.yaml
- blueprint:/etc/badger
catalyst:
image: ghcr.io/steady-bytes/draft-core-catalyst:latest
restart: unless-stopped
ports:
- 2220:2220
volumes:
- ./catalyst.yaml:/etc/config.yaml
depends_on:
blueprint:
condition: service_started
fuse:
image: ghcr.io/steady-bytes/draft-core-fuse:latest
restart: unless-stopped
ports:
- 18000:18000
volumes:
- ./fuse.yaml:/etc/config.yaml
depends_on:
blueprint:
condition: service_started
envoy:
image: envoyproxy/envoy:v1.31.2
restart: unless-stopped
ports:
- 10000:10000
- 19000:19000
- 18090:18090
volumes:
- ./envoy.yaml:/etc/envoy/envoy.yaml
depends_on:
fuse:
condition: service_started

volumes:
blueprint:
73 changes: 73 additions & 0 deletions deployments/compose/envoy.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
node:
cluster: fuse-proxy
id: fuse-proxy-1

admin:
access_log_path: /dev/null
address:
socket_address:
address: 0.0.0.0
port_value: 19000

dynamic_resources:
cds_config:
resource_api_version: V3
api_config_source:
api_type: GRPC
transport_api_version: V3
grpc_services:
- envoy_grpc:
cluster_name: xds_cluster
set_node_on_first_message_only: true
lds_config:
resource_api_version: V3
api_config_source:
api_type: GRPC
transport_api_version: V3
grpc_services:
- envoy_grpc:
cluster_name: xds_cluster
set_node_on_first_message_only: true

static_resources:
clusters:
- name: xds_cluster
connect_timeout: 1s
load_assignment:
cluster_name: xds_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
# address in which fuse is running on
address: fuse
port_value: 18000
http2_protocol_options: {}
type: STRICT_DNS
- name: als_cluster
connect_timeout: 1s
load_assignment:
cluster_name: als_cluster
endpoints:
- lb_endpoints:
- endpoint:
address:
socket_address:
address: 0.0.0.0
port_value: 18090
http2_protocol_options: {}

layered_runtime:
layers:
- name: runtime-0
rtds_layer:
rtds_config:
resource_api_version: V3
api_config_source:
transport_api_version: V3
api_type: GRPC
grpc_services:
envoy_grpc:
cluster_name: xds_cluster
name: runtime-0
20 changes: 20 additions & 0 deletions deployments/compose/fuse.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
service:
name: fuse
domain: core
entrypoint: http://blueprint:2221

logging:
level: info

network:
bind_address: 0.0.0.0
bind_port: 18000
internal:
host: localhost
port: 18000

fuse:
address: http://localhost:18000
listener:
address: 0.0.0.0
port: 10000
Empty file removed deployments/envoy/Dockerfile
Empty file.
9 changes: 0 additions & 9 deletions deployments/envoy/docker-compose.local.yaml

This file was deleted.

65 changes: 0 additions & 65 deletions deployments/envoy/envoy.yaml

This file was deleted.

Loading
Loading