Skip to content

Commit fdb4f49

Browse files
authored
refactor: remove UI (#2036)
* refactor: remove UI * fix .md * go mod tidy * fix lint * fix lint * remove accidental file
1 parent 48917b5 commit fdb4f49

File tree

220 files changed

+11
-23632
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

220 files changed

+11
-23632
lines changed

.github/workflows/markdown-lint.yml

-1
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,6 @@ jobs:
1414
with:
1515
globs: |
1616
**/*.md
17-
!ui/node_modules
1817
!LICENSE.md
1918
!pkg/web/openapi/**
2019
!.github/*.md

.github/workflows/ui-lint.yml

-35
This file was deleted.

.github/workflows/ui-tests.yml

-35
This file was deleted.

.gitignore

-35
Original file line numberDiff line numberDiff line change
@@ -28,41 +28,6 @@ conduit.db
2828
/conduit
2929
/conduit-pipeline-check
3030

31-
### Conduit UI ###
32-
33-
# compiled output
34-
/ui/dist/
35-
/ui/tmp/
36-
/pkg/web/ui/dist/*
37-
!/pkg/web/ui/dist/.keep
38-
39-
# dependencies
40-
/.github/actions/node_modules/
41-
/ui/node_modules/
42-
43-
# misc
44-
/ui/.env*
45-
/ui/.pnp*
46-
/ui/.sass-cache
47-
/ui/.eslintcache
48-
/ui/connect.lock
49-
/ui/coverage/
50-
/ui/libpeerconnection.log
51-
/ui/npm-debug.log*
52-
/ui/testem.log
53-
/ui/yarn-error.log
54-
55-
# ember-try
56-
/ui/.node_modules.ember-try/
57-
/ui/bower.json.ember-try
58-
/ui/npm-shrinkwrap.json.ember-try
59-
/ui/package.json.ember-try
60-
/ui/package-lock.json.ember-try
61-
/ui/yarn.lock.ember-try
62-
63-
# Local Netlify folder
64-
/ui/.netlify
65-
6631
### OS ###
6732
.DS_Store
6833

.golangci.yml

-1
Original file line numberDiff line numberDiff line change
@@ -40,7 +40,6 @@ issues:
4040
exclude-dirs-use-default: false
4141
exclude-dirs:
4242
- ^examples/
43-
- ^ui/
4443
- ^pkg/plugin/processor/builtin/internal/diff # external code
4544

4645
exclude-rules:

Dockerfile

-6
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,6 @@ RUN apt-get update &&\
77
apt-get install -y build-essential &&\
88
apt-get install -y git
99

10-
# Install Node@v18
11-
RUN curl -sL https://deb.nodesource.com/setup_18.x | bash - &&\
12-
apt-get install -y nodejs &&\
13-
npm update &&\
14-
15-
1610
# Build the full app binary
1711
WORKDIR /app
1812
COPY . .

Makefile

+3-15
Original file line numberDiff line numberDiff line change
@@ -8,8 +8,8 @@ GO_VERSION_CHECK=`./scripts/check-go-version.sh`
88

99
# The build target should stay at the top since we want it to be the default target.
1010
.PHONY: build
11-
build: check-go-version pkg/web/ui/dist
12-
go build -ldflags "-X 'github.com/conduitio/conduit/pkg/conduit.version=${VERSION}'" -o conduit -tags ui ./cmd/conduit/main.go
11+
build: check-go-version
12+
go build -ldflags "-X 'github.com/conduitio/conduit/pkg/conduit.version=${VERSION}'" -o conduit ./cmd/conduit/main.go
1313
@echo "\nBuild complete. Enjoy using Conduit!"
1414
@echo "Get started by running:"
1515
@echo " ./conduit"
@@ -40,11 +40,6 @@ fmt:
4040
lint:
4141
golangci-lint run -v
4242

43-
.PHONY: build-server
44-
build-server: check-go-version
45-
go build -ldflags "-X 'github.com/conduitio/conduit/pkg/conduit.version=${VERSION}'" -o conduit ./cmd/conduit/main.go
46-
@echo "build version: ${VERSION}"
47-
4843
.PHONY: run
4944
run:
5045
go run ./cmd/conduit/main.go
@@ -64,7 +59,6 @@ proto-lint:
6459
.PHONY: clean
6560
clean:
6661
@rm -f conduit
67-
@rm -rf pkg/web/ui/dist
6862

6963
.PHONY: download
7064
download:
@@ -81,12 +75,6 @@ install-tools: download
8175
generate:
8276
go generate -x ./...
8377

84-
pkg/web/ui/dist:
85-
make ui-dist
86-
87-
ui-%:
88-
@cd ui && make $*
89-
9078
.PHONY: check-go-version
9179
check-go-version:
9280
@if [ "${GO_VERSION_CHECK}" != "" ]; then\
@@ -96,4 +84,4 @@ check-go-version:
9684

9785
.PHONY: markdown-lint
9886
markdown-lint:
99-
markdownlint-cli2 "**/*.md" "#ui/node_modules" "#LICENSE.md" "#pkg/web/openapi/**" "#.github/*.md"
87+
markdownlint-cli2 "**/*.md" "#LICENSE.md" "#pkg/web/openapi/**" "#.github/*.md"

README.md

+8-58
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,7 @@ _Data Integration for Production Data Stores. :dizzy:_
1717

1818
Conduit is a data streaming tool written in Go. It aims to provide the best user
1919
experience for building and running real-time data pipelines. Conduit comes with
20-
batteries included, it provides a UI, common connectors, processors and
21-
observability data out of the box.
20+
common connectors, processors and observability data out of the box.
2221

2322
Conduit pipelines are built out of simple building blocks which run in their own
2423
goroutines and are connected using Go channels. This makes Conduit pipelines
@@ -40,43 +39,12 @@ Conduit was created and open-sourced by [Meroxa](https://meroxa.io).
4039
- [Connectors](#connectors)
4140
- [Processors](#processors)
4241
- [API](#api)
43-
- [UI](#ui)
4442
- [Documentation](#documentation)
4543
- [Contributing](#contributing)
4644

4745
## Quick start
4846

49-
1. Download and extract
50-
the [latest release](https://github.com/conduitio/conduit/releases/latest).
51-
2. Download
52-
the [example pipeline](/examples/pipelines/file-to-file.yaml)
53-
and put it in the directory named `pipelines` in the same directory as the
54-
Conduit binary.
55-
3. Run Conduit (`./conduit`). The example pipeline will start automatically.
56-
4. Write something to file `example.in` in the same directory as the Conduit
57-
binary.
58-
59-
```sh
60-
echo "hello conduit" >> example.in
61-
```
62-
63-
5. Read the contents of `example.out` and notice an OpenCDC record:
64-
65-
```sh
66-
$ cat example.out
67-
{"position":"MTQ=","operation":"create","metadata":{"file.path":"./example.in","opencdc.readAt":"1663858188836816000","opencdc.version":"v1"},"key":"MQ==","payload":{"before":null,"after":"aGVsbG8gY29uZHVpdA=="}}
68-
```
69-
70-
6. The string `hello conduit` is a base64 encoded string stored in the field
71-
`payload.after`, let's decode it:
72-
73-
```sh
74-
$ cat example.out | jq ".payload.after | @base64d"
75-
"hello conduit"
76-
```
77-
78-
7. Explore the UI by opening `http://localhost:8080` and build your own
79-
pipeline!
47+
<https://conduit.io/docs/getting-started>
8048

8149
## Installation guide
8250

@@ -90,8 +58,8 @@ simply run it!
9058
./conduit
9159
```
9260

93-
Once you see that the service is running you may access a user-friendly web
94-
interface at `http://localhost:8080`. You can also interact with
61+
Once you see that the service is running, the configured pipeline should start
62+
processing records automatically. You can also interact with
9563
the [Conduit API](#api) directly, we recommend navigating
9664
to `http://localhost:8080/openapi` and exploring the HTTP API through Swagger
9765
UI.
@@ -132,9 +100,6 @@ rpm -i conduit_0.12.2_Linux_x86_64.rpm
132100
Requirements:
133101

134102
- [Go](https://golang.org/)
135-
- [Node.js](https://nodejs.org/) (18.x)
136-
- [Yarn](https://yarnpkg.com/) (latest 1.x)
137-
- [Ember CLI](https://ember-cli.com/)
138103
- [Make](https://www.gnu.org/software/make/)
139104

140105
```shell
@@ -144,11 +109,6 @@ make
144109
./conduit
145110
```
146111

147-
Note that you can also build Conduit with `make build-server`, which only
148-
compiles the server and skips the UI. This command requires only Go and builds
149-
the binary much faster. That makes it useful for development purposes or for
150-
running Conduit as a simple backend service.
151-
152112
### Docker
153113

154114
Our Docker images are hosted on GitHub's Container Registry. To run the latest
@@ -158,9 +118,6 @@ Conduit version, you should run the following command:
158118
docker run -p 8080:8080 conduit.docker.scarf.sh/conduitio/conduit:latest
159119
```
160120

161-
The Docker image includes the [UI](#ui), you can access it by navigating
162-
to `http://localhost:8080`.
163-
164121
## Configuring Conduit
165122

166123
Conduit accepts CLI flags, environment variables and a configuration file to
@@ -190,6 +147,10 @@ each configuration option based on the following priorities:
190147
connection-string: postgres://localhost:5432/conduitdb # -db.postgres.connection-string or CONDUIT_DB_POSTGRES_CONNECTION_STRING
191148
```
192149
150+
This parsing configuration is provided thanks to our own CLI library [ecdysis](https://github.com/conduitio/ecdysis),
151+
which builds on top of [Cobra](https://github.com/spf13/cobra) and uses [Viper](https://github.com/spf13/viper)
152+
under the hood.
153+
193154
## Storage
194155
195156
Conduit's own data (information about pipelines, connectors, etc.) can be stored
@@ -296,17 +257,6 @@ or run Conduit and navigate to `http://localhost:8080/openapi` to open
296257
a [Swagger UI](https://github.com/swagger-api/swagger-ui) which makes it easy to
297258
try it out.
298259

299-
## UI
300-
301-
Conduit comes with a web UI that makes building data pipelines a breeze, you can
302-
access it at `http://localhost:8080`. See
303-
the [installation guide](#build-from-source) for instructions on how to build
304-
Conduit with the UI.
305-
306-
For more information about the UI refer to the [Readme](ui/README.md) in `/ui`.
307-
308-
![animation](docs/data/animation.gif)
309-
310260
## Documentation
311261

312262
To learn more about how to use Conduit

docs/data/animation.gif

-1.93 MB
Binary file not shown.

go.mod

-1
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ require (
66
buf.build/gen/go/grpc-ecosystem/grpc-gateway/protocolbuffers/go v1.36.0-20240617172850-a48fcebcf8f1.1
77
github.com/Masterminds/semver/v3 v3.3.1
88
github.com/Masterminds/sprig/v3 v3.3.0
9-
github.com/NYTimes/gziphandler v1.1.1
109
github.com/bufbuild/buf v1.47.2
1110
github.com/conduitio/conduit-commons v0.5.0
1211
github.com/conduitio/conduit-connector-file v0.9.0

go.sum

-2
Original file line numberDiff line numberDiff line change
@@ -94,8 +94,6 @@ github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERo
9494
github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU=
9595
github.com/Microsoft/hcsshim v0.12.9 h1:2zJy5KA+l0loz1HzEGqyNnjd3fyZA31ZBCGKacp6lLg=
9696
github.com/Microsoft/hcsshim v0.12.9/go.mod h1:fJ0gkFAna6ukt0bLdKB8djt4XIJhF/vEPuoIWYVvZ8Y=
97-
github.com/NYTimes/gziphandler v1.1.1 h1:ZUDjpQae29j0ryrS0u/B8HZfJBtBQHjqw2rQ2cqUQ3I=
98-
github.com/NYTimes/gziphandler v1.1.1/go.mod h1:n/CVRwUEOgIxrgPvAQhUUr9oeUtvrhMomdKFjzJNB0c=
9997
github.com/OpenPeeDeeP/depguard/v2 v2.2.0 h1:vDfG60vDtIuf0MEOhmLlLLSzqaRM8EMcgJPdp74zmpA=
10098
github.com/OpenPeeDeeP/depguard/v2 v2.2.0/go.mod h1:CIzddKRvLBC4Au5aYP/i3nyaWQ+ClszLIuVocRiCYFQ=
10199
github.com/alecthomas/assert/v2 v2.2.2 h1:Z/iVC0xZfWTaFNE6bA3z07T86hd45Xe2eLt6WVy2bbk=

pkg/conduit/runtime.go

-31
Original file line numberDiff line numberDiff line change
@@ -62,7 +62,6 @@ import (
6262
"github.com/conduitio/conduit/pkg/schemaregistry"
6363
"github.com/conduitio/conduit/pkg/web/api"
6464
"github.com/conduitio/conduit/pkg/web/openapi"
65-
"github.com/conduitio/conduit/pkg/web/ui"
6665
apiv1 "github.com/conduitio/conduit/proto/api/v1"
6766
grpcruntime "github.com/grpc-ecosystem/grpc-gateway/v2/runtime"
6867
"github.com/piotrkowalczuk/promgrpc/v4"
@@ -352,7 +351,6 @@ func (r *Runtime) Run(ctx context.Context) (err error) {
352351
port = tcpAddr.Port
353352
}
354353
r.logger.Info(ctx).Send()
355-
r.logger.Info(ctx).Msgf("click here to navigate to Conduit UI: http://localhost:%d/ui", port)
356354
r.logger.Info(ctx).Msgf("click here to navigate to explore the HTTP API: http://localhost:%d/openapi", port)
357355
r.logger.Info(ctx).Send()
358356
}
@@ -676,35 +674,6 @@ func (r *Runtime) serveHTTPAPI(
676674
return nil, cerrors.Errorf("failed to register openapi redirect handler: %w", err)
677675
}
678676

679-
uiHandler, err := ui.Handler()
680-
if err != nil {
681-
return nil, cerrors.Errorf("failed to set up ui handler: %w", err)
682-
}
683-
684-
uiHandler = http.StripPrefix("/ui", uiHandler)
685-
686-
err = gwmux.HandlePath(
687-
"GET",
688-
"/ui/**",
689-
func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
690-
uiHandler.ServeHTTP(w, req)
691-
},
692-
)
693-
if err != nil {
694-
return nil, cerrors.Errorf("failed to register ui handler: %w", err)
695-
}
696-
697-
err = gwmux.HandlePath(
698-
"GET",
699-
"/",
700-
func(w http.ResponseWriter, req *http.Request, pathParams map[string]string) {
701-
http.Redirect(w, req, "/ui", http.StatusFound)
702-
},
703-
)
704-
if err != nil {
705-
return nil, cerrors.Errorf("failed to register redirect handler: %w", err)
706-
}
707-
708677
metricsHandler := r.newHTTPMetricsHandler()
709678
err = gwmux.HandlePath(
710679
"GET",

0 commit comments

Comments
 (0)