Skip to content
Permalink

Comparing changes

Choose two branches to see what’s changed or to start a new pull request. If you need to, you can also or learn more about diff comparisons.

Open a pull request

Create a new pull request by comparing changes across two branches. If you need to, you can also . Learn more about diff comparisons here.
base repository: spacecloud-io/space-cloud
Failed to load repositories. Confirm that selected base ref is valid, then try again.
Loading
base: v0.19.0
Choose a base ref
...
head repository: spacecloud-io/space-cloud
Failed to load repositories. Confirm that selected head ref is valid, then try again.
Loading
compare: master
Choose a head ref

Commits on Jun 16, 2019

  1. Config from db

    YourTechBud committed Jun 16, 2019
    Copy the full SHA
    0b250bc View commit details
  2. Merge branch 'config-from-db' into 'ee-v0.9.0'

    Config from db
    
    See merge request space-up-technologies/space-cloud-ee!1
    YourTechBud committed Jun 16, 2019
    Copy the full SHA
    7e1bd29 View commit details
  3. Copy the full SHA
    aacb93c View commit details
  4. Merge branch 'merge-ce' into 'ee-v0.9.0'

    Merge ce
    
    See merge request space-up-technologies/space-cloud-ee!2
    YourTechBud committed Jun 16, 2019
    Copy the full SHA
    477d54e View commit details

Commits on Jun 18, 2019

  1. Copy the full SHA
    e9142dc View commit details

Commits on Jun 21, 2019

  1. Copy the full SHA
    edd2c36 View commit details

Commits on Jun 22, 2019

  1. Merge branch 'ee-validation' into 'ee-v0.9.0'

    Ee validation
    
    See merge request spaceuptech/space-cloud-ee!3
    YourTechBud committed Jun 22, 2019
    Copy the full SHA
    2e06052 View commit details
  2. Copy the full SHA
    c47cfce View commit details
  3. Copy the full SHA
    4dbacb3 View commit details
  4. Merge branch 'ee-v0.9.0' into 'ee'

    Ee v0.9.0
    
    See merge request spaceuptech/space-cloud-ee!6
    YourTechBud committed Jun 22, 2019
    Copy the full SHA
    e588236 View commit details
  5. Copy the full SHA
    a38753d View commit details
  6. Copy the full SHA
    57843c9 View commit details

Commits on Jun 25, 2019

  1. Merge branch 'crud-optimize' into 'ee-v0.10.0'

    added crud block optimisation to share db drivers
    
    See merge request spaceuptech/space-cloud-ee!7
    YourTechBud committed Jun 25, 2019
    Copy the full SHA
    5f4d1ce View commit details

Commits on Jul 3, 2019

  1. Copy the full SHA
    d17aefc View commit details
  2. Copy the full SHA
    4dc85d9 View commit details

Commits on Jul 9, 2019

  1. Copy the full SHA
    2bc22c0 View commit details
  2. Copy the full SHA
    041273d View commit details

Commits on Jul 11, 2019

  1. added kubernetes support

    YourTechBud committed Jul 11, 2019
    Copy the full SHA
    b0e1d71 View commit details
  2. Merge branch 'ee-deploy' into 'ee-v0.10.0'

    added kubernetes support
    
    See merge request spaceuptech/space-cloud-ee!13
    YourTechBud committed Jul 11, 2019
    Copy the full SHA
    3f61c1d View commit details
  3. Copy the full SHA
    3fd1482 View commit details
  4. Copy the full SHA
    f02633f View commit details

Commits on Jul 12, 2019

  1. Copy the full SHA
    c10f973 View commit details
  2. Copy the full SHA
    6741376 View commit details
  3. merged conflicts

    Jayesh committed Jul 12, 2019
    Copy the full SHA
    f74d6f4 View commit details
  4. mutex lock bug fixes in syncman

    Jayesh committed Jul 12, 2019
    Copy the full SHA
    3e9a286 View commit details
  5. Copy the full SHA
    32dd330 View commit details

Commits on Jul 13, 2019

  1. Copy the full SHA
    2681711 View commit details
  2. minor validation fixes

    YourTechBud committed Jul 13, 2019
    Copy the full SHA
    fd70dac View commit details
  3. Copy the full SHA
    c575063 View commit details

Commits on Jul 14, 2019

  1. fixed amin man bugs

    YourTechBud committed Jul 14, 2019
    Copy the full SHA
    f3c320b View commit details
  2. Copy the full SHA
    51fd72a View commit details
  3. Merge branch 'ee-v0.10.0' of https://gitlab.com/spaceuptech/space-clo…

    …ud-ee into ee-v0.10.0
    Jayesh committed Jul 14, 2019
    Copy the full SHA
    398e9a8 View commit details
  4. merged conflicts

    Jayesh committed Jul 14, 2019
    Copy the full SHA
    ed7db4c View commit details
  5. merged ce-upstream

    Jayesh committed Jul 14, 2019
    Copy the full SHA
    ad5072d View commit details
  6. fix set op lock bug

    YourTechBud committed Jul 14, 2019
    Copy the full SHA
    df840db View commit details

Commits on Jul 16, 2019

  1. Copy the full SHA
    2d60f60 View commit details
  2. Copy the full SHA
    c311188 View commit details
  3. Copy the full SHA
    e2de5bf View commit details
  4. Copy the full SHA
    0b3c734 View commit details
  5. updated nats to v2

    YourTechBud committed Jul 16, 2019
    Copy the full SHA
    a18a7ef View commit details
  6. Copy the full SHA
    47e9c55 View commit details
  7. wip: complete enterprise

    YourTechBud committed Jul 16, 2019
    Copy the full SHA
    7e2b74f View commit details

Commits on Jul 17, 2019

  1. Copy the full SHA
    25f5381 View commit details
  2. merged conflicts

    Jayesh committed Jul 17, 2019
    Copy the full SHA
    7a0cb69 View commit details
  3. Merge branch 'v0.10.0' of https://github.com/spaceuptech/space-cloud

    …into ee-v0.10.0
    Jayesh committed Jul 17, 2019
    Copy the full SHA
    5aefde9 View commit details
  4. Copy the full SHA
    5c9e602 View commit details
  5. Copy the full SHA
    4178174 View commit details
  6. Copy the full SHA
    55ead51 View commit details
  7. Copy the full SHA
    310a92c View commit details
  8. Copy the full SHA
    5557828 View commit details
Showing 621 changed files with 79,316 additions and 41,732 deletions.
5 changes: 4 additions & 1 deletion .dockerignore
Original file line number Diff line number Diff line change
@@ -13,7 +13,10 @@
*.out

**/node_modules/**
css
mission-control/public/**
mission-control/src/**
mission-control/node_modules/**

.sass-cache

# Ignore the binaries
4 changes: 4 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,4 @@
contact_links:
- name: Ask a question or get support
url: https://github.com/spaceuptech/space-cloud/discussions/new
about: Ask a question or request support for using Space Cloud
19 changes: 14 additions & 5 deletions .github/ISSUE_TEMPLATE/feature_request.md
Original file line number Diff line number Diff line change
@@ -1,15 +1,24 @@
---
name: Feature request
about: Suggest an idea for this project
title: ''
labels: ''
name: "\U0001F680 Feature request"
about: Suggest an idea for improving SpaceCloud
title: "[Feature] "
labels: enhancement
assignees: ''

---

### The problem faced currently?
<!--
Provide a clear and concise description of what the problem is.
For example, "I'm always frustrated when..."
-->

### How can we solve it?
<!--
Provide a clear and concise description of what you want to happen.
For example, "I'm always frustrated when..."
-->


>If you want this feature to be implemented, give it a thumbs up reaction, so that we can determine which features are important to you.
>👍
>👍
Original file line number Diff line number Diff line change
@@ -1,25 +1,32 @@
---
name: Bug report
name: "\U0001F41B Bug report"
about: Create a report to help us improve
title: ''
labels: ''
title: "[Bug] "
labels: "\U0001F41B bug"
assignees: ''

---

### Describe the bug
<!--
Provide a clear description of what is the current behavior.
-->

### Expected behaviour
### Expected behavior
<!--
Provide a clear description of what you want to happen.
-->

### Actual behaviour

### Steps to reproduce
<!--
Providing clear reproduction steps would help us to debug the issue quickly.
-->

### Your environment
- Space Cloud version:
- OS:
- Kubernetes or Docker:
- The client api version (if applicable):
- Browser (if applicable):

>If this bug restricts your use of space-cloud, give it a thumbs up reaction, so that we can determine which bugs need to be fixed immediately.
42 changes: 6 additions & 36 deletions .github/workflows/go.yml
Original file line number Diff line number Diff line change
@@ -5,10 +5,10 @@ jobs:
name: Build and test gateway
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.13
- name: Set up Go 1.15
uses: actions/setup-go@v1
with:
go-version: 1.13
go-version: 1.15
id: go

- name: Check out code into the Go module directory
@@ -36,10 +36,10 @@ jobs:
name: Build and test Runner
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.13
- name: Set up Go 1.15
uses: actions/setup-go@v1
with:
go-version: 1.13
go-version: 1.15
id: go

- name: Check out code into the Go module directory
@@ -63,44 +63,14 @@ jobs:
sudo cp ./bin/golangci-lint $GOPATH/bin/
cd runner && golangci-lint run -E golint --exclude-use-default=false --timeout 180s ./...
metric:
name: Build and test metric proxy
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.13
uses: actions/setup-go@v1
with:
go-version: 1.13
id: go

- name: Check out code into the Go module directory
uses: actions/checkout@v1
- name: Cache Go Modules
uses: actions/cache@v1
with:
path: ~/go/pkg/mod
key: ${{ runner.os }}-go-${{ hashFiles('**/go.sum') }}
restore-keys: |
${{ runner.os }}-go-
- name: Build
run: cd metric-proxy && go build -v .
- name: Test
run: cd metric-proxy && go test ./...
- name: Lint
run: |
curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sh -s v1.26.0
sudo cp ./bin/golangci-lint $GOPATH/bin/
cd metric-proxy && golangci-lint run -E golint --exclude-use-default=false --timeout 180s ./...
cli:
name: Build and test space cli
runs-on: ubuntu-latest
steps:
- name: Set up Go 1.13
- name: Set up Go 1.15
uses: actions/setup-go@v1
with:
go-version: 1.13
go-version: 1.15
id: go
- name: Check out code into the Go module directory
uses: actions/checkout@v1
12 changes: 7 additions & 5 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -12,10 +12,11 @@ test
*.dylib
*.db
# Test binary, build with `go test -c`
*.test
*.test

# sh file for bash completion
*.sh
!install-manifests/cli/install.sh

# Output of the go coverage tool, specifically when used with LiteIDE
*.out
@@ -55,15 +56,16 @@ gateway/scripts
metric-proxy/scripts
docker-build.sh


scripts/*
#IDEs
.idea
.vscode

yarn.lock

#boltdatabase
gateway/testbolt.db


npm-debug.log
npm-debug.log

# ignore space-cloud helm chart
!install-manifests/helm/space-cloud
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -25,7 +25,7 @@ There are multiple ways to contribute to Space Cloud:

## Project Structure

- The core components of Space Cloud are `gateway`, `runner`, `metric-proxy` and `space-cli`.
- The core components of Space Cloud are `gateway`, `runner` and `space-cli`.
- The codebase is a monorepo consisting of the core components and their sub modules.

## Branching Strategy and Guidelines
27 changes: 15 additions & 12 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,14 +1,17 @@
<p align="center"><a href="https://www.spaceuptech.com"><img src="https://spaceuptech.com/icons/space-cloud-block-diagram1.png" alt="Space Cloud"></a></p>
> SpaceCloud is currently in maintaiance mode.
> Checkout [Hasura](https://hasura.io) or [Wundergraph](https://wundergraph.com) instead.
>
<p align="center"><a href="https://space-cloud.io"><img src="https://space-cloud.io/images/kit/logo_full.svg" alt="Space Cloud"></a></p>
<h3 align="center">
Google Firebase + Heroku to Develop, Scale and Secure Serverless Apps on Kubernetes.
Develop, Deploy and Secure Serverless Apps on Kubernetes.
</h3>

<p align="center">
<strong>
<a href="https://spaceuptech.com/">Website</a>
<a href="https://space-cloud.io/">Website</a>
<a href="https://docs.spaceuptech.com/">Docs</a>
<a href="https://docs.space-cloud.io/">Docs</a>
<a href="https://discord.gg/RkGjW93">Support</a>
</strong>
@@ -22,10 +25,10 @@
<a href="https://opensource.org/licenses/Apache-2.0"><img
alt="Apache License"
src="https://img.shields.io/badge/License-Apache%202.0-blue.svg"></a>
<a href="https://twitter.com/intent/follow?screen_name=spaceuptech"><img src="https://img.shields.io/badge/ Follow-spaceuptech-blue.svg?style=flat&logo=twitter"></a>
<a href="https://twitter.com/intent/follow?screen_name=spacecloudio"><img src="https://img.shields.io/badge/Follow-spacecloudio-blue.svg?style=flat&logo=twitter"></a>
</p>

Space Cloud is a Kubernetes based serverless platform that provides **instant, realtime APIs on any database**, with [event triggers](https://docs.spaceuptech.com/microservices/eventing) and unified APIs for your [custom business logic](https://docs.spaceuptech.com/microservices/graphql).
Space Cloud is a Kubernetes based serverless platform that provides **instant, realtime APIs on any database**, with [event triggers](https://docs.space-cloud.io/microservices/eventing) and unified APIs for your [custom business logic](https://docs.space-cloud.io/microservices/graphql).

Space Cloud helps you build modern applications without having to write any backend code in most cases.

@@ -87,23 +90,23 @@ Space Cloud is meant to replace any backend php, nodejs, java code you may write

However, it's important to note that **the client does not send database (SQL) queries** to Space Cloud. Instead, it sends an object describing the query to be executed. This object is first **validated** by Space Cloud (using security rules). Once the client is authorized to make the request, **a database query is dynamically generated and executed**. The results are sent directly to the concerned client.

We understand that not every app can be built using only CRUD operations. Sometimes it's necessary to write business logic. For such cases, Space Cloud allows you to access your **custom HTTP servers** via the same consistent APIs of Space Cloud. In this scenario, Space Cloud acts merely as an API gateway between your `services` and the client. However, the cool part is that you can even perform **joins on your microservices and database** via the GraphQL API of Space Cloud
We understand that not every app can be built using only CRUD operations. Sometimes it's necessary to write business logic. For such cases, Space Cloud allows you to access your **custom HTTP servers** via the same consistent APIs of Space Cloud. In this scenario, Space Cloud acts merely as an API gateway between your `services` and the client. However, the cool part is that you can even perform **joins on your microservices and database** via the GraphQL API of Space Cloud.

<div style="text-align: center">
<img src="https://spaceuptech.com/icons/space-cloud-detailed.png" style="max-width: 80%" alt="Detailed Space Cloud architecture" />
<img src="https://space-cloud.io/images/graphQL-diagram.svg" style="max-width: 80%" alt="Detailed Space Cloud architecture" />
</div>

Space Cloud integrates with [Kubernetes](https://kubernetes.io) and [Istio](https://istio.io) natively to bring to you a highly scalable Serverless Platform. It encrypts all traffic by default and lets you describe communication policies to protect your microservices.

With that, it also provides **autoscaling functionality** out of the box including **scaling down to zero**
With that, it also provides **autoscaling functionality** out of the box including **scaling down to zero**.

## Support & Troubleshooting

The documentation and community should help you troubleshoot most issues. If you have encountered a bug or need to get in touch with us, you can contact us using one of the following channels:

- Support & feedback: [Discord](https://discord.gg/RkGjW93)
- Issue & bug tracking: [GitHub issues](https://github.com/spaceuptech/space-cloud/issues)
- Follow product updates: [@spaceuptech](https://twitter.com/spaceuptech)
- Issue & bug tracking: [GitHub issues](https://github.com/spacecloud-io/space-cloud/issues)
- Follow product updates: [@spaceupcloudio](https://twitter.com/spacecloudio)

## Contributing

@@ -117,4 +120,4 @@ Space Cloud is a young project. We'd love to have you onboard if you wish to con

## License

Space Cloud is [Apache 2.0 licensed](https://github.com/spaceuptech/space-cloud/blob/master/LICENSE).
Space Cloud is [Apache 2.0 licensed](https://github.com/spacecloud-io/space-cloud/blob/master/LICENSE).
12 changes: 12 additions & 0 deletions dbevents/.gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
target/

.settings
.project
.classpath

.idea
*.iml

.metals
.bloop

29 changes: 29 additions & 0 deletions dbevents/Dockerfile
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
FROM openjdk:8 as stage0
LABEL snp-multi-stage="intermediate"
LABEL snp-multi-stage-id="58f58868-292b-482f-8850-79b72faa9d52"
WORKDIR /opt/docker
COPY target/docker/stage/1/opt /1/opt
COPY target/docker/stage/2/opt /2/opt
USER root
RUN ["chmod", "-R", "u=rX,g=rX", "/1/opt/docker"]
RUN ["chmod", "-R", "u=rX,g=rX", "/2/opt/docker"]
RUN ["chmod", "u+x,g+x", "/1/opt/docker/bin/db-events-soruce"]

FROM golang:1.15.3-alpine3.12 as stage1
WORKDIR /build
COPY src/conn-string-parser .
#RUN apk --no-cache add build-base
RUN GOOS=linux CGO_ENABLED=0 go build -a -ldflags '-s -w -extldflags "-static"' -o app .

FROM openjdk:8 as mainstage
USER root
RUN id -u demiourgos728 1>/dev/null 2>&1 || (( getent group 0 1>/dev/null 2>&1 || ( type groupadd 1>/dev/null 2>&1 && groupadd -g 0 root || addgroup -g 0 -S root )) && ( type useradd 1>/dev/null 2>&1 && useradd --system --create-home --uid 1001 --gid 0 demiourgos728 || adduser -S -u 1001 -G root demiourgos728 ))
WORKDIR /opt/docker
COPY --from=stage0 --chown=demiourgos728:root /1/opt/docker /opt/docker
COPY --from=stage0 --chown=demiourgos728:root /2/opt/docker /opt/docker
COPY --from=stage1 --chown=demiourgos728:root /build/app /usr/local/bin/conn-string-parser
COPY --chown=demiourgos728:root src/main/resources/application.conf /config/application.conf
RUN chmod -R 0777 /opt/docker
USER 1001:0
ENTRYPOINT ["/opt/docker/bin/db-events-soruce"]
CMD []
49 changes: 49 additions & 0 deletions dbevents/build.sbt
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name := "db-events-soruce"

version := "0.2.0"

scalaVersion := "2.13.1"

lazy val akkaVersion = "2.6.9"
lazy val akkaHttpVersion = "10.2.1"

libraryDependencies ++= Seq(
"com.typesafe.akka" %% "akka-actor-typed" % akkaVersion,
"com.typesafe.akka" %% "akka-stream" % akkaVersion,
"com.typesafe.akka" %% "akka-http" % akkaHttpVersion,
"ch.qos.logback" % "logback-classic" % "1.2.3",
"com.typesafe.akka" %% "akka-actor-testkit-typed" % akkaVersion % Test,
"org.scalatest" %% "scalatest" % "3.1.0" % Test
)

// Dependencies for Debezium
libraryDependencies ++= Seq(
"io.debezium" % "debezium-embedded" % "1.3.0.Final",
"io.debezium" % "debezium-api" % "1.3.0.Final",

// Database connectors
"io.debezium" % "debezium-connector-mongodb" % "1.3.0.Final",
"io.debezium" % "debezium-connector-mysql" % "1.3.0.Final",
"io.debezium" % "debezium-connector-sqlserver" % "1.3.0.Final",
"io.debezium" % "debezium-connector-postgres" % "1.3.0.Final"
)

// Dependencies for the mongo db driver
libraryDependencies += "org.mongodb" % "mongodb-driver" % "3.12.7"


// Dependencies for parsing JSON
libraryDependencies += "org.json4s" %% "json4s-jackson" % "3.7.0-M6"

// Dependencies to play around with JWT
libraryDependencies += "com.auth0" % "java-jwt" % "3.11.0"

// Dependencies for the kubernetes client
libraryDependencies += "io.kubernetes" % "client-java" % "10.0.0"

// https://mvnrepository.com/artifact/commons-io/commons-io
libraryDependencies += "commons-io" % "commons-io" % "2.8.0"

libraryDependencies += "com.typesafe" % "config" % "1.4.1"

enablePlugins(JavaAppPackaging)
1 change: 1 addition & 0 deletions dbevents/project/build.properties
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
sbt.version=1.3.13
2 changes: 2 additions & 0 deletions dbevents/project/plugins.sbt
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
addSbtPlugin("com.typesafe.sbt" % "sbt-native-packager" % "1.7.6")
addSbtPlugin("io.spray" % "sbt-revolver" % "0.9.1")
6 changes: 6 additions & 0 deletions dbevents/scripts/docker-push.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#!/bin/sh
set -e

sbt docker:stage
docker build --no-cache -t spacecloudio/dbevents:0.2.0 .
docker push spacecloudio/dbevents:0.2.0
8 changes: 8 additions & 0 deletions dbevents/src/conn-string-parser/go.mod
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
module github.com/spaceuptech/space-cloud/dbevents/conn-string-parser

go 1.15

require (
github.com/go-sql-driver/mysql v1.5.0
github.com/urfave/cli/v2 v2.2.0
)
Loading